summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix the JIT event listeners and replace the associated tests.Andrew Kaylor2015-01-097-604/+290
| | | | | | | | | | The changes to EventListenerCommon.h were contributed by Arch Robison. This fixes bug 22095. http://reviews.llvm.org/D6905 llvm-svn: 225554
* Update comment.Michael Zolotukhin2015-01-091-2/+2
| | | | llvm-svn: 225553
* SimplifyCFG: check uses of constant-foldable instrs in switch destinations ↵Hans Wennborg2015-01-092-6/+55
| | | | | | | | | | | (PR20210) The previous code assumed that such instructions could not have any uses outside CaseDest, with the motivation that the instruction could not dominate CommonDest because CommonDest has phi nodes in it. That simply isn't true; e.g., CommonDest could have an edge back to itself. llvm-svn: 225552
* [X86][SSE] Avoid vector byte shuffles with zero by using pshufb to create zerosSimon Pilgrim2015-01-092-124/+106
| | | | | | | | pshufb can shuffle in zero bytes as well as bytes from a source vector - we can use this to avoid having to shuffle 2 vectors and ORing the result when the used inputs from a vector are all zeroable. Differential Revision: http://reviews.llvm.org/D6878 llvm-svn: 225551
* Fix an ASAN failure introduced with r225537 (adding the -universal-headers ↵Kevin Enderby2015-01-091-5/+5
| | | | | | | | to llvm-obdump). And a fly by fix to some formatting issues with the same commit. llvm-svn: 225550
* Modify dotest.py to be able to run without an lldb build.Stephane Sezer2015-01-092-25/+34
| | | | | | | | | | | | Summary: This will ease llgs development a bit by not requiring an lldb/lldb.py build to launch the tests. Also, we can now use LLDB_DEBUGSERVER_PATH to point to a debug server to use to run the tests. I used that to point to a ds2 build and run llgs tests against ds2. Reviewers: clayborg, tfiala, vharron Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D6554 llvm-svn: 225549
* Fix issues with LLDB's interpreter and MS ABI guard variables.Zachary Turner2015-01-091-15/+7
| | | | | | | | | | | MS ABI guard variables end with @4IA, so this patch teaches the interpreter about that. Additionally, there was an issue with TurnGuardLoadIntoZero which was causing some guard uses of a variable to be missed. This fixes that by calling Instruction::replaceAllUsesWith() instead of trying to replicate that function. llvm-svn: 225547
* [sanitizer] use the right memory orderKostya Serebryany2015-01-091-1/+1
| | | | llvm-svn: 225546
* Add a testcase of llvm-lto error handling.Rafael Espindola2015-01-091-0/+4
| | | | llvm-svn: 225545
* Remove duplicating code. NFC.Michael Zolotukhin2015-01-091-2/+2
| | | | | | The removed condition is checked in the previous loop. llvm-svn: 225542
* Walter Brown sent a list of tests which needed 'additional includes' to ↵Marshall Clow2015-01-0969-0/+70
| | | | | | match what was in the standard. Added these includes to the tests. No changes to the library or test results. llvm-svn: 225541
* Change int32_t to uint32_t to fix warnings.Zachary Turner2015-01-091-1/+1
| | | | | | | | | | Variable was being declared as signed, but treated as unsigned at every point of use. Patch by Dan Sinclair Differential Revision: http://reviews.llvm.org/D6897 llvm-svn: 225540
* Change auto to size_t to fix warning.Zachary Turner2015-01-091-1/+1
| | | | | | | Patch by Dan Sinclair Differential Revision: http://reviews.llvm.org/D6899 llvm-svn: 225539
* Make the list of synthetic children thread safeEnrico Granata2015-01-093-15/+16
| | | | | | | | | | | | | I have been seeing a few crashes where LLDB tries to acquire a cached synthetic child by index, and crashes in the ClusterManager obtaining a shared_ptr for that ValueObject That kind of crash most often means that I am holding on to a raw pointer to a ValueObject that was let go from the cluster The main way that could happen is that the synthetic provider is being updated at the same time that some child is being accessed from the previous provider state This fixes the problem by making the children be stored in a thread-safe map Fixes rdar://18627964 llvm-svn: 225538
* Add the option, -universal-headers, used with -macho to print the Mach-O ↵Kevin Enderby2015-01-095-13/+230
| | | | | | universal headers to llvm-objdump. llvm-svn: 225537
* Re-reapply r221924: "[GVN] Perform Scalar PRE on gep indices that feed loads ↵Tim Northover2015-01-093-168/+231
| | | | | | | | | | | | | | | before doing Load PRE" It's not really expected to stick around, last time it provoked a weird LTO build failure that I can't reproduce now, and the bot logs are long gone. I'll re-revert it if the failures recur. Original description: Perform Scalar PRE on gep indices that feed loads before doing Load PRE. llvm-svn: 225536
* Fixed an issue where you couldn't delete a user defined regex, python, or ↵Greg Clayton2015-01-097-28/+182
| | | | | | | | | | | multi-word command by adding a new "command delete" command. This new command will delete user defined regular commands, but not aliases. We still have "command unalias" to remove aliases as they are currently in different buckets. Appropriate error messages are displayed to inform the user when "command unalias" is used on removable user defined commands that points users to the "command delete" command. Added a test to verify we can remove user defined commands and also verify that "command unalias" fails when used on a user defined command. <rdar://problem/18248300> llvm-svn: 225535
* Recommit r224935 with a fix for the ObjC++/AArch64 bug that that revisionLang Hames2015-01-0915-104/+83
| | | | | | | | | | introduced. A test case for the bug was already committed in r225385. Patch by Rafael Espindola. llvm-svn: 225534
* Parse: Don't crash when an annotation token shows up in a C++11 attrDavid Majnemer2015-01-092-3/+12
| | | | | | | It's not safe to blindly call getIdentifierInfo without checking the token is not an annotation token. llvm-svn: 225533
* [libc++] Refactor test components into modules.Dan Albert2015-01-096-631/+710
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: I've moved the bulk of `lit.cfg` into `test/libcxx/testconfig.py` and `test/libcxx/testformat.py`. All that remains in `lit.cfg` is the logic to discover lit.site.cfg if lit.cfg was run directly, and the logic for loading configuration variants. The configuration variant flow has changed with this patch. Rather than instantiating an object of type `<VARIANT>Configuration`, we now instatiate an object of type `Configuration` that was loaded from the module `<VARIANT>.testconfig.py`. This has to be done on a per-project basis rather than in LIT itself because LIT doesn't actually know where the real test directory is, only where the site configuration is (which is usually in the output directory). It's simple enough to do though, so it's fine to require each project to do it themselves. I also cleaned up all the pylint issues while I was here, which was mostly just a matter of fixing long lines. Reviewers: mclow.lists, jroelofs, EricWF Reviewed By: EricWF Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D6881 llvm-svn: 225532
* Revert "Bitcode: Move the DEBUG_LOC record to DEBUG_LOC_OLD"Duncan P. N. Exon Smith2015-01-094-4/+4
| | | | | | | | | | | | | | | This reverts commit r225498 (but leaves r225499, which was a worthy cleanup). My plan was to change `DEBUG_LOC` to store the `MDNode` directly rather than its operands (patch was to go out this morning), but on reflection it's not clear that it's strictly better. (I had missed that the current code is unlikely to emit the `MDNode` at all.) Conflicts: lib/Bitcode/Reader/BitcodeReader.cpp (due to r225499) llvm-svn: 225531
* Driver: tweak the code for determining default image nameHans Wennborg2015-01-093-9/+18
| | | | | | | | It seemed odd to have to make DefaultImageName be a mutable member of Driver. We don't need to the full result of computeTargetTriple() to determine the image name; just base it on DefaultTargetTriple. llvm-svn: 225530
* [mips] Add support for accessing $gp as a named register.Daniel Sanders2015-01-095-0/+76
| | | | | | | | | | | | | | | | | | | | | Summary: Mips Linux uses $gp to hold a pointer to thread info structure and accesses it with a named register. This makes this work for LLVM. The N32 ABI doesn't quite work yet since the frontend generates incorrect IR for this case. It neglects to truncate the 64-bit GPR to a 32-bit value before converting to a pointer. Given correct IR (as in the testcase in this patch), it works correctly. Reviewers: sstankovic, vmedic, atanasyan Reviewed By: atanasyan Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D6893 llvm-svn: 225529
* fix typos; remove names from comments; NFCSanjay Patel2015-01-091-51/+44
| | | | llvm-svn: 225528
* K-Ballo found a place where we were using 'V' as a template parameter. ↵Marshall Clow2015-01-091-2/+2
| | | | | | Replace with '_Vp' for protection against user-defined macros. llvm-svn: 225527
* remove names from comments; NFCSanjay Patel2015-01-091-40/+35
| | | | llvm-svn: 225526
* fix typos; NFCSanjay Patel2015-01-091-3/+3
| | | | llvm-svn: 225525
* fix typo; NFCSanjay Patel2015-01-091-1/+1
| | | | llvm-svn: 225524
* more efficient use of a dyn_cast; no functional change intendedSanjay Patel2015-01-091-3/+3
| | | | llvm-svn: 225523
* [PowerPC] Enable late partial unrolling on the POWER7Hal Finkel2015-01-094-0/+59
| | | | | | | | | | | | | | | | | | | | | | | | The P7 benefits from not have really-small loops so that we either have multiple dispatch groups in the loop and/or the ability to form more-full dispatch groups during scheduling. Setting the partial unrolling threshold to 44 seems good, empirically, for the P7. Compared to using no late partial unrolling, this yields the following test-suite speedups: SingleSource/Benchmarks/Adobe-C++/simple_types_constant_folding -66.3253% +/- 24.1975% SingleSource/Benchmarks/Misc-C++/oopack_v1p8 -44.0169% +/- 29.4881% SingleSource/Benchmarks/Misc/pi -27.8351% +/- 12.2712% SingleSource/Benchmarks/Stanford/Bubblesort -30.9898% +/- 22.4647% I've speculatively added a similar setting for the P8. Also, I've noticed that the unroller does not quite calculate the unrolling factor correctly for really tiny loops because it neglects to account for the fact that not every loop body replicant contains an ending branch and counter increment. I'll fix that later. llvm-svn: 225522
* [mips] Add comment which explains why we need to change the assembler ↵Toma Tabacu2015-01-091-0/+6
| | | | | | options before and after inline asm blocks. NFC. llvm-svn: 225521
* clang-tidy: [misc-use-override] Simplify regular expressions in test.Daniel Jasper2015-01-091-41/+41
| | | | | | No functional changes. llvm-svn: 225520
* clang-tidy: [misc-use-override] Fix 'override' insertion.Daniel Jasper2015-01-092-9/+28
| | | | | | | | | | Before: void f() __attribute__((override unused)) After: void f() override __attribute__((unused)) llvm-svn: 225519
* Sema: Don't crash when variable is redefined as a constexpr functionDavid Majnemer2015-01-092-1/+6
| | | | | | | | | We have a diagnostic describing that constexpr changed in C++14 when compiling in C++11 mode. While doing this, it examines the previous declaration and assumes that it is a function. However it is possible, in the context of error recovery, for this to not be the case. llvm-svn: 225518
* Assumption that "VectorizedValue" will always be an Instruction is not correct.Suyog Sarda2015-01-091-2/+1
| | | | | | | | | | | | | | | | | | | | It can be a constant or a vector argument. ex : define i32 @hadd(<4 x i32> %a) #0 { entry: %vecext = extractelement <4 x i32> %a, i32 0 %vecext1 = extractelement <4 x i32> %a, i32 1 %add = add i32 %vecext, %vecext1 %vecext2 = extractelement <4 x i32> %a, i32 2 %add3 = add i32 %add, %vecext2 %vecext4 = extractelement <4 x i32> %a, i32 3 %add5 = add i32 %add3, %vecext4 ret i32 %add5 } llvm-svn: 225517
* Add the shifted cursor position to XML output, so it can be used by editor ↵Manuel Klimek2015-01-091-0/+4
| | | | | | integrations. llvm-svn: 225516
* Fix test from my previous commitOlivier Goffart2015-01-091-2/+2
| | | | | | (I should have re-run the test after running clang-format) llvm-svn: 225515
* Parse: Don't crash when namespace is in GNU statement exprDavid Majnemer2015-01-095-16/+20
| | | | | | | | | | | Parser::ParseNamespace can get a little confused when it found itself inside a compound statement inside of a non-static data member initializer. Try to determine that the statement expression's scope makes sense before trying to parse it's contents. llvm-svn: 225514
* Fix crash in typo correction while correcting enum within a struct in COlivier Goffart2015-01-092-2/+15
| | | | llvm-svn: 225513
* Adjust test for the new 'distinct' metadata nodesTobias Grosser2015-01-092-5/+5
| | | | | | | 'distinct' was introduced in 225474. We now adjust the test cases to match for the additional 'distinct' marker. llvm-svn: 225512
* Sema: RecordDecl shouldn't have a FunctionDecl as a DeclDavid Majnemer2015-01-092-2/+13
| | | | | | | RecordDecls should have things like CXXMethodDecls or FriendDecls as a decl but not things like FunctionDecls. llvm-svn: 225511
* ARM: add support for R_ARM_ABS16Saleem Abdulrasool2015-01-092-0/+21
| | | | | | Add support for R_ARM_ABS16 relocation mapping. Addresses PR22156. llvm-svn: 225510
* test: add additional test for SVN r225507Saleem Abdulrasool2015-01-091-0/+2
| | | | | | | Add an additional test case to ensure that we generate the relocation even if the thumb target is used. llvm-svn: 225509
* Sema: Don't crash when specializing a global scope function in a classDavid Majnemer2015-01-092-1/+7
| | | | | | | | We assumed that class-scope specializations would result in a CXXMethodDecl for that class. However, globally qualified functions will result in normal FunctionDecls. llvm-svn: 225508
* ARM: add support for R_ARM_ABS8 relocationsSaleem Abdulrasool2015-01-092-0/+18
| | | | | | Add support for R_ARM_ABS8 relocation. Addresses PR22126. llvm-svn: 225507
* Sema: Remove some dead code from CreateNewFunctionDeclDavid Majnemer2015-01-091-3/+0
| | | | | | | The same code is already in Sema::ActOnFunctionDeclarator, the only caller of CreateNewFunctionDecl. llvm-svn: 225506
* Parse: Don't crash when trailing return type is missingDavid Majnemer2015-01-092-5/+11
| | | | | | | | | Sema::CheckParmsForFunctionDef can't cope with a null TypeSourceInfo. Don't let the AST contain the malformed lambda. This fixes PR22122. llvm-svn: 225505
* Driver: begin threading frontend support for SymbolRewriterSaleem Abdulrasool2015-01-096-0/+60
| | | | | | | | | | Allow blessed access to the symbol rewriter from the driver. Although the symbol rewriter could be invoked through tools like opt and llc, it would not accessible from the frontend. This allows us to read the rewrite map files in the frontend rather than the backend and enable symbol rewriting for actually performing the symbol interpositioning. llvm-svn: 225504
* RegisterCoalescer: Fix removeCopyByCommutingDef with subreg livenessMatthias Braun2015-01-092-1/+54
| | | | | | | | | The code that eliminated additional coalescable copies in removeCopyByCommutingDef() used MergeValueNumberInto() which internally may merge A into B or B into A. In this case A and B had different Def points, so we have to reset ValNo.Def to the intended one after merging. llvm-svn: 225503
* RegisterCoalescer: Some cleanup in removeCopyByCommutingDef(), NFCMatthias Braun2015-01-091-15/+19
| | | | llvm-svn: 225502
OpenPOWER on IntegriCloud