summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Modified gdb-remote tests to run with automatically-chosen ports.Todd Fiala2014-07-144-99/+131
| | | | | | | | | | | | Now that llgs supports communicating the 0-port choose-a-port mechanism and can communicate that back to a caller via the --named-pipe option (at parity with debugserver), we use this mechanism to always start llgs and debugserver gdb-remote protocol tests without needing to use some port arbitration mechanism. This eliminates some potential intermittent failures vs. the previous random port and collision-avoidance strategy used. llvm-svn: 212923
* Support lowering of empty aggregates.Bill Wendling2014-07-142-11/+42
| | | | | | | | | | | | | This crash was pretty common while compiling Rust for iOS (armv7). Reason - SjLj preparation step was lowering aggregate arguments as ExtractValue + InsertValue. ExtractValue has assertion which checks that there is some data in value, which is not true in case of empty (no fields) structures. Rust uses them quite extensively so this patch uses a 'select true, %val, undef' instruction to lower the argument. Patch by Valerii Hiora. llvm-svn: 212922
* [CMake] LINK_COMPONENTS: Add also corresponding MCTargetDesc and TargetInfo ↵NAKAMURA Takumi2014-07-141-0/+9
| | | | | | as well, when target names or "nativecodegen" are specified. llvm-svn: 212921
* [CMake] Update libdeps.NAKAMURA Takumi2014-07-1424-0/+33
| | | | llvm-svn: 212920
* [CMake] Reorder libdeps by alphabetical order.NAKAMURA Takumi2014-07-145-6/+6
| | | | llvm-svn: 212919
* NVPTX/LLVMBuild.txt: Add "Scalar" to required_libraries. It is really ↵NAKAMURA Takumi2014-07-141-1/+1
| | | | | | referenced. llvm-svn: 212918
* Object/LLVMBuild.txt: Sort required_libraries by alphabetical order.NAKAMURA Takumi2014-07-141-1/+1
| | | | llvm-svn: 212917
* Superficial fix for PR20218: binding a function lvalue to a const reference toRichard Smith2014-07-142-17/+50
| | | | | | | | | | | | | a function pointer is neither better nor worse than binding a function lvalue to a function rvalue reference. Don't get confused and think that both bindings are binding to a function lvalue (which would make the lvalue form win); the const reference is binding to an rvalue. The "real" bug in PR20218 is still present: we're getting the wrong answer from template argument deduction, and that's what leads us to this weird overload set. llvm-svn: 212916
* [DAGCombiner] Fix a crash caused by a missing check for legal type when ↵Andrea Di Biagio2014-07-132-1/+31
| | | | | | | | | | | | | | | | | | | | trying to fold shuffles. Verify that DAGCombiner does not crash when trying to fold a pair of shuffles according to rule (added at r212539): (shuffle (shuffle A, Undef, M0), Undef, M1) -> (shuffle A, Undef, M2) The DAGCombiner avoids folding shuffles if the resulting shuffle dag node is not legal for the target. That means, the resulting shuffle must have legal type and legal mask. Before, the DAGCombiner only called method 'TargetLowering::isShuffleMaskLegal' to check if it was "safe" to fold according to the above-mentioned rule. However, this caused a crash in the x86 backend since method 'isShuffleMaskLegal' always expects to be called on a legal vector type. llvm-svn: 212915
* MC: make MCWin64EHInstruction a POD-like structSaleem Abdulrasool2014-07-132-62/+57
| | | | | | | | | | | | | | | | This is the first of a number of changes designed to generalise MCWin64EHInstruction to support different target architectures. An ordered set (vector) of these instructions is saved per frame to permit the emission of information for Windows NT style unwinding. The only bit of information which is actually target specific here is the Opcode for the unwinding bytecode. The remainder of the information is simply generic information that is relevant to the Windows NT unwinding model. Remove the accessors for the fields, making them const and public instead. Sink the knowledge of the alias'ed name into the single source and sink a single-use check method into the use. llvm-svn: 212914
* MC: make helper function be more const-correctSaleem Abdulrasool2014-07-131-10/+7
| | | | | | | Introduce const-ness on parameters, they are used as read-only and should not be modified. NFC. llvm-svn: 212913
* MC: make DWARF and Windows unwinding handling more similarSaleem Abdulrasool2014-07-136-121/+112
| | | | | | | | Rename member variables and functions for the MCStreamer for DWARF-like unwinding management. Rename the Windows ones as well and make the naming and handling similar across the two. No functional change intended. llvm-svn: 212912
* Remove trailing spacesPavel Chupin2014-07-131-6/+6
| | | | llvm-svn: 212911
* Add forgotten `break` statement.Simon Atanasyan2014-07-131-0/+1
| | | | llvm-svn: 212910
* Add test cases for AArch64 hints codegenYi Kong2014-07-131-0/+8
| | | | llvm-svn: 212909
* [Mips] Support SHT_MIPS_ABIFLAGS section type flag in the llvm-readobj,Simon Atanasyan2014-07-1316-11/+66
| | | | | | obj2yaml and yaml2obj tools. llvm-svn: 212908
* [CMake] Enable loadable modules, aka plugins, with BUILD_SHARED_LIBS on cygming.NAKAMURA Takumi2014-07-131-2/+5
| | | | | | Loadable modules could be enabled without BUILD_SHARED_LIBS with tweaks in future. llvm-svn: 212907
* [CMake] Give explicit dependencies to a couple of modules, ↵NAKAMURA Takumi2014-07-132-0/+18
| | | | | | PrintFunctionNames and SampleAnalyzerPlugin, for Win32.DLL. llvm-svn: 212906
* PrintFunctionNames/CMakeLists.txt: Fix a comment.NAKAMURA Takumi2014-07-131-1/+1
| | | | llvm-svn: 212905
* [CMake] Add LLVM_LINK_COMPONENTS to loadable modules, LLVMHello and ↵NAKAMURA Takumi2014-07-132-0/+8
| | | | | | BugpointPasses, on Win32. llvm-svn: 212904
* [CMake] Introduce moddir for MODULE -- corresponding to ↵NAKAMURA Takumi2014-07-131-3/+18
| | | | | | | | | | LIBRARY_OUTPUT_DIRECTORY. On Win32.DLL, it points not lib but bin. LIBRARY_OUTPUT_DIRECTORY affects add_library(MODULE), especially Win32.DLL. llvm-svn: 212903
* bugpoint/ToolRunner.cpp: ProcessFailure(): Close ErrorFD immediately, or it ↵NAKAMURA Takumi2014-07-131-0/+8
| | | | | | | couldn't be reopened on Win32. FIXME: We may have an option in openFileForWrite(), not to use ResultFD but to close it. llvm-svn: 212902
* MS ABI: Stick internal vftables in a comdat if they have RTTI dataDavid Majnemer2014-07-132-7/+6
| | | | | | | | | | | | | | | Previously, we would have a private backing variable and an internal alias pointing at it. However, -fdata-sections only fires if a global variable has non-private linkage. This means that an unreferenced vftable wouldn't get discarded, bloating the object file. Instead, stick the backing variable in a comdat even if the alias has internal linkage. This will allow the linker to drop the vftable if it is unused. llvm-svn: 212901
* IR: Allow comdats to be applied to globals with internal linkageDavid Majnemer2014-07-133-5/+7
| | | | | | | | | | Our verifier check for checking if a global has local linkage was too strict. Forbid private linkage but permit local linkage. Object file formats permit this and forbidding it prevents elimination of unused, internal, vftables under the MSVC ABI. llvm-svn: 212900
* MC: Let non-temporary COFF aliases be in symtabDavid Majnemer2014-07-133-17/+27
| | | | | | | | | | | | | | MC was aping a binutils bug where aliases would default their linkage to private instead of internal. I've sent a patch to the binutils maintainers and they've recently applied it to the GNU assembler sources. This fixes PR20152. Differential Revision: http://reviews.llvm.org/D4395 llvm-svn: 212899
* Remove unused includeMatt Arsenault2014-07-131-1/+0
| | | | llvm-svn: 212898
* R600: Use range for and fix missing consts.Matt Arsenault2014-07-132-29/+20
| | | | llvm-svn: 212897
* R600: Make ShaderType privateMatt Arsenault2014-07-139-34/+45
| | | | llvm-svn: 212896
* R600: Run more tests with promote alloca disabled.Matt Arsenault2014-07-134-22/+57
| | | | | | | Re-run tests changed in r211110 to test both paths. Also fix broken check line. llvm-svn: 212895
* R600: Run private-memory test with and without alloca promoteMatt Arsenault2014-07-131-24/+33
| | | | | | | The unpromoted path still needs to be tested since we can't always promote to using LDS. llvm-svn: 212894
* R600: Add option to disable promote allocaMatt Arsenault2014-07-134-5/+24
| | | | | | | This can make writing some tests harder, so add a flag to disable it. llvm-svn: 212893
* tests: use a more precise target for testsSaleem Abdulrasool2014-07-121-2/+2
| | | | llvm-svn: 212892
* Headers: add hint intrinsics to arm_acle.hSaleem Abdulrasool2014-07-122-4/+30
| | | | | | | | This adds the ARM ACLE hint intrinsic wrappers to arm_acle.h. These need to be protected with a !defined(_MSC_VER) since MSVC (and thus clang in compatibility mode) provide these wrappers as proper builtin intrinsics. llvm-svn: 212891
* CodeGen: support hint intrinsics from ACLE on AArch64Saleem Abdulrasool2014-07-123-0/+69
| | | | | | | This adds support for the ACLE hint intrinsics on AArch64 similar to ARM. This is required to properly support ACLE on AArch64. llvm-svn: 212890
* Try to fix MSVC warning.Matt Arsenault2014-07-121-0/+8
| | | | llvm-svn: 212889
* Try to fix MSVC buildMatt Arsenault2014-07-121-1/+1
| | | | llvm-svn: 212888
* Improve comments of ARM ACLE header file and testsYi Kong2014-07-122-8/+16
| | | | | | Include section number in ARM ACLE specification for easier navigation. llvm-svn: 212887
* Try to fix MSVC buildMatt Arsenault2014-07-121-1/+1
| | | | llvm-svn: 212886
* Templatify DominanceFrontier.Matt Arsenault2014-07-128-212/+535
| | | | | | Theoretically this should now work for MachineBasicBlocks. llvm-svn: 212885
* Fix lldb-gdbserver build Ed Maste2014-07-121-1/+1
| | | | | | s_listen_thread had the wrong type. llvm-svn: 212884
* AArch64: add support for llvm.aarch64.hint intrinsicSaleem Abdulrasool2014-07-123-11/+89
| | | | | | | | | | | This adds a llvm.aarch64.hint intrinsic to mirror the llvm.arm.hint in order to support the various hint intrinsic functions in the ACLE. Add an optional pattern field that permits the subclass to specify the pattern that matches the selection. The intrinsic pattern is set as mayLoad, mayStore, so overload the value for the definition of the hint instruction. llvm-svn: 212883
* MC: remove use of unnecessary variableSaleem Abdulrasool2014-07-121-41/+27
| | | | | | | | | Due to the fact that the windows unwinding has the concept of chained frames, we maintain a current frame info pointer that is adjusted on any push and pop of a unwinding context. This just removes an unnecessary variable that was used to mirror the DWARF unwinding code. llvm-svn: 212882
* MC: rename MCW64UnwindInfo to MCWinFrameInfoSaleem Abdulrasool2014-07-125-31/+31
| | | | | | | | This structure contains information related to the call frame used to generate unwinding information. Rename this to reflect the future use to represent the shared state between various architectures for WinCFI information. llvm-svn: 212881
* [ELFYAML] Group ELF section type flags to target specific blocks.Simon Atanasyan2014-07-123-9/+31
| | | | | | Recognize only flags which correspond to the current target. llvm-svn: 212880
* llgs: modify to accept --native-regs flag.Todd Fiala2014-07-121-10/+13
| | | | | | | | | | | | | | | | This is the last flag sent by lldb-platform that was not accepted by llgs and is accepted by debugserver. Conditionalized out a bit more code in prep for Windows support one day based on _WIN32 define. Updated the lldb-gdbserver usage string to represent recent updates to command line arguments (and some older ones like --attach pid). Implements https://github.com/tfiala/lldb/issues/37 llvm-svn: 212879
* Add FreeBSD failure decorator for TestCallStopAndContinueEd Maste2014-07-121-0/+1
| | | | | | | | | | The testrun now completes successfully on my FreeBSD 11.0-CURRENT laptop. There are some intermittent failures on the FreeBSD buildbot still, which should be addressed in later commits. llvm.org/pr20274 llvm-svn: 212878
* Add FreeBSD decorator for TestMultipleDebuggersEd Maste2014-07-121-0/+1
| | | | | | llvm.org/pr20282 llvm-svn: 212877
* Fixed compilation errors in tests, enforce checking for errors in ↵Alexander Kornienko2014-07-123-8/+16
| | | | | | | | | | | | | | check_clang_tidy_fix.sh. Reviewers: sbenza, djasper Reviewed By: djasper Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D4480 llvm-svn: 212876
* Fix an issue with the MergeBasicBlockIntoOnlyPred() helper function where it didOwen Anderson2014-07-122-5/+5
| | | | | | | | | | not properly handle the case where the predecessor block was the entry block to the function. The only in-tree client of this is JumpThreading, which worked around the issue in its own code. This patch moves the solution into the helper so that JumpThreading (and other clients) do not have to replicate the same fix everywhere. llvm-svn: 212875
* Add nonnull in CodeGen for __attribute__((returns_nonnull))Hal Finkel2014-07-122-0/+8
| | | | | | | As a follow-up to r212835, also add the LLVM nonnull function attribute when __attribute__((returns_nonnull)) is provided. llvm-svn: 212874
OpenPOWER on IntegriCloud