summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Revert r231324 "Remove the conditional addition of the execution dependency ↵Hans Wennborg2015-03-051-1/+3
| | | | | | | | fixing" See PR22799. llvm-svn: 231348
* [MBP] Use range based for-loops throughout this code. Several hadChandler Carruth2015-03-051-140/+108
| | | | | | | already been added and the inconsistency made choosing names and changing code more annoying. Plus, wow are they better for this code! llvm-svn: 231347
* [test] Expand a bit on the test case from r231251. NFC.Argyrios Kyrtzidis2015-03-052-3/+5
| | | | llvm-svn: 231346
* Remove dead code.Rui Ueyama2015-03-052-6/+0
| | | | | | This hook is called from one of the hottest loops in LLD and does nothing. llvm-svn: 231345
* Fix build with GCC:Nick Lewycky2015-03-053-1/+17
| | | | | | | | - GCC doesn't support #pragma mark, only Apple GCC and clang. Wrap the pragma mark's in #if 0 to make gcc ignore them but xcode still see them. - Wrap a bunch of "#pragma clang" lines in #ifdef __clang__. - Pacify gcc's -Wparenthesis in a case where it's quite reasonable. llvm-svn: 231344
* [sanitizer] add a run-time flag to dump the coverage counter bitsetKostya Serebryany2015-03-053-0/+30
| | | | llvm-svn: 231343
* Add support for the DWARFv3 (circa 2005) DW_OP_form_tls_addressJason Molenda2015-03-051-4/+13
| | | | | | | | | | | | | operator in addition to the vendor-extension DW_OP_GNU_push_tls_address. clang on PS4 and Darwin will be emitting the standard opcode as of r231286 via http://reviews.llvm.org/D8018 Behavior of this standard opcode is the same as DW_OP_GNU_push_tls_address. <rdar://problem/20043195> llvm-svn: 231342
* [MBP] NFC, run clang-format over this code and tweak things to make theChandler Carruth2015-03-051-71/+62
| | | | | | | | | | | result reasonable. This code predated clang-format and so there was a reasonable amount of crufty formatting that had accumulated. This should ensure that neither myself nor others end up with formatting-only changes sneaking into other fixes. llvm-svn: 231341
* [MBP] This is no longer 'block-placement2'. ;] The old variants are longChandler Carruth2015-03-051-3/+3
| | | | | | gone, update this code to reflect that. llvm-svn: 231340
* Fix msvc-link.c test for environments with link.exe on PATHHans Wennborg2015-03-051-2/+2
| | | | | | Patch by Michael Edwards! llvm-svn: 231339
* Use the existing begin and end symbol for debug info.Rafael Espindola2015-03-0513-29/+21
| | | | llvm-svn: 231338
* [sanitizer] use simpler symbolizer interface (GetModuleNameForPc) where ↵Kostya Serebryany2015-03-052-13/+7
| | | | | | applicable llvm-svn: 231337
* Reformat.NAKAMURA Takumi2015-03-052-20/+14
| | | | llvm-svn: 231336
* Revert r231103, "FullDependenceAnalysis: Avoid using the (deprecated in ↵NAKAMURA Takumi2015-03-051-22/+23
| | | | | | | | C++11) copy ctor" It is miscompiled on msc18. llvm-svn: 231335
* Revert r231104, "unique_ptrify FullDependenceAnalysis::DV", to appease msc18 ↵NAKAMURA Takumi2015-03-052-6/+13
| | | | | | C2280. llvm-svn: 231334
* [sanitizer] add nosanitize metadata to more coverage instrumentation ↵Kostya Serebryany2015-03-052-12/+20
| | | | | | instructions llvm-svn: 231333
* [MBP] Revert r231238 which attempted to fix a nasty bug where MBP isChandler Carruth2015-03-052-119/+9
| | | | | | | | | | | | | just arbitrarily interleaving unrelated control flows once they get moved "out-of-line" (both outside of natural CFG ordering and with diamonds that cannot be fully laid out by chaining fallthrough edges). This easy solution doesn't work in practice, and it isn't just a small bug. It looks like a very different strategy will be required. I'm working on that now, and it'll again go behind some flag so that everyone can experiment and make sure it is working well for them. llvm-svn: 231332
* ScalarEvolution.cpp: Appease g++-4.7. He missed implicit "this" in lambda.NAKAMURA Takumi2015-03-051-1/+1
| | | | llvm-svn: 231331
* Remove else if a last block ends with return.Rui Ueyama2015-03-051-14/+10
| | | | llvm-svn: 231330
* Remove redundant virtual destructor.Rui Ueyama2015-03-051-3/+1
| | | | | | | DefinedAtom, which is the base class of ELFCommonAtom, has a virtual destructor, so this is redundant. llvm-svn: 231329
* MS ABI: Implement support for throwing a C++ exceptionDavid Majnemer2015-03-059-124/+530
| | | | | | | | | | | | | | | | | | | | | | | Throwing a C++ exception, under the MS ABI, is implemented using three components: - ThrowInfo structure which contains information like CV qualifiers, what destructor to call and a pointer to the CatchableTypeArray. - In a significant departure from the Itanium ABI, copying by-value occurs in the runtime and not at the catch site. This means we need to enumerate all possible types that this exception could be caught as and encode the necessary information to convert from the exception object's type to the catch handler's type. This includes complicated derived to base conversions and the execution of copy-constructors. N.B. This implementation doesn't support the execution of a copy-constructor from within the runtime for now. Adding support for that functionality is quite difficult due to things like default argument expressions which may evaluate arbitrary code hiding in the copy-constructor's parameters. Differential Revision: http://reviews.llvm.org/D8066 llvm-svn: 231328
* Create a dependence struct to hold dependence information for a SCoP.Johannes Doerfert2015-03-056-115/+155
| | | | | | | | | | | The new Dependences struct in the DependenceInfo holds all information that was formerly part of the DependenceInfo. It also provides the same interface for the user to access this information. This is another step to a more general ScopPass interface that does allow multiple SCoPs to be "in flight". llvm-svn: 231327
* Add missing forward declaration [NFC]Johannes Doerfert2015-03-051-0/+1
| | | | llvm-svn: 231326
* [ASan] Fix asan-(32|64)-bits lit tests feature.Alexey Samsonov2015-03-051-2/+2
| | | | | | | | It broke down at some point, and all tests with REQUIRES: asan-(32|64)-bits line stopped being executed. Restore the intended behavior. llvm-svn: 231325
* Remove the conditional addition of the execution dependency fixingEric Christopher2015-03-051-3/+1
| | | | | | | pass from the ARM backend as the pass itself will detect any use of the appropriate register class. llvm-svn: 231324
* Cleanup and remove a chunk of getARMSubtarget calls in theEric Christopher2015-03-056-23/+33
| | | | | | | ARM TargetMachine pass pipeline construction by pushing them down into the appropriate pass. llvm-svn: 231323
* Turn off .debug_pubnames/pubtypes for PS4.Paul Robinson2015-03-052-6/+8
| | | | | | Differential Revision: http://reviews.llvm.org/D8067 llvm-svn: 231322
* Use range-based for loops to iterate over file nodes.Rui Ueyama2015-03-052-8/+4
| | | | | | | | | | | | I converted them to non-range-based loops in r226883 and r226893 because at that moment File::parse() may have side effects and may update the vector that the reference returned from LinkingContext::nodes(). Now File::parse() is free from side effects. We can use range-based loops again. llvm-svn: 231321
* Give some obj-c rewriter tests that use MS pragmas a triple as a speculative fixReid Kleckner2015-03-052-6/+6
| | | | llvm-svn: 231320
* [sanitizer] when dumping coverage bitset, dump seperate file for every ↵Kostya Serebryany2015-03-044-28/+69
| | | | | | module, instead of dumping a single combined bitset llvm-svn: 231319
* Temporary XFAILs for HexagonRick Foos2015-03-044-0/+4
| | | | | | | | | | | | | | Summary: Temporary XFAIL's until patches done. Reviewers: echristo, adasgupt, colinl Reviewed By: colinl Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D8044 llvm-svn: 231318
* Implement section pragma feedback on r205810Reid Kleckner2015-03-044-8/+27
| | | | | | | Mostly short-circuits some conditionals. Adds target validation of sections passed to these pragmas. llvm-svn: 231317
* PECOFF: Update comments on .drectve section encoding.Rui Ueyama2015-03-041-6/+4
| | | | llvm-svn: 231316
* Appease the Windows botEnrico Granata2015-03-041-0/+1
| | | | llvm-svn: 231315
* [analyzer] Bug fix: do not report leaks for alloca()Anton Yartsev2015-03-042-0/+14
| | | | llvm-svn: 231314
* Initializer lists are supported in MSVC 2013. Since that's our minimum ↵Aaron Ballman2015-03-041-3/+2
| | | | | | required version, we can move that to the list of acceptable C++11 features. llvm-svn: 231313
* Pass -dll to link.exe when building with -shared (PR22697)Hans Wennborg2015-03-042-1/+15
| | | | | | And start building a test for non-clang-cl link.exe invocations. llvm-svn: 231312
* Move the <dynarray> tests out of the std/ hierarchy, since it's not really ↵Marshall Clow2015-03-0412-0/+0
| | | | | | part of the standard any more. llvm-svn: 231311
* Introduce lldbassert(x)Enrico Granata2015-03-043-0/+74
| | | | | | | | | | | We would like it if LLDB never crashed, especially if we never caused LLDB to crash On the other hand, having assertions can sometimes be useful lldbassert(x) is the best of both worlds: - in debug builds, it turns into a regular assert, which is fine because we don't mind debug LLDB to crash on development machines - in non-debug builds, it emits a message formatted just like assert(x) would, but then instead of crashing, it dumps a backtrace, suggests filing a bug, and keeps running llvm-svn: 231310
* [Support] Increase timeout for the LockFileManager back to 5 mins.Argyrios Kyrtzidis2015-03-041-2/+3
| | | | | | Waiting for just 1 min may not be enough for some contexts. llvm-svn: 231309
* Rename the Dependences pass to DependenceInfo [NFC]Johannes Doerfert2015-03-0435-76/+78
| | | | | | | | | | We rename the Dependences pass to DependenceInfo as a first step to a caching pass policy. The new DependenceInfo pass will later provide "Dependences" for a SCoP. To keep consistency the test folder is renamed too. llvm-svn: 231308
* Improve test robustnessMatthias Braun2015-03-041-16/+9
| | | | | | | | Improve test robustness in preparation of coming commits: - Avoid undefs which may get propagated too much. - Remove several pointless add 0, instructions llvm-svn: 231307
* [IndVarSimplify] use the "canonical" way to infer no-wrap.Sanjoy Das2015-03-041-78/+40
| | | | | | | | | | | | | | | | | | | | | | Summary: rL225282 introduced an ad-hoc way to promote some additions to nuw or nsw. Since then SCEV has become smarter in directly proving no-wrap; and using the canonical "ext(A op B) == ext(A) op ext(B)" method of proving no-wrap is just as powerful now. Rip out the existing complexity in favor of getting SCEV to do all the heaving lifting internally. This change does not add any unit tests because it is supposed to be a non-functional change. Tests added in rL225282 and rL226075 are valid tests for this change. Reviewers: atrick, majnemer Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D7981 llvm-svn: 231306
* [SCEV] make SCEV smarter about proving no-wrap.Sanjoy Das2015-03-043-0/+146
| | | | | | | | | | | | | | | Summary: Teach SCEV to prove no overflow for an add recurrence by proving something about the range of another add recurrence a loop-invariant distance away from it. Reviewers: atrick, hfinkel Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D7980 llvm-svn: 231305
* Simplify dropConstantScheduleDims [NFC]Johannes Doerfert2015-03-041-10/+9
| | | | llvm-svn: 231304
* Provide an explicit move ctor because MSVC can't synthesize oneDavid Blaikie2015-03-041-0/+6
| | | | llvm-svn: 231303
* Fix the clang self-host -Werror buildDavid Blaikie2015-03-041-1/+1
| | | | | | Sorry about the breakage. llvm-svn: 231302
* PECOFF: Do not add layout-after edges.Rui Ueyama2015-03-042-19/+8
| | | | | | | | The last use of layout-after edge for PE/COFF was removed in r231290. Now layout-after edges do nothing. We can stop adding them to the graph. No functionality change intended. llvm-svn: 231301
* [dsymutil] Add minimal code to emit DIE trees.Frederic Riss2015-03-043-4/+553
| | | | | | | | | | | | | | | | | | | This commit adds code to emit DIE trees that have been pruned from the parts that haven't been marked as kept in the previous pass. It works by 'cloning' the input DIE tree (as read by libDebugInfoDwarf) into a tree of DIE objects. Cloning the DIEs means essentially cloning their attributes. The code in this commit does only handle scalar and block attributes (scalar because they are trivial, blocks because they can't be easily replaced by a scalr placeholder), all the other ones are replaced by placeholder zero values and will be handled in further commits. The added tests mostly check that the DIE tree has the correct layout and also verify that a few chosen scalar and block attributes correctly make their way into the output. llvm-svn: 231300
* DWARFFormValue: Add getAsSignedConstant method.Frederic Riss2015-03-043-0/+94
| | | | | | | The implementation accepts explicitely signed forms (DW_FORM_sdata), but also unsigned forms as long as they fit in an int64_t. llvm-svn: 231299
OpenPOWER on IntegriCloud