summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Remove a couple of fixed paths that snuck into my test from 217550Ben Langmuir2014-09-101-2/+2
| | | | | | I forgot to fix these again the second time I copy-and-pasted. llvm-svn: 217552
* Rework how resetting breakpoints in changed modules works. Try to match up oldJim Ingham2014-09-109-50/+396
| | | | | | | | locations with new ones if possible. Next up some test cases... llvm-svn: 217551
* Avoid a couple of assertions when preprocessing with modulesBen Langmuir2014-09-108-22/+61
| | | | | | | | | | | | | | | | 1. We were hitting the NextIsPrevious assertion because we were trying to merge decl chains that were independent of each other because we had no Sema object to allow them to find existing decls. This is fixed by delaying loading the "preloaded" decls until Sema is available. 2. We were trying to get identifier info from an annotation token, which asserts. The fix is to special-case the module annotations in the preprocessed output printer. Fixed in a single commit because when you hit 1 you almost invariably hit 2 as well. llvm-svn: 217550
* llgs: implement qThreadStopInfo.Todd Fiala2014-09-103-2/+114
| | | | | | | | | | | This change implements this ticket: http://llvm.org/bugs/show_bug.cgi?id=20899 Adds the qThreadStopInfo RSP command for llgs and includes a test that verifies both debugserver and llgs respond with something reasonable on a multithreaded app. llvm-svn: 217549
* Add doInitialization/doFinalization to DataLayoutPass.Rafael Espindola2014-09-1017-34/+36
| | | | | | | | | | | | | With this a DataLayoutPass can be reused for multiple modules. Once we have doInitialization/doFinalization, it doesn't seem necessary to pass a Module to the constructor. Overall this change seems in line with the idea of making DataLayout a required part of Module. With it the only way of having a DataLayout used is to add it to the Module. llvm-svn: 217548
* Update for llvm api change.Rafael Espindola2014-09-101-3/+3
| | | | llvm-svn: 217547
* Only override the target architecture on -m32 and friends if it isJoerg Sonnenberger2014-09-102-1/+42
| | | | | | | | actually different. Fixes a surprising link error with nodejs on rpi, where armv6-netbsd-eabihf turned into armv5e-netbsd-eabihf, which doesn't lacks the necessary VFP support. llvm-svn: 217546
* Enable use of __builtin_assume_aligned when self-hostingHal Finkel2014-09-101-1/+1
| | | | | | | Clang/LLVM trunk now have support for __builtin_assume_aligned, turn this && into an || so we can use it ourselves. llvm-svn: 217545
* [AlignmentFromAssumptions] Don't divide by zero for unknown starting alignmentHal Finkel2014-09-102-2/+158
| | | | | | | | | | The routine that determines an alignment given some SCEV returns zero if the answer is unknown. In a case where we could determine the increment of an AddRec but not the starting alignment, we would compute the integer modulus by zero (which is illegal and traps). Prevent this by returning early if either the start or increment alignment is unknown (zero). llvm-svn: 217544
* Objective-C. Accept 'nil' as indexing argument toFariborz Jahanian2014-09-102-1/+12
| | | | | | | dictionary literals since the API which implements them accepts it too. // rdar://18254621 llvm-svn: 217543
* [UBSan] Add noinline attribute to handlers that should never return.Alexey Samsonov2014-09-102-15/+48
| | | | | | | | | | | | | FIx a problem reported by Jakub Jelinek: don't do early-exit from fatal UBSan handlers: even if source location is disabled (i.e. acquired by some other thread), we should continue the execution to make sure that: a) some thread will print the error report before calling Die(). b) handler marked as noreturn will indeed not return. Explicitly add "Die()" calls at the end of all fatal handlers to be sure UBSan handlers don't introduce UB themselves. llvm-svn: 217542
* [sphinx cleanup]Dan Liew2014-09-101-1/+1
| | | | | | Fix sphinx warning introduced by r217537 llvm-svn: 217541
* [AArch64] Revert r216141 for cycloneGerolf Hoflehner2014-09-101-1/+1
| | | | | | | | | | The increase of the interleave factor to 4 has side-effects like performance losses eg. due to reminder loops being executed more frequently and may increase code size. It requires more analysis and careful heuristic tuning. Expect double digit gains in small benchmarks like lowercase.c and losses in puzzle.c. llvm-svn: 217540
* [PassManager] Adding Hidden attribute to EnableMLSM optionGerolf Hoflehner2014-09-101-2/+2
| | | | llvm-svn: 217539
* [MergedLoadStoreMotion] Move pass enabling option to PassManagerBuilderGerolf Hoflehner2014-09-102-7/+8
| | | | llvm-svn: 217538
* Fix docs reference to inexistent class.Nico Weber2014-09-101-2/+2
| | | | | | Patch sent via telegraph by TNorthover. Thanks! llvm-svn: 217537
* Remember to eraseFromParent after replaceAllUsesWith.Rafael Espindola2014-09-102-2/+5
| | | | llvm-svn: 217536
* [UBSan] Add halt_on_error runtime flagAlexey Samsonov2014-09-104-10/+13
| | | | llvm-svn: 217535
* MS ABI: Emit dynamic initializers for selectany globals in ↵Hans Wennborg2014-09-102-6/+25
| | | | | | | | | | comdat-associative sections (PR20889) This prevents initializers for comdat-folded globals from running multiple times. Differential Revision: http://reviews.llvm.org/D5281 llvm-svn: 217534
* Cleanup: Use the appropriate API for accessing the DIVariable of aAdrian Prantl2014-09-101-1/+1
| | | | | | DBG_VALUE intrinsic. llvm-svn: 217533
* Remove unused local typedef.Eric Christopher2014-09-101-1/+0
| | | | llvm-svn: 217532
* [AArch64] Temporarily desactivate the PBQP test, while I investigate some ↵Arnaud A. de Grandmaison2014-09-101-14/+0
| | | | | | leaks in the allocator llvm-svn: 217531
* Objective-C arc. Fixes a crash when issuing diagnostic forFariborz Jahanian2014-09-102-1/+25
| | | | | | passing parameter to an audited CF API. rdar://18222007 llvm-svn: 217530
* Make CallingConv::ID an alias of "unsigned".Alexey Samsonov2014-09-103-11/+10
| | | | | | | | | | | | | | | | | | | | Summary: Make CallingConv::ID a plain unsigned instead of enum with a fixed set of valus. LLVM IR allows arbitraty calling conventions (you are free to write cc12345), and loading them as enum is an undefined behavior. This was reported by UBSan. Test Plan: llvm regression test suite Reviewers: nicholas Reviewed By: nicholas Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D5248 llvm-svn: 217529
* Rename getMaximumUnrollFactor -> getMaxInterleaveFactor; also rename option ↵Sanjay Patel2014-09-1092-147/+147
| | | | | | | | | | | names controlling this variable. "Unroll" is not the appropriate name for this variable. Clang already uses the term "interleave" in pragmas and metadata for this. Differential Revision: http://reviews.llvm.org/D5066 llvm-svn: 217528
* Removed misleading comment.Gerolf Hoflehner2014-09-101-1/+0
| | | | llvm-svn: 217527
* Added missing blankGerolf Hoflehner2014-09-101-1/+1
| | | | llvm-svn: 217526
* Allow to generate a loop without the GuardBBJohannes Doerfert2014-09-104-43/+91
| | | | | | | | | | | | This allows us to omit the GuardBB in front of created loops if we can show the loop trip count is at least one. It also simplifies the dominance relation inside the new created region. A GuardBB (even with a constant branch condition) might trigger false dominance errors during function verification. Differential Revision: http://reviews.llvm.org/D5297 llvm-svn: 217525
* [sphinx cleanup]Dan Liew2014-09-101-1/+1
| | | | | | Fix sphinx warning introduced by r217501. llvm-svn: 217524
* Make compiler-rt tests work with relocatable SDKs on OS XKuba Brecka2014-09-102-0/+43
| | | | | | Reviewed at http://reviews.llvm.org/D4047 llvm-svn: 217523
* Recognize .lib files as linker input explicitlyEhsan Akhgari2014-09-101-0/+1
| | | | | | | | | | | | | | | | Summary: Currently, this is done implicitly in Driver::BuildInputs by considering any invalid input type as linker input. Test Plan: I don't think this behavior is observable for the reason stated above. Reviewers: hansw Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D5294 llvm-svn: 217522
* Move FreeBSD's thread SetName implementation to ThisThreadEd Maste2014-09-103-8/+1
| | | | | | | | SetName is only used in LLDB to set a thead's own name. Move it there to match OS X and Windows and slightly reduce the effort in any future HostThread/ThisThread name refactoring. llvm-svn: 217521
* LangRef: @baz should be @bar in the COMDAT exampleHans Wennborg2014-09-101-1/+1
| | | | llvm-svn: 217520
* Add a test for an operator access decl.Nico Weber2014-09-101-1/+7
| | | | | | | | | | In Parser::ParseCXXClassMemberDeclaration(), it was possible to change isAccessDecl = NextToken().is(tok::kw_operator); to isAccessDecl = false; and no tests would fail. Now there's coverage for this. llvm-svn: 217519
* [AArch64] Address Chad's post commit review comments for r217504 (PBQP ↵Arnaud A. de Grandmaison2014-09-101-11/+10
| | | | | | experimental support) llvm-svn: 217518
* typoSanjay Patel2014-09-101-1/+1
| | | | llvm-svn: 217517
* typoSanjay Patel2014-09-101-1/+1
| | | | llvm-svn: 217516
* [analyzer] Fix pthread lock tests so that the API comes from a system header.Jordan Rose2014-09-102-23/+45
| | | | | | | | ...and verify that a global mutex in user code can be used without warnings. Patch by Aleksei Sidorin! llvm-svn: 217515
* Fix comments of createReplaceableForwardDecl() and createForwardDecl().Frederic Riss2014-09-101-4/+3
| | | | | | | | | | | | | Noticed while trying to understand how the merge of forward decalred types and defintions work. Reviewers: echristo, dblaikie, aprantl Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D5291 llvm-svn: 217514
* Replace a few virtual with override.Rafael Espindola2014-09-101-21/+21
| | | | llvm-svn: 217513
* math: Add tan implementationAaron Watry2014-09-106-0/+21
| | | | | | | | | | | | | | | | | Uses the algorithm: tan(x) = sin(x) / sqrt(1-sin^2(x)) An alternative is: tan(x) = sin(x) / cos(x) Which produces more verbose bitcode and longer assembly. Either way, the generated bitcode seems pretty nasty and a more optimized but still precise-enough solution is welcome. Signed-off-by: Aaron Watry <awatry@gmail.com> Reviewed-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 217511
* math: Add asin implementationAaron Watry2014-09-106-0/+16
| | | | | | | | | | | | | | asin(x) = atan2(x, sqrt( 1-x^2 )) alternatively: asin(x) = PI/2 - acos(x) Use the atan2 implementation since it produces slightly shorter bitcode and R600 machine code. Signed-off-by: Aaron Watry <awatry@gmail.com> Reviewed-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 217510
* math: Add acos implementationAaron Watry2014-09-106-0/+34
| | | | | | | | | | Passes the tests that were submitted to the piglit list Tested on R600 (Pitcairn) Signed-off-by: Aaron Watry <awatry@gmail.com> Reviewed-by: Jan Vesely <jan.vesely@rutgers.edu> llvm-svn: 217509
* [Refactor] Cleanup isl code generationJohannes Doerfert2014-09-1011-59/+167
| | | | | | | | | | | | | | | | | | | | Summary: + Refactor the runtime check (RTC) build function + Added helper function to create an PollyIRBuilder + Change the simplify region function to create not only unique entry and exit edges but also enfore that the entry edge is unconditional + Cleaned the IslCodeGeneration runOnScop function: - less post-creation changes of the created IR + Adjusted and added test cases Reviewers: grosser, sebpop, simbuerg, dpeixott Subscribers: llvm-commits, #polly Differential Revision: http://reviews.llvm.org/D5076 llvm-svn: 217508
* Use "const auto &" in range based for loopsTobias Grosser2014-09-101-5/+5
| | | | | | | This previous code added in r216842 most likely created unnecessary copies. Reported-by: Duncan P. N. Exon Smith <dexonsmith@apple.com> llvm-svn: 217507
* No need to check for non-existing std::map elementsTobias Grosser2014-09-101-4/+0
| | | | | | | | | | | | | | | | | | It seems we added guards to check for non-existing std::map elements to make sure they are default constructed before first accessed. Besides, the code being wrong because of checking Context.NonAffineAccesses[BasePointer].size() instead of Context.cound(BasePointer), such a check is also not necessary as std::map takes care of this already. From the std::map documentation: "If k does not match the key of any element in the container, the function inserts a new element with that key and returns a reference to its mapped value. Notice that this always increases the container size by one, even if no mapped value is assigned to the element (the element is constructed using its default constructor)." llvm-svn: 217506
* [AArch64] Pacify lld buildbot complaining about an unused static function in ↵Arnaud A. de Grandmaison2014-09-101-0/+2
| | | | | | release build. llvm-svn: 217505
* [AArch64] Add experimental PBQP supportArnaud A. de Grandmaison2014-09-106-2/+449
| | | | | | | | | | This adds target specific support for using the PBQP register allocator on the AArch64, for the A57 cpu. By default, the PBQP allocator is not used, unless explicitely required on the command line with "-aarch64-pbqp". llvm-svn: 217504
* [AArch 64] Use a constant pool load for weak symbol references whenAsiri Rathnayake2014-09-106-10/+73
| | | | | | | | | | | | | | using static relocation model and small code model. Summary: currently we generate GOT based relocations for weak symbol references regardless of the underlying relocation model. This should be change so that in static relocation model we use a constant pool load instead. Patch from: Keith Walker Reviewers: Renato Golin, Tim Northover llvm-svn: 217503
* Fix FreeBSD build after thread changesEd Maste2014-09-104-7/+8
| | | | | | | More work on the GetName/SetName arguments (thread_t vs tid_t) is needed but this change should restore the build and basic operation. llvm-svn: 217502
OpenPOWER on IntegriCloud