summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [IRCE] Switch over to LLVM_DUMP_METHOD. NFCI.Davide Italiano2016-08-181-2/+1
| | | | llvm-svn: 279079
* [ARM] Correct ARMv8*-A optional extension definitions in TargetParserRichard Barton2016-08-182-6/+5
| | | | | | | | | | | | | | | | | | | | | The ARMv8*-A descriptions in the ARM and AArch64 TargetParsers are incorrect architecturally and mismatched to the backend descriptions. RAS is an optional extension to ARMv8-A and ARMv8.1-A and mandatory in ARMv8.2-A. Correct the ARMTargetParser descriptions which had this as enabled by default in the earlier versions. The FP16 and SPE extensions are optional in ARMv8.2-A and the backend defaults them as off. They are not available as extensions to earlier ARMv8-A versions. Correct the AArch64TargetParser which had these as enabled by default in all ARMv8-A definitions. These macros are only used to define preprocessor macros. There are no macros yet as ACLE has not caught up with ARMv8.2-A so not possible to add a test. Differential Revision: https://reviews.llvm.org/D23500 llvm-svn: 279078
* [InstCombine] use m_APInt to allow icmp (mul X, Y), C folds for splat ↵Sanjay Patel2016-08-182-21/+15
| | | | | | | | | | | | constant vectors This is a sibling of: https://reviews.llvm.org/rL278859 https://reviews.llvm.org/rL278935 https://reviews.llvm.org/rL278945 https://reviews.llvm.org/rL279066 llvm-svn: 279077
* [libclang] Add clang_getAllSkippedRanges functionCameron Desrochers2016-08-183-2/+116
| | | | | | | | | | This complements the clang_getSkippedRanges function which returns skipped ranges filtered by a specific file. This function is useful when all the ranges are desired (and a lot more efficient than the equivalent of asking for the ranges file by file, since the implementation of clang_getSkippedRanges iterates over all ranges anyway). Differential Revision: https://reviews.llvm.org/D20132 llvm-svn: 279076
* [WebAssembly] Refactor WebAssemblyLowerEmscriptenException pass for ↵Derek Schuff2016-08-186-133/+191
| | | | | | | | | | | | | | | | | | | | | | setjmp/longjmp This patch changes the code structure of WebAssemblyLowerEmscriptenException pass to support both exception handling and setjmp/longjmp. It also changes the name of the pass and the source file. 1. Change the file/pass name to WebAssemblyLowerEmscriptenExceptions -> WebAssemblyLowerEmscriptenEHSjLj to make it clear that it supports both EH and SjLj 2. List function / global variable names at the top so they can be changed easily 3. Some cosmetic changes Patch by Heejin Ahn Differential Revision: https://reviews.llvm.org/D23588 llvm-svn: 279075
* [AArch64][GlobalISel] Select G_SDIV/G_UDIV.Ahmed Bougacha2016-08-183-1/+137
| | | | | | | | There is no REM instruction; that will require an expansion. It's not obvious that should be done in select, rather than as a (custom?) legalization. llvm-svn: 279074
* [GlobalISel] Add support for DIV/REM.Ahmed Bougacha2016-08-184-4/+102
| | | | llvm-svn: 279073
* [InstCombine] use APInt in isSignTest instead of ConstantInt; NFCSanjay Patel2016-08-181-6/+7
| | | | | | | This will enable vector splat folding, but NFC until the callers have their ConstantInt restrictions removed. llvm-svn: 279072
* [compiler-rt][tests] cpu_model_test.c test fails to compile if X86 is not ↵Oleg Ranevskyy2016-08-181-0/+2
| | | | | | | | | | | | | | | | | | clang's default target Summary: test/builtins/Unit/cpu_model_test.c tests the X86 specific builtin `__builtin_cpu_supports`. It fails if the clang's default target is not X86. The proposed patch adds an additional requirement for the X86 target to the test, making lit ignore the test if the target is different. Reviewers: asbirlea Subscribers: dberris, llvm-commits Differential Revision: https://reviews.llvm.org/D23633 llvm-svn: 279071
* gdb-remote: Remove manual locking from GetShlibInfoAddrPavel Labath2016-08-181-16/+4
| | | | | | | The function can simply call the non-NoLock version of the SendPacket function and let it do the locking. llvm-svn: 279070
* llvm-readobj: handle import libraries with -coff-exportsSaleem Abdulrasool2016-08-183-0/+24
| | | | | | | | `link -dump -exports` lists exported symbols from import libraries as well as normal dlls. Ensure that we can handle import libraries as well in llvm-readobj. llvm-svn: 279069
* fix typo; NFCSanjay Patel2016-08-181-1/+1
| | | | llvm-svn: 279068
* [Hexagon] Create vcombine in HexagonCopyToCombineKrzysztof Parzyszek2016-08-182-18/+112
| | | | llvm-svn: 279067
* [InstCombine] use m_APInt to allow icmp (xor X, Y), C folds for splat ↵Sanjay Patel2016-08-185-29/+16
| | | | | | | | | | | constant vectors This is a sibling of: https://reviews.llvm.org/rL278859 https://reviews.llvm.org/rL278935 https://reviews.llvm.org/rL278945 llvm-svn: 279066
* [X86][SSE] Add SSE1 tests to make sure we don't merge loads on illegal typesSimon Pilgrim2016-08-181-123/+499
| | | | llvm-svn: 279065
* [mips] Correct tail call encoding for MIPSR6Simon Dardis2016-08-1811-41/+74
| | | | | | | | | | | | | r277708 enabled tails calls for MIPS but used the 'jr' instruction when the jump target was held in a register. For MIPSR6, 'jalr $zero, $reg' should have been used. Additionally, add missing patterns for external and global symbols for tail calls. Reviewers: dsanders, vkalintiris Differential Review: https://reviews.llvm.org/D23301 llvm-svn: 279064
* [Reassociate] Add test for PR28367.Chad Rosier2016-08-181-0/+28
| | | | llvm-svn: 279063
* Add header guards to asan_descriptions.hFilipe Cabecinhas2016-08-181-0/+4
| | | | llvm-svn: 279062
* (Trivial) TargetPassConfig: assert when TargetMachine has no MCAsmInfoAlex Bradbury2016-08-181-1/+3
| | | | | | | | | | | | | | | Summary: This is a pretty trivial, but I thought it was worth just checking that nobody feels it's completely the wrong thing to be doing. The motivation is that when starting a new backend, you often start with a minimal stub, pretty much just FooTargetMachine and FooTargetInfo. Once that's built, you might naturally try `llc -march=foo myinput.ll` and it seems more developer-friendly if this ends up asserting due to the lack of MCAsmInfo with an informative message rather than just segfaulting. Reviewers: MatzeB, chandlerc Subscribers: bogner, llvm-commits Differential Revision: https://reviews.llvm.org/D23443 llvm-svn: 279061
* [ELF] - Linkerscript: removed duplicate forward declarations, regrouped. NFC.George Rimar2016-08-181-4/+1
| | | | llvm-svn: 279060
* [ELF] - Inline defineSymbolVersion(). NFC.George Rimar2016-08-182-8/+1
| | | | llvm-svn: 279059
* ELF: ignore -EB and -EL optionsEd Maste2016-08-181-0/+2
| | | | | | Differential Revision: https://reviews.llvm.org/D23124 llvm-svn: 279058
* Move QSyncThreadState packet generation to the gdb-remote clientPavel Labath2016-08-185-29/+36
| | | | llvm-svn: 279057
* [analyzer] Teach CloneDetector to find clones that look like copy-paste errors.Artem Dergachev2016-08-184-23/+328
| | | | | | | | | | | | | | | | | | | The original clone checker tries to find copy-pasted code that is exactly identical to the original code, up to minor details. As an example, if the copy-pasted code has all references to variable 'a' replaced with references to variable 'b', it is still considered to be an exact clone. The new check finds copy-pasted code in which exactly one variable seems out of place compared to the original code, which likely indicates a copy-paste error (a variable was forgotten to be renamed in one place). Patch by Raphael Isemann! Differential Revision: https://reviews.llvm.org/D23314 llvm-svn: 279056
* Correct the documentation for isSignedInteger() and isUnsignedInteger().Aaron Ballman2016-08-182-4/+4
| | | | | | Patch by Visoiu Mistrih Francis llvm-svn: 279055
* Remove trailing whitespaceSimon Pilgrim2016-08-181-9/+9
| | | | llvm-svn: 279054
* Revert "ADT: Remove UB in ilist (and use a circular linked list)"Diana Picus2016-08-183-243/+287
| | | | | | | This reverts commit r278974 which broke some of our bots (e.g. clang-cmake-aarch64-42vma, clang-cmake-aarch64-full). llvm-svn: 279053
* Revert "ADT: Tidy up ilist_traits static asserts, NFC"Diana Picus2016-08-182-33/+19
| | | | | | | This reverts commit r279012. r278974 broke some bots, I have to revert this to get to it. llvm-svn: 279052
* [clang-tidy docs] Minor fixAlexander Kornienko2016-08-181-1/+1
| | | | llvm-svn: 279051
* [clang-tidy docs] Fix formatting.Alexander Kornienko2016-08-181-0/+1
| | | | llvm-svn: 279050
* [clang-tidy docs] Fix build errors on Sphinx 1.4.5Alexander Kornienko2016-08-188-48/+86
| | | | llvm-svn: 279049
* [mips][msan] Fix all the XPASSes following r278793 and r278795Daniel Sanders2016-08-1835-70/+0
| | | | | | | All msan tests are now passing for mipsel and mips64el except for allocator_mapping.cc which is marked unsupported. llvm-svn: 279048
* [BlockGenerator] Invalidate SCEV values for instructions in scopTobias Grosser2016-08-183-1/+29
| | | | | | | | | | | | | | | We already invalidated a couple of critical values earlier on, but we now invalidate all instructions contained in a scop after the scop has been code generated. This is necessary as later scops may otherwise obtain SCEV expressions that reference values in the earlier scop that before dominated the later scop, but which had been moved into the conditional branch and consequently do not dominate the later scop any more. If these very values are then used during code generation of the later scop, we generate used that are dominated by the values they use. This fixes: http://llvm.org/PR28984 llvm-svn: 279047
* Convert AsanLocateAddress to Get*AddressInformation functions.Filipe Cabecinhas2016-08-181-40/+40
| | | | llvm-svn: 279046
* Revert "[OpenMP] Sema and parsing for 'teams distribute simd’ pragma"Diana Picus2016-08-1840-4906/+12
| | | | | | | | | | | | | | | | | This reverts commit r279003 as it breaks some of our buildbots (e.g. clang-cmake-aarch64-quick, clang-x86_64-linux-selfhost-modules). The error is in OpenMP/teams_distribute_simd_ast_print.cpp: clang: /home/buildslave/buildslave/clang-cmake-aarch64-quick/llvm/include/llvm/ADT/DenseMap.h:527: bool llvm::DenseMapBase<DerivedT, KeyT, ValueT, KeyInfoT, BucketT>::LookupBucketFor(const LookupKeyT&, const BucketT*&) const [with LookupKeyT = clang::Stmt*; DerivedT = llvm::DenseMap<clang::Stmt*, long unsigned int>; KeyT = clang::Stmt*; ValueT = long unsigned int; KeyInfoT = llvm::DenseMapInfo<clang::Stmt*>; BucketT = llvm::detail::DenseMapPair<clang::Stmt*, long unsigned int>]: Assertion `!KeyInfoT::isEqual(Val, EmptyKey) && !KeyInfoT::isEqual(Val, TombstoneKey) && "Empty/Tombstone value shouldn't be inserted into map!"' failed. llvm-svn: 279045
* revert [analyzer] Added valist related checkers.Gabor Horvath2016-08-186-739/+0
| | | | llvm-svn: 279043
* test commitGuy Blank2016-08-181-1/+1
| | | | llvm-svn: 279042
* [analyzer] Added valist related checkers.Gabor Horvath2016-08-186-0/+739
| | | | | | Differential Revision: https://reviews.llvm.org/D15227 llvm-svn: 279041
* gdb-remote: Centralize thread specific packet handlingPavel Labath2016-08-183-170/+135
| | | | | | | | | | | | | | | | | | | | Summary: Before this, each function had a copy of the code which handled appending of the thread suffix to the packet (or using $Hg instead). I have moved that code into a single function and made everyone else use that. The function takes the partial packet as a StreamString rvalue reference, to avoid a copy and to remind the users that the packet will have undeterminate contents after the call. This also fixes the incorrect formatting of the QRestoreRegisterState packet in case thread suffix is not supported. Reviewers: clayborg Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D23604 llvm-svn: 279040
* Fix tests for the gdb-remote memory read packetsPavel Labath2016-08-182-47/+11
| | | | | | | | Part of TestGDBRemoteMemoryRead has been disabled since r259379 because it was incompatible with python3. This changes the test to use the lldb-server test framework, which is a more appropriate method of testing raw stub behaviour anyway (and should avoid the whole python 3 issue). llvm-svn: 279039
* Fix parsing of complicated C++ namesPavel Labath2016-08-185-1/+49
| | | | | | | | | | | | | | | | Summary: CPlusPlusLanguage::MethodName was not correctly parsing templated functions whose demangled name included the return type -- the space before the function name was included in the "context" and the context itself was not terminated correctly due to a misuse of the substr function (second argument is length, not the end position). Fix that and add a regression test. Reviewers: clayborg Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D23608 llvm-svn: 279038
* [analyzer] Small cleanups when checkers retrieving statements from explodedGabor Horvath2016-08-186-50/+9
| | | | | | | | nodes. Differential Revision: https://reviews.llvm.org/D23550 llvm-svn: 279037
* [ELF] Don't add input sections twice when linker script is usedEugene Leviant2016-08-182-1/+20
| | | | llvm-svn: 279036
* [Driver] Use llvm-config.h, not config.h to unbreak out-of-tree buildsVedant Kumar2016-08-181-1/+1
| | | | | | | | | | llvm/Config/config.h has intentionally been excluded from llvm installations (see: llvm/CMakeLists.txt). Un-break out-of-tree builds post-r278882 by switching to llvm-config.h, which is exported. Suggested by Will Dietz! llvm-svn: 279035
* Remove debugging aids from this test and fix its expectations.Richard Smith2016-08-181-3/+1
| | | | llvm-svn: 279034
* [ELF] Linkerscript: support assignment outside SECTIONSPetr Hosek2016-08-183-1/+29
| | | | | | | | | | | We only support assignments inside SECTIONS, but this does not match the behavior of GNU linker which also allows them outside SECTIONS. The only restriction on assignments outside SECTIONS is that they cannot reference . (they have to be absolute expressions). Differential Revision: https://reviews.llvm.org/D23598 llvm-svn: 279033
* [Docs] More MemorySSA doc updates!George Burgess IV2016-08-181-5/+5
| | | | | | Thanks again to Michael Kuperstein for the feedback. llvm-svn: 279032
* Testcase for r279022Matthias Braun2016-08-181-0/+24
| | | | llvm-svn: 279031
* [asan] trying to fix the windows botKostya Serebryany2016-08-181-0/+4
| | | | llvm-svn: 279030
* Revert r279016 -- it breaks win32-elf JIT tests.Lang Hames2016-08-182-4/+4
| | | | llvm-svn: 279029
OpenPOWER on IntegriCloud