summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* [codeview] Move dumper into lib/DebugInfo/CodeViewReid Kleckner2016-05-058-813/+949
| | | | | | So that we can call it from llvm-pdbdump. llvm-svn: 268580
* [clang-tidy] Improve -warnings-as-errors tests.Alexander Kornienko2016-05-053-4/+20
| | | | llvm-svn: 268579
* [LoopDataPrefetch] Add optimization remarkAdam Nemet2016-05-052-1/+84
| | | | | | | With -Rpass=loop-data-prefetch, show the memory access that got prefetched. llvm-svn: 268578
* Revert "[SimplifyCFG] propagate branch metadata when creating select"Vitaly Buka2016-05-042-67/+22
| | | | | | | | | | | | MemorySanitizer: use-of-uninitialized-value 0x4910e47 in count /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/include/llvm/Support/MathExtras.h:159:12 0x4910e47 in countLeadingZeros<unsigned long> /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/include/llvm/Support/MathExtras.h:183 0x4910e47 in FitWeights /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/lib/Transforms/Utils/SimplifyCFG.cpp:855 0x4910e47 in SimplifyCondBranchToCondBranch /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/lib/Transforms/Utils/SimplifyCFG.cpp:2895 This reverts commit 609f4dd4bf3bc735c8c047a4d4b0a8e9e4d202e2. llvm-svn: 268577
* Revert "[SystemZ] Implement backchain attribute."Marcin Koscielnicki2016-05-043-130/+4
| | | | | | | | This reverts commit rL268571. It caused failures in register scavenger. llvm-svn: 268576
* [SystemZ] Add -mbackchain option.Marcin Koscielnicki2016-05-048-0/+40
| | | | | | | | | This option, like the corresponding gcc option, is SystemZ-specific and enables storing frame backchain links, as specified in the ABI. Differential Revision: http://reviews.llvm.org/D19891 llvm-svn: 268575
* XFail TestEnumTypes.py on WindowsAdrian McCarthy2016-05-042-7/+8
| | | | | | Differential Revision: http://reviews.llvm.org/D19943 llvm-svn: 268574
* XFail TestLambdas.py on Windows after fixing some of the problemsAdrian McCarthy2016-05-044-12/+24
| | | | | | | | | | | | | | 1. Fixed semicolon placement in the lambda in the test itself. 2. Fixed lldbinline tests in general so that we don't attempt tests on platforms that don't use the given type of debug info. (For example, no DWO tests on Windows.) This fixes one of the two failures on Windows. (TestLambdas.py was the only inline test that wasn't XFailed or skipped on Windows.) 3. Set the error string in IRInterpreter::CanInterpret so that the caller doesn't print (null) instead of an explanation. I don't entirely understand the error, so feel free to suggest a better wording. 4. XFailed the test on Windows. The interpreter won't evaluate the lambda because the module has multiple function bodies. I don't exactly understand why that's a problem for the interpreter nor why the problem arises only on Windows. Differential Revision: http://reviews.llvm.org/D19606 llvm-svn: 268573
* [SystemZ] Implement llvm.get.dynamic.area.offsetMarcin Koscielnicki2016-05-044-0/+57
| | | | | | | | To be used for AddressSanitizer. Differential Revision: http://reviews.llvm.org/D19817 llvm-svn: 268572
* [SystemZ] Implement backchain attribute.Marcin Koscielnicki2016-05-043-4/+130
| | | | | | | | | | This introduces a SystemZ-specific "backchain" attribute on function, which enables writing the frame backchain link as specified by the ABI. This will be used to implement -mbackchain option in clang. Differential Revision: http://reviews.llvm.org/D19889 llvm-svn: 268571
* Revert "[SCCP] Throw away dead code. NFC."Davide Italiano2016-05-041-0/+3
| | | | | | This reverts commit r268568, as it broke the bots. llvm-svn: 268570
* Make --reproduce to not produce undesired whitespace.Rui Ueyama2016-05-042-5/+15
| | | | | | Fixes bug 27648. llvm-svn: 268569
* [SCCP] Throw away dead code. NFC.Davide Italiano2016-05-041-3/+0
| | | | llvm-svn: 268568
* [X86] Add a few register classes for x32 address accesses.Quentin Colombet2016-05-043-7/+24
| | | | | | | | | | | | The new register classes allow to tell the machine verifier that it is fine to use RIP for address accesses in x32 mode. Prior to that patch, we would complain that we are using a GR64 in place of GR32, whereas it is actually fine to use GR64 for x32 as long as the 32 high bits are 0s. RIP has this property and is used for RIP-relative addressing. This partially fixes http://llvm.org/PR27481. llvm-svn: 268567
* Unblock the windows buildbot.Greg Clayton2016-05-041-0/+1
| | | | llvm-svn: 268566
* [ELF][MIPS] Create combined dynamic relocation type ↵Simon Atanasyan2016-05-042-2/+75
| | | | | | | | | | R_MIPS_REL32/R_MIPS_64/R_MIPS_NONE MIPS N64 ABI packs multiple relocations into the single relocation record. Particularly it requires to represent dynamic relative relocation as a combination of R_MIPS_REL32 and R_MIPS_64 relocations. llvm-svn: 268565
* clean up; NFCISanjay Patel2016-05-041-15/+15
| | | | llvm-svn: 268564
* Don't let two threads call Debugger::Clear simultaneously.Greg Clayton2016-05-042-24/+40
| | | | | | | | We don't want a mutex in debugger as it will cause A/B locking issues with the lldb_private::Target's mutex, but we do need to stop two threads from doing Debugger::Clear at the same time. We have seen issues with this with the C++ global destructor chain where the global debugger list is being destroyed and the Debugger::~Debugger() is calling it while another thread was in the middle of running that function. <rdar://problem/26098913> llvm-svn: 268563
* Fixed a missing break and fixed spacing.Greg Clayton2016-05-041-22/+23
| | | | llvm-svn: 268562
* [SelectionDAG] BITREVERSE vector legalization of bit operations (REAPPLIED)Simon Pilgrim2016-05-043-11965/+1529
| | | | | | | | Some vector bit operations are promoted instead of having custom lowering. This patch changes the isOperationLegalOrCustom tests for vector AND/OR operations to use a new TLI helper isOperationLegalOrCustomOrPromote instead, allowing the SSE implementations to stay on the simd unit. Differential Revision: http://reviews.llvm.org/D19805 llvm-svn: 268561
* Spelling and grammar corrections in comments.Eric Christopher2016-05-042-16/+16
| | | | llvm-svn: 268560
* Intentionally leak the ASTSourceMap instead of destroying it when LLDB quits.Sean Callanan2016-05-041-2/+3
| | | | | | <rdar://problem/25959792> llvm-svn: 268559
* Don't produce relative relocs to ro segments.Rafael Espindola2016-05-043-13/+30
| | | | | | | | | We were already checking for non relative relocations. If we ever decide to add support for rw text segments this means we will have a single spot to add the flag. llvm-svn: 268558
* "Reapply r268521 "[InstCombine] Canonicalize icmp instructions based on ↵Balaram Makam2016-05-045-2/+189
| | | | | | | | | dominating conditions."" This reapplies commit r268521, that was reverted in r268530 due to a test failure in select-implied.ll Modified the test case to reflect the new change. llvm-svn: 268557
* Rename isRelRelative.Rafael Espindola2016-05-041-3/+4
| | | | | | What it is computing is if we need a dynamic relocation or not. llvm-svn: 268556
* [clang-tidy] Apply NOLINT filtering to Clang warnings.Alexander Kornienko2016-05-042-16/+32
| | | | llvm-svn: 268555
* Use early return. NFC.Rafael Espindola2016-05-041-47/+48
| | | | llvm-svn: 268554
* Add the Pure attribute to C99 builtin functions from ctype.h. This is a ↵Aaron Ballman2016-05-047-277/+429
| | | | | | | | corrected version of r266199 with test case fixes. Patch by Taewook Oh. llvm-svn: 268553
* Fix build of DebugInfoPDBTests.Zachary Turner2016-05-041-0/+1
| | | | | | Missing a using statement. llvm-svn: 268552
* Handle errors on file opening as soft error.Rui Ueyama2016-05-041-3/+6
| | | | | | | | Also improves the error message. Previously it would just print out the cause (e.g. "permission denied"). Now it prints out something like "--reproduce: failed to open foo.cpio: permission denied". llvm-svn: 268551
* [SimplifyCFG] propagate branch metadata when creating selectSanjay Patel2016-05-042-22/+67
| | | | | | | | | Unlike earlier similar fixes, we need to recalculate the branch weights in this case. Differential Revision: http://reviews.llvm.org/D19674 llvm-svn: 268550
* [AArch64] Add cheap as move instructions for Exynos M1Evandro Menezes2016-05-041-2/+33
| | | | llvm-svn: 268549
* Fix the doc extraction script to work with hasAnyName and with equalsNode.Samuel Benzaquen2016-05-042-6/+37
| | | | | | | | | The change from llvm::VariadicFunction to internal::VariadicFunction broke the extraction of hasAnyName(). equalsNode was broken because the argument type is 'const XXXX*' and the internal space caused a failure on the regex. llvm-svn: 268548
* [libFuzzer] print stats after running individual inputsKostya Serebryany2016-05-043-2/+7
| | | | llvm-svn: 268547
* Update for llvm change to add pdb namespace.Zachary Turner2016-05-045-44/+50
| | | | | | | r268544 moves all PDB reading code into a pdb namespace, so LLDB needs to be updated to take this into account. llvm-svn: 268545
* Move pdb code into pdb namespace.Zachary Turner2016-05-04121-89/+277
| | | | llvm-svn: 268544
* Removing some trailing whitespaceEric Fiselier2016-05-042-2/+2
| | | | llvm-svn: 268543
* Don't depend on dynamic relocatinos in ro sections.Rafael Espindola2016-05-0413-56/+63
| | | | | | | | Currently we don't check when creating relative relocations if the section is read only or not. I am about to fix that, so first update the patches that depend on the current behavior. llvm-svn: 268542
* fix docsKostya Serebryany2016-05-041-0/+1
| | | | llvm-svn: 268541
* document -f[no-]sanitize-recover=all and mention it in warning messagesKostya Serebryany2016-05-043-4/+7
| | | | llvm-svn: 268540
* [AArch64] Use the reciprocal estimation machineryEvandro Menezes2016-05-047-3/+339
| | | | | | | This patch adds support for estimating the square root, its reciprocal and division or reciprocal using the combiner generic reciprocal machinery. llvm-svn: 268539
* Split a testcase.Rafael Espindola2016-05-042-59/+110
| | | | | | | I will make changes to the -shared side and this reduces the noise in the other patch. llvm-svn: 268538
* cmake: Prefix Polly options with LLVM_ to avoid variable shadowingTobias Grosser2016-05-041-12/+20
| | | | | | | | | | | | | | | | | | | | | | | | Summary: Before this change certain Polly variables have been used both as user-facing CACHED cmake variables as well as uncached internal variables. Even though this seems to have worked OK in practice, the behavior only worked due to one variable shadowing the other. This behavior has been found confusing. To make the use of cmake variables more clear we now prefix the cached, user facing variables with LLVM_ as it is common habit for LLVM options and also moved the _POLLY_ term to the beginning to ensure related options are sorted after each other. The variables that control the behavior of LLVM/Polly are then set by forwarding the values set in the user facing option variables. As a result, Polly is now enabled with LLVM_POLLY_BUILD instead of BUILD_POLLY and the linking behavior of Polly is controlled with LLVM_POLLY_LINK_INTO_TOOLS instead of LINK_POLLY_INTO_TOOLS. Reviewers: bogner, Meinersbur Subscribers: pollydev, llvm-commits Differential Revision: http://reviews.llvm.org/D19907 llvm-svn: 268537
* Revert r268529 because it caused use-of-uninitialized-valueVitaly Buka2016-05-042-211/+6
| | | | | | | | | | | | | | | | | | | | | | Summary: This reverts commit d88cc0862bf7da64850b89e9bb5ea9f95e7f1184. #0 0xfed467 in llvm::ARMFrameLowering::determineCalleeSaves(llvm::MachineFunction&, llvm::BitVector&, llvm::RegScavenger*) const /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/lib/Target/ARM/ARMFrameLowering.cpp:1625:52 #1 0x330d4cc in (anonymous namespace)::PEI::runOnMachineFunction(llvm::MachineFunction&) /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/lib/CodeGen/PrologEpilogInserter.cpp:186:3 #2 0x3193e12 in llvm::MachineFunctionPass::runOnFunction(llvm::Function&) /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/lib/CodeGen/MachineFunctionPass.cpp:60:13 #3 0x396237d in llvm::FPPassManager::runOnFunction(llvm::Function&) /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/lib/IR/LegacyPassManager.cpp:1526:23 #4 0x3962a23 in llvm::FPPassManager::runOnModule(llvm::Module&) /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/lib/IR/LegacyPassManager.cpp:1547:16 #5 0x3963d52 in runOnModule /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/lib/IR/LegacyPassManager.cpp:1603:23 #6 0x3963d52 in llvm::legacy::PassManagerImpl::run(llvm::Module&) /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/lib/IR/LegacyPassManager.cpp:1706 #7 0x6bb910 in compileModule(char**, llvm::LLVMContext&) /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/tools/llc/llc.cpp:412:5 #8 0x6b3c25 in main /mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm/tools/llc/llc.cpp:218:22 #9 0x7fd4a7d37ec4 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21ec4) #10 0x625c93 in _start (/mnt/b/sanitizer-buildbot2/sanitizer-x86_64-linux-bootstrap/build/llvm_build_msan/bin/llc+0x625c93) Reviewers: Subscribers: llvm-svn: 268536
* [codeview] Add a type visitor to help abstract away type stream handlingReid Kleckner2016-05-047-498/+697
| | | | | | | | | | | | | | | | | | Summary: Port the dumper in llvm-readobj over to it. I'm planning to use this visitor to power type stream merging. While we're at it, try to switch from StringRef to ArrayRef<uint8_t> in some places. Reviewers: zturner, amccarth Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D19899 llvm-svn: 268535
* [ConstantFold] Don't try to strip fp -> int bitcasts to simplify icmpsHal Finkel2016-05-042-0/+56
| | | | | | | | | | | | | ConstantFold has logic to take icmp (bitcast x to y), null and strip the bitcast. This makes sense in general, but not if x has floating-point type. In this case, we'd need a fcmp, not an icmp, and the code will assert. We normally don't see this situation because we constant fold fp -> int bitcasts, however, we'll see it for bitcasts of ppc_fp128 -> i128. This is because that bitcast is Endian-dependent, and as a result, we don't simplify it in ConstantFold (we could, but no one has yet added the necessary logic). Regardless, ConstantFold should not depend on that canonicalization for correctness. llvm-svn: 268534
* [x86] add tests to show current codegen for obscured fneg/fabsSanjay Patel2016-05-041-0/+50
| | | | llvm-svn: 268533
* [CodeGenObjCXX] Fix handling of blocks in lambda.Akira Hatanaka2016-05-042-26/+47
| | | | | | | | | | | This fixes a crash that occurs when a block captures a reference that is captured by its enclosing lambda. rdar://problem/18586651 Differential Revision: http://reviews.llvm.org/D19536 llvm-svn: 268532
* [MSan] [Mips64] Add tests for vararg handling.Marcin Koscielnicki2016-05-042-0/+85
| | | | | | Differential Revision: http://reviews.llvm.org/D19919 llvm-svn: 268531
* Revert "[InstCombine] Canonicalize icmp instructions based on dominating ↵Balaram Makam2016-05-044-185/+0
| | | | | | | | conditions." This reverts commit 573a40f79b35cf3e71db331bb00f6a84f03b835d. llvm-svn: 268530
OpenPOWER on IntegriCloud