Commit Graph

136017 Commits

Author SHA1 Message Date
Chad Rosier 75f0b2f2bd [ms-inline asm] Add the isParsingInlineAsm() function to the MCAsmTargetParser.
llvm-svn: 166292
2012-10-19 17:57:49 +00:00
Benjamin Kramer f1088a37cb Indvars: Don't recursively delete instruction during BB iteration.
This can invalidate the iterators leading to use after frees and crashes.
Fixes PR12536.

llvm-svn: 166291
2012-10-19 17:53:54 +00:00
Daniel Dunbar bc4a4565de Fix some doc-os.
llvm-svn: 166290
2012-10-19 17:23:39 +00:00
Daniel Dunbar 315bcbd145 lit: Propagate TERM variable in environment, some tools can do really obscure
odd things if this is missing.

llvm-svn: 166289
2012-10-19 17:23:34 +00:00
Michael Liao 4b7ccfcaad Lower BUILD_VECTOR to SHUFFLE + INSERT_VECTOR_ELT for X86
- If INSERT_VECTOR_ELT is supported (above SSE2, either by custom
  sequence of legal insn), transform BUILD_VECTOR into SHUFFLE +
  INSERT_VECTOR_ELT if most of elements could be built from SHUFFLE with few
  (so far 1) elements being inserted.

llvm-svn: 166288
2012-10-19 17:15:18 +00:00
Dmitri Gribenko 923f305b2e Remove const_casts by propagating constness down to called functions.
llvm-svn: 166287
2012-10-19 16:51:38 +00:00
Benjamin Kramer a225ed8d2b SCEVExpander: Don't crash when trying to merge two constant phis.
Just constant fold them so they can't cause any trouble. Fixes PR12627.

llvm-svn: 166286
2012-10-19 16:37:30 +00:00
Jordan Rose 2afd661685 Allow objc_requires_super to be used to check class methods as well.
Also, unify ObjCShouldCallSuperDealloc and ObjCShouldCallSuperFinalize.
The two have identical behavior and will never be active at the same time.

There's one last simplification now, which is that if we see a call to
[super foo] and we are currently in a method named 'foo', we will
/unconditionally/ clear the ObjCShouldCallSuper flag, rather than check
first to see if we're in a method where calling super is required. There's
no reason to pay the extra lookup price here.

llvm-svn: 166285
2012-10-19 16:05:26 +00:00
Alexey Samsonov 555d1c5ab8 [ASan] add comment to blacklist file to test behavior introduced in r166283
llvm-svn: 166284
2012-10-19 15:26:48 +00:00
Alexey Samsonov 8418442ff1 [ASan] Support comments in ASan/TSan blacklist file as lines starting with #
llvm-svn: 166283
2012-10-19 15:24:46 +00:00
Alexey Samsonov 521309294f [ASan] instrumented asan unit tests should depend on blacklist file
llvm-svn: 166282
2012-10-19 15:18:14 +00:00
Andy Gibbs 0fea04509a Change VerifyDiagnosticConsumer so that it *must* contain at least one "expected-*" directive. As a result, for test-cases that are not expected to generate any diagnostics, an additional directive "expected-no-diagnostics" has been implemented which can then be included in such test-cases. This new directive may not be used in conjunction with any other "expected-*" directive.
This change was initially proposed as a solution to the problem highlighted by check-in r164677, i.e. that -verify will not cause a test-case failure where the compile command does not actually reference the file.

Patch reviewed by David Blaikie.

llvm-svn: 166281
2012-10-19 12:49:32 +00:00
Andy Gibbs c6e68daac0 Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive.
llvm-svn: 166280
2012-10-19 12:44:48 +00:00
Andy Gibbs ac51de6ec2 Fix directive parsing in VerifyDiagnosticConsumer so that it ensures that "expected" is at the start of the word and will no longer accept typos such as "junkexpected-*" as a valid "expected-*" directive. A very few test-cases had to be amended to adhere to the new rule.
Patch reviewed by David Blaikie.

llvm-svn: 166279
2012-10-19 12:36:49 +00:00
Evgeniy Stepanov 8eb77d847e Move SplitBlockAndInsertIfThen to BasicBlockUtils.
llvm-svn: 166278
2012-10-19 10:48:31 +00:00
Benjamin Kramer 319cb771b2 LoopVectorize: Keep the IRBuilder on the stack.
No functionality change.

llvm-svn: 166274
2012-10-19 08:42:02 +00:00
Stepan Dyatkovskiy dab8043048 ARM:
Removed extra stack frame object for fixed byval arguments,
VarArgsStyleRegisters invocation was reworked due to some improper usage in
past. PR14099 also demonstrates it.

llvm-svn: 166273
2012-10-19 08:23:06 +00:00
Nick Lewycky 2e3b716959 Revert r166268, this fix for a crash-on-invalid introduced a rejects-valid.
Richard has an unreduced testcase to work with.

llvm-svn: 166272
2012-10-19 08:08:02 +00:00
Kostya Serebryany e0fc42580b [asan] update asan docs to explain more about linking and to mention full support for i386 Linux
llvm-svn: 166271
2012-10-19 07:00:46 +00:00
Nick Lewycky ac612277cb Pacify -Wnon-virtual-dtor.
llvm-svn: 166270
2012-10-19 07:00:09 +00:00
Richard Smith dc0ef4564f DR1511: A const volatile global does not implicitly get internal linkage like a
const non-volatile global does.

llvm-svn: 166269
2012-10-19 06:37:48 +00:00
Richard Smith b2d6df5c95 PR14124: When performing template instantiation of a qualified-id outside of a
class, diagnose if the qualified-id instantiates to a non-static class member.

llvm-svn: 166268
2012-10-19 06:32:17 +00:00
Kostya Serebryany 0995994989 [asan] make sure asan erases old unused allocas after it created a new one. This became important after the recent move from ModulePass to FunctionPass because no cleanup is happening after asan pass any more.
llvm-svn: 166267
2012-10-19 06:20:53 +00:00
Rafael Espindola 703c47f807 Fix handling of the regparm attribute in the presence of classes with copy
constructors.

When I first moved regparm support to TargetInfo.cpp I tried to isolate it
in classifyArgumentTypeWithReg, but it is actually a lot easier to flip the
code around and check for regparm at the end of the decision tree.

Without this refactoring classifyArgumentTypeWithReg would have to duplicate
the logic about when to use non-byval indirect arguments.

llvm-svn: 166266
2012-10-19 05:04:37 +00:00
Craig Topper 5e79ee087e Teach getColumnNumber to use the line cache to get the start of the line if its on the same line as the last call to getLineNumber. Prevents needing to scan backwards for the new line. Fixes PR14106.
llvm-svn: 166265
2012-10-19 04:40:38 +00:00
Nadav Rotem 4985ddc5e0 recommit the patch that makes LSR and LowerInvoke use the TargetTransform interface.
llvm-svn: 166264
2012-10-19 04:27:49 +00:00
Nadav Rotem e9c233b1c5 Reintroduce the TargetTransformInfo to the clang pass manager.
llvm-svn: 166263
2012-10-19 04:15:32 +00:00
Jason Molenda 87a04b2445 Add a new target setting to disable automatic loading of kext images
in a kernel debug session:

settings set target.disable-kext-loading true

<rdar://problem/12490623>

llvm-svn: 166262
2012-10-19 03:40:45 +00:00
NAKAMURA Takumi 4edb74cf81 clang/test/Index/annotate-comments.cpp: Relax the expression to be matched to -fms-compatibility. Then XFAIL can be removed.
FYI, it can be reproduced with "c-index-test -std=c++11 -fms-compatibility".

llvm-svn: 166261
2012-10-19 03:27:50 +00:00
Michael Liao 2c2358036d Simplify condition checking as CONCAT assume all inputs of the same type.
llvm-svn: 166260
2012-10-19 03:17:00 +00:00
Jason Molenda c26f5457d0 typeo fix in comment
llvm-svn: 166259
2012-10-19 02:18:10 +00:00
Jason Molenda 57656e7a8f Change CommunicationKDP::SendRequestWriteMemory to append data as binary
instead of asciified bytes.  <rdar://problem/12522978>

llvm-svn: 166258
2012-10-19 02:16:22 +00:00
NAKAMURA Takumi deca50f11c ASTWriter.cpp: Fix a warning. [-Wunused-variable]
llvm-svn: 166257
2012-10-19 01:53:57 +00:00
Sean Callanan 433cd221ec Fixed a bug where empty C structs were given size
1 by the expression parser.  We now correctly
report that they are of size 0.  (C++ structs
are mandated to have nonzero size, and Clang marks
them as being 1 byte in size.)

<rdar://problem/12380800>

llvm-svn: 166256
2012-10-19 01:37:25 +00:00
Nadav Rotem ced93f3a05 vectorizer: Add support for reading and writing from the same memory location.
llvm-svn: 166255
2012-10-19 01:24:18 +00:00
David Blaikie 282c92a708 Handle diamond inheritance in -Woverloaded-virtual.
llvm-svn: 166254
2012-10-19 00:53:08 +00:00
Nick Lewycky f20544aa52 Fix typo in comment.
llvm-svn: 166253
2012-10-19 00:47:07 +00:00
Douglas Gregor 108cb22dac Describe the new input-files block and its record, for llvm-bcanalyzer.
llvm-svn: 166252
2012-10-19 00:45:00 +00:00
Douglas Gregor 72be390e13 Move the set of files to be validated in an AST file into the control
block, so the input files are validated early on, before we've
committed to loading the AST file. This (accidentally) fixed a but
wherein the main file used to generate the AST file would *not* be
validated by the existing validation logic.

At the moment, this leads to some duplication of filenames between the
source manager block and input-file blocks, as well as validation
logic. This will be handled via an upcoming patch.

llvm-svn: 166251
2012-10-19 00:38:02 +00:00
NAKAMURA Takumi a9eebc3153 clang/test/Index/annotate-comments.cpp: Mark this as XFAIL on msvc. Investigating.
llvm-svn: 166250
2012-10-19 00:22:54 +00:00
Jim Ingham 06d282d1cb Change the "rb" alias to "rbreak" since some people are used to typing more than "rb" and so weren't
finding the alias.

llvm-svn: 166249
2012-10-18 23:24:12 +00:00
Nadav Rotem 5dc203e8f4 Reapply the TargerTransformInfo changes, minus the changes to LSR and Lowerinvoke.
llvm-svn: 166248
2012-10-18 23:22:48 +00:00
Nadav Rotem 1667324f22 cleanup the comment.
llvm-svn: 166247
2012-10-18 23:21:01 +00:00
Bob Wilson 201bf679b2 Fix comment typo.
llvm-svn: 166246
2012-10-18 23:08:23 +00:00
Argyrios Kyrtzidis f552d3841b Revert r166223 and the subsequent commits that depend on it, r166230 & r166235.
This seems to have introduced assertion hit when building compiler-rt.

llvm-svn: 166245
2012-10-18 22:42:31 +00:00
Greg Clayton c9d645d306 <rdar://problem/12491420>
Added a new setting that allows a python OS plug-in to detect threads and provide registers for memory threads. To enable this you set the setting:

settings set target.process.python-os-plugin-path lldb/examples/python/operating_system.py

Then run your program and see the extra threads. 

llvm-svn: 166244
2012-10-18 22:40:37 +00:00
Jordan Rose ed8560b09c Fix case for include of Compiler.h.
llvm-svn: 166243
2012-10-18 22:36:01 +00:00
Jordan Rose ec43d52336 Add move constructors for OwningPtr and OwningArrayPtr.
While LLVM itself is still C++03, there's no reason why tools built on
top of it can't use C++11 features.

llvm-svn: 166242
2012-10-18 22:22:58 +00:00
Jordan Rose 43805d73c7 Add a T&& constructor to llvm::Optional.
This allows llvm::Optional to be used with movable-but-not-copyable types.
While LLVM itself is still C++03, there's no reason why tools built on
top of it can't use C++11 features.

llvm-svn: 166241
2012-10-18 22:22:55 +00:00
Eric Christopher 56b8a200e1 Fix up comment and invert order. Most simple check first.
llvm-svn: 166240
2012-10-18 22:08:02 +00:00