summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Generate targets for each lit suite.Chris Bieneman2015-03-182-0/+28
| | | | | | | | | | | | | | | | | | | Summary: This change makes CMake scan for lit suites and generate a target for each lit test suite. The targets follow the format check-<project>-<suite path>. For example: check-llvm-unit - Runs the LLVM unit tests check-llvm-codegen-arm - Runs the ARM codeine tests Note: These targets are not generated during multi-configuration generators (i.e. Xcode and Visual Studio) because target clutter impacts UI usability. Reviewers: chandlerc Subscribers: aemerson, llvm-commits Differential Revision: http://reviews.llvm.org/D8380 llvm-svn: 232671
* Revert "[X86][SSE] Avoid scalarization of v2i64 vector shifts" as itEric Christopher2015-03-183-41/+19
| | | | | | | | appears to have broken tests/bots. This reverts commit r232660. llvm-svn: 232670
* Try to fix the Makefile build.Zachary Turner2015-03-181-1/+1
| | | | | | | I deleted lldb-log.cpp, but the Makefile build lists this file explicitly, so it is removed in this patch. llvm-svn: 232669
* Don't load register data from memory. Greg Clayton2015-03-181-1/+1
| | | | llvm-svn: 232668
* Revert "Add a TargetMachine local MCRegisterInfo and MCInstrInfo so that"Eric Christopher2015-03-183-21/+11
| | | | | | | | Committed too early. This reverts commit r232666. llvm-svn: 232667
* Add a TargetMachine local MCRegisterInfo and MCInstrInfo so thatEric Christopher2015-03-183-11/+21
| | | | | | | they can be used without a subtarget in constructing subtarget independent passes. llvm-svn: 232666
* Revert "Migrate the AArch64 TargetRegisterInfo to its TargetMachine"Eric Christopher2015-03-188-52/+48
| | | | | | | | | as we don't necessarily need to do this yet - though we could move the base class to the TargetMachine as it isn't subtarget dependent. This reverts commit r232103. llvm-svn: 232665
* Use WinEHPrepare to outline SEH finally blocksReid Kleckner2015-03-182-41/+247
| | | | | | | | | | | No outlining is necessary for SEH catch blocks. Use the blockaddr of the handler in place of the usual outlined function. Reviewers: majnemer, andrew.w.kaylor Differential Revision: http://reviews.llvm.org/D8370 llvm-svn: 232664
* Fix cmake build.Rafael Espindola2015-03-181-1/+1
| | | | llvm-svn: 232663
* CMake: Disable ENABLE_EXPORTS for executables with MSVCReid Kleckner2015-03-188-7/+13
| | | | | | | | | | | | | | The MSVC linker won't produce a .lib file for an executable that doesn't export anything, and LLVM doesn't maintain dllexport annotations or .def files listing all C++ symbols. It also doesn't support exporting all symbols, like binutils ld. CMake 3.2 changed the Ninja generator to list both the .exe and .lib files as outputs of executable build targets. Ninja would always re-link executables with ENABLE_EXPORTS because the .lib output file was not present, and therefore the target was out of date. llvm-svn: 232662
* Fix use of uninitialized valued.Rafael Espindola2015-03-181-2/+3
| | | | | | Should bring the bots back. llvm-svn: 232661
* [X86][SSE] Avoid scalarization of v2i64 vector shiftsSimon Pilgrim2015-03-183-19/+41
| | | | | | | | | | | | Currently v2i64 vectors shifts (non-equal shift amounts) are scalarized, costing 4 x extract, 2 x x86-shifts and 2 x insert instructions - and it gets even more awkward on 32-bit targets. This patch separately shifts the vector by both shift amounts and then shuffles the partial results back together, costing 2 x shuffles and 2 x sse-shifts instructions (+ 2 movs on pre-AVX hardware). Note - this patch only improves the SHL / LSHR logical shifts as only these are supported in SSE hardware. Differential Revision: http://reviews.llvm.org/D8416 llvm-svn: 232660
* [Objdump] DumpBytes of uint8_t from ArrayRef<uint8_t> instead of char from ↵Colin LeMahieu2015-03-183-19/+13
| | | | | | StringRef. Removing reinterpret_casts. llvm-svn: 232659
* Add a default implementation of createObjectStreamer.Rafael Espindola2015-03-185-43/+20
| | | | | | | This removes duplicated code from backends that don't need to do anything fancy. llvm-svn: 232658
* [Hexagon] Use pseudo-instructions for true/false predicate valuesKrzysztof Parzyszek2015-03-182-22/+24
| | | | llvm-svn: 232657
* Revert "[Hexagon] Use pseudo-instructions for true/false predicate values"Krzysztof Parzyszek2015-03-181-6/+23
| | | | | | | | This reverts r232650. Missed a piece of code in the previous commit. llvm-svn: 232656
* Fix the Xcode build after the MIPS64 changesEnrico Granata2015-03-181-2/+17
| | | | llvm-svn: 232655
* [Objdump] Removing size limit on DumpBytes and changing to range based for loop.Colin LeMahieu2015-03-181-20/+7
| | | | llvm-svn: 232654
* Move lldb-log.cpp to core/Logging.cppZachary Turner2015-03-1852-68/+15
| | | | | | | | | So that we don't have to update every single #include in the entire codebase to #include this new header (which used to get included by lldb-private-log.h, we automatically #include "Logging.h" from within "Log.h". llvm-svn: 232653
* TableGen: Fix register class lane masks being too conservative.Matthias Braun2015-03-182-1/+30
| | | | | | | | | | | | | | When calculating the lanemask of a register class we have to include the masks of subregisters supported by any of the class members, not just the ones supported by all class members. This fixes problems when coalescing towards a subclass with additional subregisters available. The attached testcase works fine as is, but does crash if you enable subregister liveness on x86 without this change applied. llvm-svn: 232652
* Handle X86::reloc_riprel_4byte in 32 bits mode.Rafael Espindola2015-03-182-0/+5
| | | | | | | | We can get there with .code64. Fixes pr22349. llvm-svn: 232651
* [Hexagon] Use pseudo-instructions for true/false predicate valuesKrzysztof Parzyszek2015-03-181-23/+6
| | | | llvm-svn: 232650
* Always add some fake threads with x86_64 registers no matter what the ↵Greg Clayton2015-03-181-28/+24
| | | | | | architecture since this is just for testing that we can add new threads with completely different registers contexts to a process. llvm-svn: 232649
* Fix linking of unit tests via CMake on Windows.Zachary Turner2015-03-1813-270/+158
| | | | | | | A previous attempt to make the unit tests link properly on Linux broke it for Windows. This patch fixes it for both platforms. llvm-svn: 232648
* Use utils/update_llc_test_checks.py to update all CHECKsSanjay Patel2015-03-181-448/+1384
| | | | | | | | The checks here were so vague that we could nuke intrinsics from existence and still pass the test because we'd match the function name. llvm-svn: 232647
* PECOFF: Do not copy all undefined symbols to a set. NFC.Rui Ueyama2015-03-181-12/+8
| | | | llvm-svn: 232646
* [Hexagon] Intrinsics for circular and bit-reversed loads and storesKrzysztof Parzyszek2015-03-1811-6/+1306
| | | | llvm-svn: 232645
* fixed to test features, not CPU modelSanjay Patel2015-03-181-4/+5
| | | | | | | | | | | | The 'vmovntdq' was only passing due to a fluke in SandyBridge codegen that splits 32-byte stores in half, but that meant that the test was not correctly checking for the 32-byte store that we thought we were generating. The lax checking in this file will be addressed in another commit. There are bigger problems here. llvm-svn: 232644
* [Hexagon] Handle ENDLOOP0 in InsertBranch and RemoveBranchKrzysztof Parzyszek2015-03-182-20/+30
| | | | llvm-svn: 232643
* [ARM] Remove XFAIL from passing RT testRenato Golin2015-03-181-1/+0
| | | | | | | | | This test started passing without warning, so in theory, we shouldn't mark is as XPASS, but the buildbots are red and there's been an uncaught regression meanwhile. Since it's passing on {ARM,Thumb2} x {NEON,VFPv3}, I'll risk future failures for the benefit of getting the bots green again. llvm-svn: 232642
* Provide std::abs(<floating-point>) in <cmath> on Solaris.Eric Fiselier2015-03-181-0/+4
| | | | | | | | | | | | | | | | 1) <cstdlib> header should define std::abs([int|long|long long]) functions. They use "using ::abs" to import these functions (which are declared in <stdlib.h>) into std namespace. 2) <cmath> header should define std::abs([float|double|long double]) function. If we try define new functions in std namespace, then it will cause compile error in <cstdlib> because "using ::abs" will try import not only [int|long|long long] functions, but also [float|double|long double] which are defined in <math.h> header on solaris. Patch by C Bergstrom. llvm-svn: 232641
* Skip intermittently failing test on FreeBSDEd Maste2015-03-181-0/+1
| | | | | | | | It is already skipped on the other platforms anyhow. llvm.org/pr19246 llvm-svn: 232640
* Remove unused parameter.Rui Ueyama2015-03-181-7/+3
| | | | llvm-svn: 232639
* Appease clang/test/Parser/opencl-atomics-cl20.cl for 32-bit targets with ↵NAKAMURA Takumi2015-03-181-3/+3
| | | | | | explicit triple. llvm-svn: 232638
* Add support for .ifnes psuedo-op.Sid Manning2015-03-183-10/+61
| | | | llvm-svn: 232636
* clang-format: Fix bad wrapping after "*" introduced in r232044.Daniel Jasper2015-03-182-3/+7
| | | | | | | | | | | | Before: void aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(aaaaaaaaaaaaaaaaaaaaaaaaa* const aaaaaaaaaaaa) {} After: void aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa( aaaaaaaaaaaaaaaaaaaaaaaaa* const aaaaaaaaaaaa) {} llvm-svn: 232635
* Convert open options for POSIX open on target platform.Robert Flack2015-03-182-3/+3
| | | | | | | | | | | | | | | | | | | | This moves the conversion of the open options to the target platform. On mac fcntl.h has different values for O_CREAT and O_TRUNC than on linux so by transmitting the standardized lldb open options we can correctly convert them on the target platform. Test Plan: On linux: lldb-server p --listen *:1234 On mac: lldb platform select remote-linux platform connect connect://ip-of-linux-box:1234 target create ~/path/to/linux/binary b main process launch Binary is successfully pushed to linux remote, process successfully launches and break in the main method. Differential Revision: http://reviews.llvm.org/D8395 llvm-svn: 232634
* Fix comment in tools/lldb-mi/MIDriver.cppIlia K2015-03-181-1/+1
| | | | llvm-svn: 232633
* [clang-format] Add missing test for std::function<void( int, int )>Daniel Jasper2015-03-181-9/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | spacing also fixed by r230473. The fix in r230473 was done to enable fixing the spacing for std::function<void( int, int )>. I did not realized that it also fixed this issue. Since it is fairly different from Deleted &operator=(const Deleted &)& = default; fixed in r230473, it seems sensible to add the regression test for it. Also cleaned up the test by removing duplicated code and comment, and kept repeated test set consistent. Result of running the new tests with r230473 backed out: [ RUN ] FormatTest.ConfigurableSpacesInParentheses Actual: "std::function<void(int, int)> callback;" Expected: "std::function<void( int, int )> callback;" Actual: "std::function<void( int, int )> callback;" Expected: "std::function<void(int, int)> callback;" Actual: "std::function<void( int, int ) > callback;" Expected: "std::function<void(int, int)> callback;" [ FAILED ] FormatTest.ConfigurableSpacesInParentheses (402 ms) Result of new tests with r230473: [ RUN ] FormatTest.ConfigurableSpacesInParentheses [ OK ] FormatTest.ConfigurableSpacesInParentheses (209 ms) Review: http://reviews.llvm.org/D7922 Patch by Jean-Philippe Dufraigne. Thanks! llvm-svn: 232632
* OpenCL: CL2.0 atomic typesAnastasia Stulova2015-03-186-8/+120
| | | | | | | | | | | | OpenCL C Spec v2.0 Section 6.13.11 - Made c11 _Atomic being not accepted for OpenCL - Implemented CL2.0 atomics by aliasing them to the corresponding c11 atomic types using implicit typedef - Added diagnostics for atomics Khronos extension enabling llvm-svn: 232631
* clang-format these lines to fix Visual C++ warning.Yaron Keren2015-03-181-2/+2
| | | | | | | | | | | | Visual C++ 2013 complains "warning C4138: '*/' found outside of comment" about the code CallInst */*CI*/ but compiles OK. clang-formatting these lines adds an extra space and makes Visual C++ satisfied. llvm-svn: 232630
* Change test to accept an additional critical edge split.Daniel Jasper2015-03-181-2/+1
| | | | | | | | The two hot blocks are right next to each other and I verified that there is no performance regression by compressing/uncompressing some files with a minigzip built with the different options. llvm-svn: 232629
* [ARM] Align stack objects passed to memory intrinsicsJohn Brawn2015-03-186-21/+337
| | | | | | | | | | | | Memcpy, and other memory intrinsics, typically tries to use LDM/STM if the source and target addresses are 4-byte aligned. In CodeGenPrepare look for calls to memory intrinsics and, if the object is on the stack, 4-byte align it if it's large enough that we expect that memcpy would want to use LDM/STM to copy it. Differential Revision: http://reviews.llvm.org/D7908 llvm-svn: 232627
* Add missing newline to end of test file.John Brawn2015-03-181-1/+1
| | | | llvm-svn: 232626
* Parse .note.android.ident header from elf filesTamas Berghammer2015-03-181-1/+15
| | | | | | | | | | | In android a .note.android.ident section header is added to the elf files to provide information for the debuggers that it is an android specific module. This CL add logic to parse it out from the elf files and set the module specification based on it. Differential revision: http://reviews.llvm.org/D8377 llvm-svn: 232625
* Fix another ternary Visual C++ is OK wiht but gcc not.Yaron Keren2015-03-181-1/+1
| | | | llvm-svn: 232624
* Fix gcc ambiguity error (Visual C++ was OK with these).Yaron Keren2015-03-181-3/+3
| | | | llvm-svn: 232623
* Remove many superfluous SmallString::str() calls.Yaron Keren2015-03-1844-128/+126
| | | | | | | | | | | | | | | Now that SmallString is a first-class citizen, most SmallString::str() calls are not required. This patch removes a whole bunch of them, yet there are lots more. There are two use cases where str() is really needed: 1) To use one of StringRef member functions which is not available in SmallString. 2) To convert to std::string, as StringRef implicitly converts while SmallString do not. We may wish to change this, but it may introduce ambiguity. llvm-svn: 232622
* Make lldb-mi handle only MI commandsHafiz Abid Qadeer2015-03-186-277/+5
| | | | | | | | | | | | | | | | | | | | | Summary: Previously lldb-mi can also act as a driver like normal lldb. It needed a lot of redundant code in the lldb-mi for that. I think that if a user wants command line lldb driver then he/she should use the lldb for it. This change will cleanup the code a lot. When this change goes in, it will allow us to remove some more redundant code too. All tests pass on Linux. Did some sanity testing on command line and with eclipse. Reviewers: ki.stfu Reviewed By: ki.stfu Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D8381 llvm-svn: 232621
* Fix a typo in EmulateInstructioinMIPS64Pavel Labath2015-03-181-1/+1
| | | | llvm-svn: 232620
OpenPOWER on IntegriCloud