platform/upstream/llvm.git
11 years agoDocumentation: convert InternalsManual.html to reST
Dmitri Gribenko [Sat, 15 Dec 2012 20:41:17 +0000 (20:41 +0000)]
Documentation: convert InternalsManual.html to reST

Patch by Anastasi Voitova with with small fixes by me.

llvm-svn: 170275

11 years ago[sanitizer] fix a bug that has crept into the sanitizer allocator and caused SEGV...
Kostya Serebryany [Sat, 15 Dec 2012 18:36:23 +0000 (18:36 +0000)]
[sanitizer] fix a bug that has crept into the sanitizer allocator and caused SEGV on allocations between 1Mb and 2Mb, improve the test

llvm-svn: 170274

11 years agoX86: Add a couple of target-specific dag combines that turn VSELECTS into psubus...
Benjamin Kramer [Sat, 15 Dec 2012 16:47:44 +0000 (16:47 +0000)]
X86: Add a couple of target-specific dag combines that turn VSELECTS into psubus if possible.

We match the pattern "x >= y ? x-y : 0" into "subus x, y" and two special cases
if y is a constant. DAGCombiner canonicalizes those so we first have to undo the
canonicalization for those cases. The pattern occurs in gzip when the loop
vectorizer is enabled. Part of PR14613.

llvm-svn: 170273

11 years agoDocumentation: LanguageExtensions.rst: convert link to :doc: style and fix up
Dmitri Gribenko [Sat, 15 Dec 2012 14:25:25 +0000 (14:25 +0000)]
Documentation: LanguageExtensions.rst: convert link to :doc: style and fix up
heading underline.

llvm-svn: 170272

11 years agoAdd a corollary test for PR14572. We got this code path correct already.
Chandler Carruth [Sat, 15 Dec 2012 09:31:54 +0000 (09:31 +0000)]
Add a corollary test for PR14572. We got this code path correct already.

llvm-svn: 170271

11 years agoRelax an overly aggressive assert to fix PR14572.
Chandler Carruth [Sat, 15 Dec 2012 09:26:06 +0000 (09:26 +0000)]
Relax an overly aggressive assert to fix PR14572.

The alloca width is based on the alloc size, not the type size.

llvm-svn: 170270

11 years agoMake '-mtune=x86_64' assume fast unaligned memory accesses.
Chandler Carruth [Sat, 15 Dec 2012 09:01:13 +0000 (09:01 +0000)]
Make '-mtune=x86_64' assume fast unaligned memory accesses.

Not all chips targeted by x86_64 have this feature, but a dramatically
increasing number do. Specifying a chip-specific tuning parameter will
continue to turn the feature on or off as appropriate for that
particular chip, but the generic flag should try to achieve the best
performance on the most widely available hardware. Today, the number of
chips with fast UA access dwarfs those without in the x86-64 space.

Note that this also brings LLVM's code generation for this '-march' flag
more in line with that of modern GCCs. Reviewed by Dan Gohman.

llvm-svn: 170269

11 years agoActually update the grammar of this sentence to reflect the removal of CellSPU.
Chandler Carruth [Sat, 15 Dec 2012 08:56:20 +0000 (08:56 +0000)]
Actually update the grammar of this sentence to reflect the removal of CellSPU.

llvm-svn: 170268

11 years agoRevert r170246, "Enable the loop vectorizer by default."
NAKAMURA Takumi [Sat, 15 Dec 2012 06:11:13 +0000 (06:11 +0000)]
Revert r170246, "Enable the loop vectorizer by default."

llvm-svn: 170267

11 years agoRemove the “len” defaulted parameter from CommandReturnObject::AppendMessage, AppendW...
Jim Ingham [Sat, 15 Dec 2012 02:40:54 +0000 (02:40 +0000)]
Remove the “len” defaulted parameter from CommandReturnObject::AppendMessage, AppendWarning and AppendError.  Nobody was using them, and it meant if you accidentally used the AppendWarning when you meant AppendWarningWithFormat with an integer in the format string, it would compile and then return your string plus some unknown amount of junk.

llvm-svn: 170266

11 years ago<rdar://problem/11990131>
Greg Clayton [Sat, 15 Dec 2012 02:08:17 +0000 (02:08 +0000)]
<rdar://problem/11990131>

Memory read's "repeat" behavior forgets "-t" option. It also formatted the type as hex bytes + ASCII. Now we revert to the default format when displaying types unless the user sets the format option manually.

llvm-svn: 170265

11 years ago<rdar://problem/12156204>
Greg Clayton [Sat, 15 Dec 2012 01:44:51 +0000 (01:44 +0000)]
<rdar://problem/12156204>

x/a print wouldn't always reset the word size to the size of a pointer if a previous memory read using x/<gdb-format> had been used that set it to another width.

llvm-svn: 170264

11 years ago[ubsan] Emit branch weight metadata to hint towards common case.
Will Dietz [Sat, 15 Dec 2012 01:39:14 +0000 (01:39 +0000)]
[ubsan] Emit branch weight metadata to hint towards common case.

Results in better block placement that helps close the
performance gap when making ubsan checks recoverable.

llvm-svn: 170263

11 years ago<rdar://problem/12582041>
Greg Clayton [Sat, 15 Dec 2012 01:19:07 +0000 (01:19 +0000)]
<rdar://problem/12582041>

_regexp_attach doesn't handle the case where no arguments are provided. It now also handles the case you were you pass options.

llvm-svn: 170262

11 years agoDocs: redirect "static analysis extensions" section to the analyzer site.
Jordan Rose [Sat, 15 Dec 2012 00:37:01 +0000 (00:37 +0000)]
Docs: redirect "static analysis extensions" section to the analyzer site.

The notes on the objc_method_family and ns_returns_retained-type attributes
have been moved to the Objective-C section, since both are used by ARC.
The notes on analyzer_noreturn are now only on the analyzer site.

The inadequacy of these docs was noticed months ago by Jonathan Sauer;
I'm only just now getting around to cleaning them up.

llvm-svn: 170261

11 years agoRemove old description of analyzer internals from public docs.
Jordan Rose [Sat, 15 Dec 2012 00:36:53 +0000 (00:36 +0000)]
Remove old description of analyzer internals from public docs.

The file still exists in docs/analyzer/, but it won't be linked to from
clang.llvm.org or processed as part of the default Sphinx doc-build.
RegionStore has changed a lot from what Ted and Zhongxing describe here!

llvm-svn: 170260

11 years agoThis code implements most of mips16 hardfloat as it is done by gcc.
Reed Kotler [Sat, 15 Dec 2012 00:20:05 +0000 (00:20 +0000)]
This code implements most of mips16 hardfloat as it is done by gcc.
In this case, essentially it is soft float with different library routines.
The next step will be to make this fully interoperational with mips32 floating
point and that requires creating stubs for functions with signatures that
contain floating point types.

I have a more sophisticated design for mips16 hardfloat which I hope to
implement at a later time that directly does floating point without the need
for function calls.

The mips16 encoding has no floating point instructions so one needs to
switch to mips32 mode to execute floating point instructions.

llvm-svn: 170259

11 years agoTo simplify some code move the unit emission into the holders.
Eric Christopher [Sat, 15 Dec 2012 00:04:07 +0000 (00:04 +0000)]
To simplify some code move the unit emission into the holders.
Make emitDIE public accordingly. No functional change.

llvm-svn: 170258

11 years agoUse begin and end label names from the section for info.
Eric Christopher [Sat, 15 Dec 2012 00:04:04 +0000 (00:04 +0000)]
Use begin and end label names from the section for info.

llvm-svn: 170257

11 years agoFixed two conditionals that I accidentally
Sean Callanan [Fri, 14 Dec 2012 23:43:03 +0000 (23:43 +0000)]
Fixed two conditionals that I accidentally
reversed in r170152.

<rdar://problem/12886584>

llvm-svn: 170256

11 years agoMake sure the alternate PC+imm syntax of LDR instruction with a small
Kevin Enderby [Fri, 14 Dec 2012 23:04:25 +0000 (23:04 +0000)]
Make sure the alternate PC+imm syntax of LDR instruction with a small
immediate generates the narrow version.  Needed when doing round-trip
assemble/disassemble testing using the alternate syntax that specifies
'pc' directly.

llvm-svn: 170255

11 years agoSwitch "disassemble" with no arguments or options to disassemble the current frame...
Greg Clayton [Fri, 14 Dec 2012 22:36:35 +0000 (22:36 +0000)]
Switch "disassemble" with no arguments or options to disassemble the current frame instead of around the current PC.

llvm-svn: 170254

11 years agoRemove unused variable.
Greg Clayton [Fri, 14 Dec 2012 22:35:50 +0000 (22:35 +0000)]
Remove unused variable.

llvm-svn: 170253

11 years agoRemove references to files that Sean recently removed from the Xcode project.
Greg Clayton [Fri, 14 Dec 2012 22:17:58 +0000 (22:17 +0000)]
Remove references to files that Sean recently removed from the Xcode project.

llvm-svn: 170250

11 years agoAdd back FoldOpIntoPhi optimizations with fix. Included test cases to help catch...
Michael Ilseman [Fri, 14 Dec 2012 22:08:26 +0000 (22:08 +0000)]
Add back FoldOpIntoPhi optimizations with fix. Included test cases to help catch these errors and to test the presence of the optimization itself

llvm-svn: 170248

11 years agoEnable the loop vectorizer by default.
Nadav Rotem [Fri, 14 Dec 2012 21:30:23 +0000 (21:30 +0000)]
Enable the loop vectorizer by default.

llvm-svn: 170246

11 years agoTypeLegalizer: Do not generate target specific nodes with illegal types, because...
Nadav Rotem [Fri, 14 Dec 2012 21:20:37 +0000 (21:20 +0000)]
TypeLegalizer: Do not generate target specific nodes with illegal types, because we cant type-legalize them.

llvm-svn: 170245

11 years agoSkipping the DeadStripTestCase.test_with_dwarf test on Linux because the Linux ld...
Andrew Kaylor [Fri, 14 Dec 2012 21:11:46 +0000 (21:11 +0000)]
Skipping the DeadStripTestCase.test_with_dwarf test on Linux because the Linux ld lacks support for the -dead_strip option.

llvm-svn: 170244

11 years agoRelease notes for dragonegg 3.2.
Duncan Sands [Fri, 14 Dec 2012 21:10:59 +0000 (21:10 +0000)]
Release notes for dragonegg 3.2.

llvm-svn: 170243

11 years agoAvoid possible overflow when reading inferior memory (and logging is enabled)
Daniel Malea [Fri, 14 Dec 2012 21:07:07 +0000 (21:07 +0000)]
Avoid possible overflow when reading inferior memory (and logging is enabled)

Patch by Matt Kopec!

llvm-svn: 170242

11 years agoEnabling ItaniumABILanguageRuntime and SymbolFileDWARFDebugMap plugins on non-Apple...
Andrew Kaylor [Fri, 14 Dec 2012 21:03:37 +0000 (21:03 +0000)]
Enabling ItaniumABILanguageRuntime and SymbolFileDWARFDebugMap plugins on non-Apple platforms.

llvm-svn: 170241

11 years agoFix a crash in ValueTracking on vectors of pointers.
Nadav Rotem [Fri, 14 Dec 2012 20:43:49 +0000 (20:43 +0000)]
Fix a crash in ValueTracking on vectors of pointers.

llvm-svn: 170240

11 years agoFixed a typo.
Filipe Cabecinhas [Fri, 14 Dec 2012 20:38:58 +0000 (20:38 +0000)]
Fixed a typo.

llvm-svn: 170239

11 years agofixed line endings
Anton Yartsev [Fri, 14 Dec 2012 20:28:48 +0000 (20:28 +0000)]
fixed line endings

llvm-svn: 170238

11 years agoThis patch removes some nondeterminism from direct object file output
Bill Schmidt [Fri, 14 Dec 2012 20:28:38 +0000 (20:28 +0000)]
This patch removes some nondeterminism from direct object file output
for TLS dynamic models on 64-bit PowerPC ELF.  The default sort routine
for relocations only sorts on the r_offset field; but with TLS, there
can be two relocations with the same r_offset.  For PowerPC, this patch
sorts secondarily on descending r_type, which matches the behavior
expected by the linker.

llvm-svn: 170237

11 years agoAdd GCC instructions to build section of website
Daniel Malea [Fri, 14 Dec 2012 20:02:21 +0000 (20:02 +0000)]
Add GCC instructions to build section of website

llvm-svn: 170236

11 years agotsan: synchronize connect->accept calls
Dmitry Vyukov [Fri, 14 Dec 2012 20:01:58 +0000 (20:01 +0000)]
tsan: synchronize connect->accept calls

llvm-svn: 170235

11 years agoadded post-statement callback to CXXNewExpr and pre-statement callback to CXXDeleteExpr
Anton Yartsev [Fri, 14 Dec 2012 19:48:34 +0000 (19:48 +0000)]
added post-statement callback to CXXNewExpr and pre-statement callback to CXXDeleteExpr

llvm-svn: 170234

11 years agoDon't hit an assertion failure when calculating the __PRETTY_FUNCTION__
Argyrios Kyrtzidis [Fri, 14 Dec 2012 19:44:11 +0000 (19:44 +0000)]
Don't hit an assertion failure when calculating the __PRETTY_FUNCTION__
of a member function with parenthesized declarator.

Like this test case:

class Foo {
  const char *(baz)() {
    return __PRETTY_FUNCTION__;
  }
};

llvm-svn: 170233

11 years ago[analyzer] Propagate the checker's state from checkBranchCondition
Anna Zaks [Fri, 14 Dec 2012 19:08:20 +0000 (19:08 +0000)]
[analyzer] Propagate the checker's state from checkBranchCondition

Fixes a bug, where we were dropping the state modifications from the
checkBranchCondition checker callback.

llvm-svn: 170232

11 years ago[analyzer] Refactor: Store visited Decls instead of CallGraphNodes.
Anna Zaks [Fri, 14 Dec 2012 19:08:17 +0000 (19:08 +0000)]
[analyzer] Refactor: Store visited Decls instead of CallGraphNodes.

llvm-svn: 170231

11 years agoUse renamed CommonOptionsParser member functions
Edwin Vane [Fri, 14 Dec 2012 18:59:24 +0000 (18:59 +0000)]
Use renamed CommonOptionsParser member functions

GetCompilations() and GetSourcePathLists() were renamed to match LLVM style.

Reviewed By: Alexander Kornienko

llvm-svn: 170230

11 years agoStyle and Doc fix for CommonOptionsParser
Edwin Vane [Fri, 14 Dec 2012 18:58:25 +0000 (18:58 +0000)]
Style and Doc fix for CommonOptionsParser

- Renaming GetCompilations() and GetSourcePathList() to follow LLVM
  style.
- Updating docs to reflect name change.
- Also updating help text to not mention clang-check since this class
  can be used by any tool.

Reviewed By: Alexander Kornienko

llvm-svn: 170229

11 years ago[preprocessor] For errors at a function macro invocation, also include
Argyrios Kyrtzidis [Fri, 14 Dec 2012 18:53:47 +0000 (18:53 +0000)]
[preprocessor] For errors at a function macro invocation, also include
a note about where the macro is defined.

llvm-svn: 170228

11 years agoAdd more reset methods to make all objects that the backend may use for outputting...
Pedro Artigas [Fri, 14 Dec 2012 18:52:11 +0000 (18:52 +0000)]
Add more reset methods to make all objects that the backend may use for outputting code have a reset, some are not used but were declared for completeness

llvm-svn: 170227

11 years agordar://12753946
Shuxin Yang [Fri, 14 Dec 2012 18:46:06 +0000 (18:46 +0000)]
rdar://12753946

Implement rule : "x * (select cond 1.0, 0.0) -> select cond x, 0.0"

llvm-svn: 170226

11 years ago[CMake] Move libxml2 stuff from clang to llvm/cmake.
NAKAMURA Takumi [Fri, 14 Dec 2012 18:30:20 +0000 (18:30 +0000)]
[CMake] Move libxml2 stuff from clang to llvm/cmake.

llvm-svn: 170225

11 years agoChange crash handling to use eStateStopped rather than eStateCrashed.
Andrew Kaylor [Fri, 14 Dec 2012 18:24:34 +0000 (18:24 +0000)]
Change crash handling to use eStateStopped rather than eStateCrashed.

llvm-svn: 170224

11 years agoDon't require a space between the two ">" in "vector<id<protocol>>" in objc++11.
Nico Weber [Fri, 14 Dec 2012 18:22:38 +0000 (18:22 +0000)]
Don't require a space between the two ">" in "vector<id<protocol>>" in objc++11.

C++11 allowed writing "vector<vector<int>>" without a space between the two ">".
This change allows this for protocols in template lists too in -std=c++11 mode,
and improves the diagnostic in c++98 mode.

llvm-svn: 170223

11 years agoThis patch improves the 64-bit PowerPC InitialExec TLS support by providing
Bill Schmidt [Fri, 14 Dec 2012 17:02:38 +0000 (17:02 +0000)]
This patch improves the 64-bit PowerPC InitialExec TLS support by providing
for a wider range of GOT entries that can hold thread-relative offsets.
This matches the behavior of GCC, which was not documented in the PPC64 TLS
ABI.  The ABI will be updated with the new code sequence.

Former sequence:

  ld 9,x@got@tprel(2)
  add 9,9,x@tls

New sequence:

  addis 9,2,x@got@tprel@ha
  ld 9,x@got@tprel@l(9)
  add 9,9,x@tls

Note that a linker optimization exists to transform the new sequence into
the shorter sequence when appropriate, by replacing the addis with a nop
and modifying the base register and relocation type of the ld.

llvm-svn: 170209

11 years ago[Sanitizer] remove extra typename
Alexey Samsonov [Fri, 14 Dec 2012 15:37:35 +0000 (15:37 +0000)]
[Sanitizer] remove extra typename

llvm-svn: 170208

11 years agotsan: add test for errno spoiling in signal handler
Dmitry Vyukov [Fri, 14 Dec 2012 14:42:40 +0000 (14:42 +0000)]
tsan: add test for errno spoiling in signal handler

llvm-svn: 170207

11 years ago[sanitizer] add AllocatorLeakTest
Kostya Serebryany [Fri, 14 Dec 2012 14:20:29 +0000 (14:20 +0000)]
[sanitizer] add AllocatorLeakTest

llvm-svn: 170206

11 years agotsan: add test for malloc/free in signal handler
Dmitry Vyukov [Fri, 14 Dec 2012 13:56:27 +0000 (13:56 +0000)]
tsan: add test for malloc/free in signal handler

llvm-svn: 170205

11 years agoAdd MemorySanitizer.cpp to the lint script.
Evgeniy Stepanov [Fri, 14 Dec 2012 13:48:55 +0000 (13:48 +0000)]
Add MemorySanitizer.cpp to the lint script.

llvm-svn: 170204

11 years agoFix lint warnings in MemorySanitizer.cpp.
Evgeniy Stepanov [Fri, 14 Dec 2012 13:48:31 +0000 (13:48 +0000)]
Fix lint warnings in MemorySanitizer.cpp.

llvm-svn: 170203

11 years agotsan: fix lint warning
Dmitry Vyukov [Fri, 14 Dec 2012 13:46:03 +0000 (13:46 +0000)]
tsan: fix lint warning

llvm-svn: 170202

11 years agoThe CellSPU backend is more than experimental, it's dead now...
Chandler Carruth [Fri, 14 Dec 2012 13:44:05 +0000 (13:44 +0000)]
The CellSPU backend is more than experimental, it's dead now...

llvm-svn: 170201

11 years agoRemove a section that was in 3.1's notes.
Chandler Carruth [Fri, 14 Dec 2012 13:43:59 +0000 (13:43 +0000)]
Remove a section that was in 3.1's notes.

Just give a shout if this was actually still important....

llvm-svn: 170200

11 years ago[msan] Origin stores and loads do not need explicit alignment.
Evgeniy Stepanov [Fri, 14 Dec 2012 13:43:11 +0000 (13:43 +0000)]
[msan] Origin stores and loads do not need explicit alignment.

Origin address is always 4 byte aligned, and the access type is always i32.

llvm-svn: 170199

11 years agoRemove several entries from the 3.2 release notes that were in the 3.1
Chandler Carruth [Fri, 14 Dec 2012 13:41:02 +0000 (13:41 +0000)]
Remove several entries from the 3.2 release notes that were in the 3.1
release notes already. =]

llvm-svn: 170198

11 years agoFix the order of these sections of the release notes.
Chandler Carruth [Fri, 14 Dec 2012 13:37:18 +0000 (13:37 +0000)]
Fix the order of these sections of the release notes.

llvm-svn: 170197

11 years agoAdd a rough draft of some content about the new SROA. I'll try to proof
Chandler Carruth [Fri, 14 Dec 2012 13:37:17 +0000 (13:37 +0000)]
Add a rough draft of some content about the new SROA. I'll try to proof
read this and clean it up tomorrow, but hopefully it's a good
placeholder.

llvm-svn: 170196

11 years agoDelete a long-stale "if its ready" comment. All indications is that this
Chandler Carruth [Fri, 14 Dec 2012 13:37:12 +0000 (13:37 +0000)]
Delete a long-stale "if its ready" comment. All indications is that this
will look a bit different when we have time to get it ready to turn on,
and we won't likely need this reminder.

llvm-svn: 170195

11 years agoProvide some actual highlight bullets for Clang.
Chandler Carruth [Fri, 14 Dec 2012 13:22:57 +0000 (13:22 +0000)]
Provide some actual highlight bullets for Clang.

If anyone has better highlights (I'm obviously biased by the things that
I'm excited about) jump in and add them!

llvm-svn: 170194

11 years ago[asan] more asan_allocator2 code: record the allocation stack trace, implement calloc/etc
Kostya Serebryany [Fri, 14 Dec 2012 13:16:19 +0000 (13:16 +0000)]
[asan] more asan_allocator2 code: record the allocation stack trace, implement calloc/etc

llvm-svn: 170193

11 years ago[msan] Refactor default shadow propagation and origin tracking.
Evgeniy Stepanov [Fri, 14 Dec 2012 12:54:18 +0000 (12:54 +0000)]
[msan] Refactor default shadow propagation and origin tracking.

This change moves the code for default shadow propagaition (handleShadowOr)
and origin tracking (setOriginForNaryOp) into a new builder-like class. Also
gets rid of handleShadowOrBinary.

llvm-svn: 170192

11 years agotsan: fix build
Dmitry Vyukov [Fri, 14 Dec 2012 12:24:11 +0000 (12:24 +0000)]
tsan: fix build

llvm-svn: 170191

11 years ago[asan] more asan_allocator2 code: actually un/poison shadow on malloc/free
Kostya Serebryany [Fri, 14 Dec 2012 12:15:09 +0000 (12:15 +0000)]
[asan] more asan_allocator2 code: actually un/poison shadow on malloc/free

llvm-svn: 170190

11 years ago[Sanitizer] use INTERCEPT_FUNCTION(foo) instead of CHECK(INTERCEPT_FUNCTION(foo)...
Alexey Samsonov [Fri, 14 Dec 2012 11:52:02 +0000 (11:52 +0000)]
[Sanitizer] use INTERCEPT_FUNCTION(foo) instead of CHECK(INTERCEPT_FUNCTION(foo)) - this check may fail on Linux if user program defines its own version of library function foo

llvm-svn: 170189

11 years agoTargets.cpp: [cygwin] Add the predefined macro "_X86_", according to newer version...
NAKAMURA Takumi [Fri, 14 Dec 2012 10:17:26 +0000 (10:17 +0000)]
Targets.cpp: [cygwin] Add the predefined macro "_X86_", according to newer version of cygwin/w32api.

llvm-svn: 170188

11 years agotsan: disable allocator tests in debug build
Dmitry Vyukov [Fri, 14 Dec 2012 10:17:22 +0000 (10:17 +0000)]
tsan: disable allocator tests in debug build

llvm-svn: 170187

11 years agotsan: comment out debug output in test
Dmitry Vyukov [Fri, 14 Dec 2012 10:12:14 +0000 (10:12 +0000)]
tsan: comment out debug output in test

llvm-svn: 170186

11 years agotsan: add sanity test for Go runtime into presubmit test
Dmitry Vyukov [Fri, 14 Dec 2012 10:10:57 +0000 (10:10 +0000)]
tsan: add sanity test for Go runtime into presubmit test

llvm-svn: 170185

11 years agotsan: add socketpair() interceptor and test
Dmitry Vyukov [Fri, 14 Dec 2012 09:57:42 +0000 (09:57 +0000)]
tsan: add socketpair() interceptor and test

llvm-svn: 170184

11 years agoChange TargetLowering::getLoadExtAction to take an MVT, instead of
Patrik Hagglund [Fri, 14 Dec 2012 09:05:13 +0000 (09:05 +0000)]
Change TargetLowering::getLoadExtAction to take an MVT, instead of
EVT.

llvm-svn: 170183

11 years agoHave Sema::ActOnStartOfFunctionDef return the declaration that was passed it.
Argyrios Kyrtzidis [Fri, 14 Dec 2012 06:54:03 +0000 (06:54 +0000)]
Have Sema::ActOnStartOfFunctionDef return the declaration that was passed it.

This fixes the missing warning here:

struct S {
    template <typename T>
    void meth() {
        char arr[3];
        arr[4] = 0; // warning: array index 4 is past the end of the array
    }
};

template <typename T>
void func() {
    char arr[3];
    arr[4] = 0; // no warning
}

llvm-svn: 170180

11 years agoRemove code from Sema::ActOnStartOfFunctionTemplateDef that duplicates what
Argyrios Kyrtzidis [Fri, 14 Dec 2012 06:53:58 +0000 (06:53 +0000)]
Remove code from Sema::ActOnStartOfFunctionTemplateDef that duplicates what
Sema::ActOnStartOfFunctionDef is already doing.

llvm-svn: 170179

11 years agofix another spello
Nico Weber [Fri, 14 Dec 2012 02:41:18 +0000 (02:41 +0000)]
fix another spello

llvm-svn: 170177

11 years agofix spello
Nico Weber [Fri, 14 Dec 2012 02:40:09 +0000 (02:40 +0000)]
fix spello

llvm-svn: 170176

11 years agoclang/test/CodeGenCXX/lambda-expressions.cpp: Relax expression for -Asserts.
NAKAMURA Takumi [Fri, 14 Dec 2012 02:35:04 +0000 (02:35 +0000)]
clang/test/CodeGenCXX/lambda-expressions.cpp: Relax expression for -Asserts.

"entry:" is not met in -Asserts build.

llvm-svn: 170175

11 years agoCleaned up the UUID mismatch just printing itself whenever it wants to by allowing...
Greg Clayton [Fri, 14 Dec 2012 02:15:00 +0000 (02:15 +0000)]
Cleaned up the UUID mismatch just printing itself whenever it wants to by allowing an optional feedback stream to be passed along when getting the symbol vendor.

llvm-svn: 170174

11 years ago<rdar://problem/12878674>
Greg Clayton [Fri, 14 Dec 2012 02:13:44 +0000 (02:13 +0000)]
<rdar://problem/12878674>

Remove debug asserts.

llvm-svn: 170173

11 years agorevert r170166 - disable the loop vectorizer.
Nadav Rotem [Fri, 14 Dec 2012 01:57:00 +0000 (01:57 +0000)]
revert r170166 - disable the loop vectorizer.

llvm-svn: 170172

11 years agoRmoved the old LLVM disassembler based on libedis.
Sean Callanan [Fri, 14 Dec 2012 01:29:59 +0000 (01:29 +0000)]
Rmoved the old LLVM disassembler based on libedis.

llvm-svn: 170171

11 years agoRefactor dump methods to make RegionBindingsRef printable in the debugger.
Ted Kremenek [Fri, 14 Dec 2012 01:23:13 +0000 (01:23 +0000)]
Refactor dump methods to make RegionBindingsRef printable in the debugger.

llvm-svn: 170170

11 years agoMade the struct test case actually use an expression
Sean Callanan [Fri, 14 Dec 2012 00:56:57 +0000 (00:56 +0000)]
Made the struct test case actually use an expression
instead of falling through to the "frame variable"
code.

llvm-svn: 170169

11 years agoSome incorrect debug information caused LLDB
Sean Callanan [Fri, 14 Dec 2012 00:54:13 +0000 (00:54 +0000)]
Some incorrect debug information caused LLDB
to report a structure with an array of size 1
at the end without accounting for that array
when reporting the struct's total size to Clang.

LLDB now coerces such an array to size 0.

<rdar://problem/12822204>

llvm-svn: 170168

11 years agoTrigger the display of error and output in sourced commands from the result object...
Enrico Granata [Fri, 14 Dec 2012 00:52:54 +0000 (00:52 +0000)]
Trigger the display of error and output in sourced commands from the result object's status instead of the presence of text in the error stream
This should be more consistent with the notion of command success/failure and avoids spewing warnings that the user might not care about
There will need to be an option to specify the level of verbosity desired (never show anything, only show failures, errors and warning, everything)

llvm-svn: 170167

11 years agoEnable the loop vectorizer.
Nadav Rotem [Fri, 14 Dec 2012 00:30:34 +0000 (00:30 +0000)]
Enable the loop vectorizer.

llvm-svn: 170166

11 years agoFix a parser_type to get created with the right AST, and also make variables made...
Greg Clayton [Fri, 14 Dec 2012 00:26:21 +0000 (00:26 +0000)]
Fix a parser_type to get created with the right AST, and also make variables made from symbols to not be "void * const", but just "void *".

llvm-svn: 170165

11 years agoMake the test less sensitive to the inline threshold.
Nadav Rotem [Fri, 14 Dec 2012 00:26:15 +0000 (00:26 +0000)]
Make the test less sensitive to the inline threshold.

llvm-svn: 170164

11 years agoFixing the -f option so that one specify multiple filters, e.g.
Enrico Granata [Fri, 14 Dec 2012 00:07:09 +0000 (00:07 +0000)]
Fixing the -f option so that one specify multiple filters, e.g.

./dotest.py  -C clang --arch x86_64 --arch i386  -v -t -f ObjCDataFormatterTestCase.test_appkit_with_dsym_and_run_command -f ObjCDataFormatterTestCase.test_appkit_with_dwarf_and_run_command -f TestObjCBuiltinTypes.test_with_dsym_and_python_api -f TestObjCBuiltinTypes.test_with_dwarf_and_python_api -f ObjCDataFormatterTestCase.test_appkit_with_dsym_and_run_command -f ObjCDataFormatterTestCase.test_appkit_with_dwarf_and_run_command -f TestObjCBuiltinTypes.test_with_dsym_and_python_api -f -TestObjCBuiltinTypes.test_with_dwarf_and_python_api

The previous implementation would only remember the last filter passed, and consequently break redo.py

llvm-svn: 170163

11 years agoDisable the loop vectorizer.
Nadav Rotem [Fri, 14 Dec 2012 00:02:07 +0000 (00:02 +0000)]
Disable the loop vectorizer.

llvm-svn: 170162

11 years ago<rdar://problem/11689939>
Enrico Granata [Thu, 13 Dec 2012 23:50:33 +0000 (23:50 +0000)]
<rdar://problem/11689939>

Supporting a compact display syntax for ObjC pointers where 0x00.....0 is replaced by a much more legible "nil"
e.g. this would show:
(NSArray *) $2 = nil
instead of:
(NSArray *) $2 = 0x0000000000000000 <nil>

llvm-svn: 170161

11 years agoMake sure the __invoke function for lambdas returns properly. Per bug report on...
Eli Friedman [Thu, 13 Dec 2012 23:37:17 +0000 (23:37 +0000)]
Make sure the __invoke function for lambdas returns properly.  Per bug report on IRC>

llvm-svn: 170160

11 years agoUse the new MI bundling API in MachineInstrBundle itself.
Jakob Stoklund Olesen [Thu, 13 Dec 2012 23:23:46 +0000 (23:23 +0000)]
Use the new MI bundling API in MachineInstrBundle itself.

The new API is higher level than just manipulating the bundle flags
directly, and the setIsInsideBundle() function will disappear soon.

llvm-svn: 170159

11 years agoRemove two popcount patterns which we are already able to recognize.
Shuxin Yang [Thu, 13 Dec 2012 23:16:19 +0000 (23:16 +0000)]
Remove two popcount patterns which we are already able to recognize.

llvm-svn: 170158

11 years agoEnable the Loop Vectorizer by default for O2 and O3. Disable if-conversion by default...
Nadav Rotem [Thu, 13 Dec 2012 23:11:54 +0000 (23:11 +0000)]
Enable the Loop Vectorizer by default for O2 and O3. Disable if-conversion by default. I plan to revert this patch later today.

llvm-svn: 170157

11 years agoDebug Info: add support to mark member variables as artificial
David Blaikie [Thu, 13 Dec 2012 22:43:07 +0000 (22:43 +0000)]
Debug Info: add support to mark member variables as artificial

This is the LLVM portion of r170154.

llvm-svn: 170156