summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [modules] Remove some more unnecessary forwarding functions.Richard Smith2016-04-182-74/+43
| | | | llvm-svn: 266687
* Add debugging to the cache pruningMehdi Amini2016-04-181-4/+23
| | | | | From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 266686
* CachePruning: fix typo, we accumulate file size here, not timeMehdi Amini2016-04-181-1/+1
| | | | | From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 266685
* ARM: use a pseudo-instruction for cmpxchg at -O0.Tim Northover2016-04-189-8/+475
| | | | | | | | | | | | | | | | | The fast register-allocator cannot cope with inter-block dependencies without spilling. This is fine for ldrex/strex loops coming from atomicrmw instructions where any value produced within a block is dead by the end, but not for cmpxchg. So we lower a cmpxchg at -O0 via a pseudo-inst that gets expanded after regalloc. Fortunately this is at -O0 so we don't have to care about performance. This simplifies the various axes of expansion considerably: we assume a strong seq_cst operation and ensure ordering via the always-present DMB instructions rather than v8 acquire/release instructions. Should fix the 32-bit part of PR25526. llvm-svn: 266679
* Fix trip count calculation for parallel loops in runtimeJonathan Peyton2016-04-183-26/+109
| | | | | | | | | | | | | | | The trip count calculation was incorrect for loops with large bounds. For example, for(int i=-2,000,000,000; i < 2,000,000,000; i+=50000000), the trip count calculation had overflow (trying to calculate 2,000,000,000 + 2,000,000,000 with signed integers) and wasn't giving the right value. This patch fixes this error in the runtime by using unsigned integers instead. There is still a bug in the clang compiler component because it warns that there is overflow in the test case file when there isn't. This error isn't there for the Intel Compiler. So for now, the test case is designated as XFAIL. Differential Revision: http://reviews.llvm.org/D19078 llvm-svn: 266677
* Additional test for use-after-scopeKostya Serebryany2016-04-181-0/+14
| | | | | | | | | | | | Summary: Test that asan detects access to the dead variable captured by lambda. Reviewers: aizatsky, kcc Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D19238 llvm-svn: 266676
* Runtime support for untied tasksJonathan Peyton2016-04-182-2/+37
| | | | | | | | | | | Introduced a counter of parts of an untied task submitted for execution. The counter controls whether all parts of the task are already finished. The compiler should generate re-submission of partially executed untied task by itself before exiting of each task part except for the lexical last part. Differential Revision: http://reviews.llvm.org/D19026 llvm-svn: 266675
* Fix for pthread_setspecific (TLS and shutdown) problemJonathan Peyton2016-04-183-14/+20
| | | | | | | | | | | | | | | Some codes that use TLS fail intermittently because one thread tries to write TLS values after the TLS key has been destroyed by another thread. This happens when one thread executes library shutdown (and destroys TLS keys), while another thread starts to execute the TLS key destructor routine. Before this change, the kmp_init_runtime flag was checked before calling pthread_* TLS functions, but this flag is set to FALSE later than the destruction of the TLS keys, which leads to failure. The fix is to check kmp_init_gtid instead, as this flag is unset *before* the destruction of TLS keys. Differential Revision: http://reviews.llvm.org/D19022 llvm-svn: 266674
* [sanitizer-coverage] make sure coverage flags are not passed to clang if the ↵Kostya Serebryany2016-04-182-0/+3
| | | | | | driver thinks they are unused llvm-svn: 266673
* [sanitizer-coverage] better docs for -fsanitize-coverage=trace-bbKostya Serebryany2016-04-181-1/+17
| | | | llvm-svn: 266672
* [Hexagon] V60/HVX builtin definitions for clangKrzysztof Parzyszek2016-04-182-13/+3536
| | | | | | | | The builtins already exist in LLVM, but are not exposed to the C/C++ programmers. This patch adds all the information about the builtins needed for clang, as well as a test for all available intrinsics. llvm-svn: 266671
* [libFuzzer] warn if the corpus is emptyKostya Serebryany2016-04-182-1/+5
| | | | llvm-svn: 266670
* [X86][SSE] Test case for PR2585Simon Pilgrim2016-04-181-0/+32
| | | | llvm-svn: 266669
* Rename LocationNode -> SectionsCommand.Rui Ueyama2016-04-182-14/+14
| | | | | | | | They are called sections-command in the doc, so it is nice to keep it consistent with it. https://sourceware.org/binutils/docs/ld/SECTIONS.html#SECTIONS llvm-svn: 266668
* Remove redundant curly braces.Rui Ueyama2016-04-181-3/+3
| | | | llvm-svn: 266667
* Refactor LinkerScript::assignAddresses. NFC.Rui Ueyama2016-04-182-26/+22
| | | | llvm-svn: 266666
* [Orc] Explicitly delete RPC::SequenceNumberManager's copy-constructor andLang Hames2016-04-181-0/+3
| | | | | | | | | copy-assignment operator. MSVC is trying to synthesize these and failing. Hopefully explicitly deleting them will help. llvm-svn: 266665
* ensure lldbinline remembers .py extensionTodd Fiala2016-04-182-6/+20
| | | | | | | | | | | | | | | | | | This ensure lldbinline.test_file paths are tracked as .py files rather than .pyc files. Also, this change adds an assert to the test infrastructure if a filename that is not ending in .py is attempted to be added to the test events infrastructure where we track test results. See: http://reviews.llvm.org/D19215 Earlier revision reviewed by: Pavel Labath llvm-svn: 266664
* [Orc] Re-commit r266581 with fixes for MSVC, and format cleanups.Lang Hames2016-04-1812-464/+873
| | | | | | | | | | Fixes: (1) Removes constexpr (unsupported in MSVC) (2) Move constructors (remove explicitly defaulted ones) (3) <future> - Add warning suppression for MSVC. llvm-svn: 266663
* [X86][AVX] Added extra memory folding tests for D19228Simon Pilgrim2016-04-181-0/+25
| | | | llvm-svn: 266662
* try to make comments more meaningful; NFCSanjay Patel2016-04-181-9/+7
| | | | | | Retry r266541 without the range-based-for-loop-change that was wrong. llvm-svn: 266658
* [ValueTracking] Correct lit test comments. NFC.Chad Rosier2016-04-181-2/+2
| | | | llvm-svn: 266657
* Fix shared build of LLVMPasses.Marcin Koscielnicki2016-04-181-1/+1
| | | | | | | It's missing a dependency on Instrumentation (needed for llvm::InstrProfiling::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&)) llvm-svn: 266656
* Add missing dependency.Rafael Espindola2016-04-181-1/+1
| | | | llvm-svn: 266655
* [BPI] Consider deoptimize calls as "unreachable"Sanjoy Das2016-04-182-1/+26
| | | | | | | | | | | | | | Summary: Calls to @llvm.experimental.deoptimize are expected to "never execute", so optimize them as such. Reviewers: chandlerc Subscribers: junbuml, mcrosier, llvm-commits Differential Revision: http://reviews.llvm.org/D19095 llvm-svn: 266654
* lli: avoid global variables, use a local unique_ptr insteadMehdi Amini2016-04-181-24/+11
| | | | | | | There was issue with order of destruction in some cases. From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 266652
* [libFuzzer] add fresh openssl trophiesKostya Serebryany2016-04-181-1/+1
| | | | llvm-svn: 266649
* Block: Fix a crash when we have type attributes or qualifiers with omittedManman Ren2016-04-184-10/+104
| | | | | | | | | | | | return type. Emit a warning instead of crashing in IR generation. rdar://22762981 Differential Revision: http://reviews.llvm.org/D18567 llvm-svn: 266648
* [Hexagon] Define macros __HVX__ and __HVXDBL__ when appropriateKrzysztof Parzyszek2016-04-182-0/+32
| | | | llvm-svn: 266647
* [MSan] [PowerPC] Add loadable library name for testing.Marcin Koscielnicki2016-04-181-0/+4
| | | | | | Differential Revision: http://reviews.llvm.org/D19217 llvm-svn: 266646
* [Parser][ObjC] Make sure c++11 in-class initialization is done when theAkira Hatanaka2016-04-182-0/+19
| | | | | | | | | | | | | | | | | | | | constructor's definition is in an implementation block. Without this commit, ptr doesn't get initialized to null in the following code: struct S { S(); void *ptr = nullptr; }; @implementation I S::S() {} @end rdar://problem/25693624 llvm-svn: 266645
* Clarifying the wording of this diagnostic; it confused parameter and argument.Aaron Ballman2016-04-184-10/+11
| | | | llvm-svn: 266644
* NFC: unify clang / LLVM atomic orderingJF Bastien2016-04-183-110/+81
| | | | | | | | | | | | | This makes the C11 / C++11 *ABI* atomic ordering accessible from LLVM, as discussed in http://reviews.llvm.org/D18200#inline-151433 This re-applies r266574 which I had reverted in r266575. Depends on http://reviews.llvm.org/D18875 Original review: http://reviews.llvm.org/D18876 llvm-svn: 266641
* NFC: unify clang / LLVM atomic orderingJF Bastien2016-04-183-118/+160
| | | | | | | | | | | This makes the C11 / C++11 *ABI* atomic ordering accessible from LLVM, as discussed in http://reviews.llvm.org/D18200#inline-151433 This re-applies r266573 which I had reverted in r266576. Original review: http://reviews.llvm.org/D18875 llvm-svn: 266640
* Add missing new file for r266637Xinliang David Li2016-04-181-0/+204
| | | | llvm-svn: 266639
* Update InstrProf pass creator API referenceXinliang David Li2016-04-181-1/+1
| | | | llvm-svn: 266638
* Port InstrProfiling pass to the new pass managerXinliang David Li2016-04-1814-91/+55
| | | | | | Differential Revision: http://reviews.llvm.org/D18126 llvm-svn: 266637
* [CMake] Fix misleading error message in CMakeLists.txt.Eugene Zelenko2016-04-181-1/+1
| | | | | | Differential revision: http://reviews.llvm.org/D17117 llvm-svn: 266635
* [STATS] Remove timePair class and unused functionsJonathan Peyton2016-04-182-47/+0
| | | | llvm-svn: 266634
* [STATS] print Total_* stats on their own lineJonathan Peyton2016-04-181-1/+4
| | | | llvm-svn: 266633
* [X86][AVX] Added zero+blend vs vperm2f128 optsize tests cases (PR22984)Simon Pilgrim2016-04-181-0/+69
| | | | | | We should be trying to use vperm2f128 instead of zero+blend (if we're only the user of zero?) when optsize is enabled. llvm-svn: 266632
* Revert r266488.Easwaran Raman2016-04-181-1/+1
| | | | | | This goes with r266477 which has been reverted. llvm-svn: 266631
* Lanai: fix debug buildJF Bastien2016-04-181-1/+1
| | | | | | There's currently no raw_ostream &operator<<(SimpleValueType); provided by LLVM. It could be added by refactoring utils/TableGen/CodeGenTarget.cpp:getEnumName, but that's much more work than fixing the build. llvm-svn: 266627
* [AMDGPU] Add insert nops pass based on subtarget features instead of cl::optKonstantin Zhuravlyov2016-04-186-14/+118
| | | | | | | | | | | Also, - Skip pass if machine module does not have debug info - Minor comment changes - Added test Differential Revision: http://reviews.llvm.org/D19079 llvm-svn: 266626
* [ARM] predefines __ELF__ macro for arm-none-eabiWeiming Zhao2016-04-182-0/+7
| | | | | | | | | | | | Summary: predefines __ELF__ macro for arm-none-eabi Reviewers: silviu.baranga, rengolin Subscribers: aemerson, rengolin, cfe-commits Differential Revision: http://reviews.llvm.org/D19225 llvm-svn: 266625
* fix a race is the LLDB test suite results collectionTodd Fiala2016-04-184-6/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The race boiled down to this: If a test worker queue is able to run the test inferior and clean up before the dosep.py listener socket is spun up, and the worker queue is the last one (as would be the case when there's only one test rerunning in the rerun queue), then the test suite will exit the main loop before having a chance to process any test events coming from the test inferior or the worker queue job control. I found this race to be far more likely on fast hardware. Our Linux CI is one such example. While it will show up primarily during meta test events generated by a worker thread when a test inferior times out or exits with an exceptional exit (e.g. seg fault), it only requires that the OS takes longer to hook up the listener socket than it takes for the final test inferior and worker thread to shut down. See: http://reviews.llvm.org/D19214 reviewed by: Pavel Labath llvm-svn: 266624
* [X86][AVX] Renamed vperm2f128 test to make it quicker to reviewSimon Pilgrim2016-04-181-23/+23
| | | | | | missed one the first time round... llvm-svn: 266623
* SCoPValidator: Use SCEVTraversal to simplify SCEVInRegionDependencesTobias Grosser2016-04-181-101/+33
| | | | llvm-svn: 266622
* [X86][AVX] Renamed vperm2f128 tests to make it quicker to reviewSimon Pilgrim2016-04-181-79/+79
| | | | llvm-svn: 266621
* Reapply "[Coverage] Prevent detection of false instantiations in case of ↵Igor Kudrin2016-04-187-19/+102
| | | | | | | | | | | | | | | | | | macro expansion." The root of the problem was that findMainViewFileID(File, Function) could return some ID for any given file, even though that file was not the main file for that function. This patch ensures that the result of this function is conformed with the result of findMainViewFileID(Function). This commit reapplies r266436, which was reverted by r266458, with the .covmapping file serialized in v1 format. Differential Revision: http://reviews.llvm.org/D18787 llvm-svn: 266620
OpenPOWER on IntegriCloud