summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* clang-format: Fix endless loop on incomplete try-catch-block.Daniel Jasper2015-01-192-1/+4
| | | | llvm-svn: 226447
* clang-format: Remove assert that isn't helpful.Daniel Jasper2015-01-192-1/+1
| | | | | | | This assert would trigger on: #d , = } llvm-svn: 226446
* Make clang-format work in emacs buffers with unicode characters.Manuel Klimek2015-01-191-11/+16
| | | | | | | | | | Emacs functions by default use character positions; convert characters to offsets when handing parameters to clang-format and convert byte offsets we get from clang-format back to character positions. Reworked the code a bit so the 0-based to 1-based offset calculations are done in the same place where we do the multi-byte to offset mapping. llvm-svn: 226445
* Suppress the newly added Clang warning for the inaccessible base in thisChandler Carruth2015-01-191-4/+4
| | | | | | | | test. Do that after we suppress the warnings for unknown pragmas as this warning flag is quite new in Clang and so old Clang's would warn all the time on this file. llvm-svn: 226444
* [PM] Relax asserts and always try to reconstruct loop simplify form whenChandler Carruth2015-01-191-10/+4
| | | | | | | | | | | | | | | | | we can while splitting critical edges. The only code which called this and didn't require simplified loops to be preserved is polly, and the code behaves correctly there anyways. Without this change, it becomes really hard to share this code with the new pass manager where things like preserving loop simplify form don't make any sense. If anyone discovers this code behaving incorrectly, what it *should* be testing for is whether the loops it needs to be in simplified form are in fact in that form. It should always be trying to preserve that form when it exists. llvm-svn: 226443
* Add back a check removed in r226436David Majnemer2015-01-193-2/+17
| | | | | | | It shouldn't have been removed, the code which replaced it didn't cover this case. llvm-svn: 226442
* SemaDeclCXX.cpp: Suppress a warning. [-Wunused-variable]NAKAMURA Takumi2015-01-191-0/+1
| | | | llvm-svn: 226441
* [Sanitizers] Order initialization of coverage and guard arraysViktor Kutuzov2015-01-191-1/+3
| | | | | | Differential Revision: http://reviews.llvm.org/D6892 llvm-svn: 226440
* SLPVectorizer: limit the number of alias checks to reduce the runtime.Erik Eckstein2015-01-191-1/+16
| | | | | | | | In case of blocks with many memory-accessing instructions, alias checking can take lot of time (because calculating the memory dependencies has quadratic complexity). I chose a limit which resulted in no changes when running the benchmarks. llvm-svn: 226439
* [sanitizer] Move options-related tests to sanitizer_common.Evgeniy Stepanov2015-01-196-28/+41
| | | | | | And handle help=1 in standalone LSan. llvm-svn: 226438
* [msan] Use internal__exit() instead of _exit().Evgeniy Stepanov2015-01-191-1/+1
| | | | llvm-svn: 226437
* Sema: Variable definitions cannot be __attribute__((alias))David Majnemer2015-01-196-48/+35
| | | | | | | | | | | | | | | | | | | | Things that are OK: extern int var1 __attribute((alias("v1"))); static int var2 __attribute((alias("v2"))); Things that are not OK: int var3 __attribute((alias("v3"))); extern int var4 __attribute((alias("v4"))) = 4; We choose to accpet: struct S { static int var5 __attribute((alias("v5"))); }; This code causes assertion failues in GCC 4.8 and ICC 13.0.1, we have no reason to reject it. This partially fixes PR22217. llvm-svn: 226436
* [dfsan] Use append_no_rtti_flag instead of manually specifying -fno-rtti.Evgeniy Stepanov2015-01-191-1/+2
| | | | llvm-svn: 226435
* [PowerPC] Minor correction to r226432Hal Finkel2015-01-191-2/+1
| | | | | | | | | | We don't need to exclude patchpoints from the implicit r2 dependence in FastISel because it is added as an implicit operand and, thus, should not confuse that StackMap code. By inspection / no test case. llvm-svn: 226434
* [MIScheduler] Slightly better handling of constrainLocalCopy when both ↵Michael Kuperstein2015-01-194-21/+61
| | | | | | | | | | source and dest are local This fixes PR21792. Differential Revision: http://reviews.llvm.org/D6823 llvm-svn: 226433
* [PowerPC] Add r2 as an operand for all calls under both PPC64 ELF V1 and V2Hal Finkel2015-01-193-7/+20
| | | | | | | | | | | Our PPC64 ELF V2 call lowering logic added r2 as an operand to all direct call instructions in order to represent the dependency on the TOC base pointer value. Restricting this to ELF V2, however, does not seem to make sense: calls under ELF V1 have the same dependence, and indirect calls have an r2 dependence just as direct ones. Make sure the dependence is noted for all calls under both ELF V1 and ELF V2. llvm-svn: 226432
* [X86] Change AVX512 intrinsics to take a 8-bit immediate for the comparision ↵Craig Topper2015-01-191-2/+2
| | | | | | kind instead of a 32-bit immediate. This matches an equivalent change in llvm. llvm-svn: 226431
* [x86] Change AVX512 intrinsics to take a 8-bit immediate for the comparision ↵Craig Topper2015-01-194-10/+43
| | | | | | kind instead of a 32-bit immediate. This better aligns with the emitted instruction. It also matches SSE and AVX1 equivalents. Also add auto upgrade support. llvm-svn: 226430
* [OPENMP] Disable copyprivate an nowait clauses in 'single' directive.Alexey Bataev2015-01-194-4/+39
| | | | | | | The copyprivate clause must not be used with the nowait clause in single directive. llvm-svn: 226429
* [tinyptrvector] Add in a MutableArrayRef implicit conversion operator to ↵Michael Gottesman2015-01-192-0/+30
| | | | | | complement the ArrayRef implicit conversion operator. llvm-svn: 226428
* Update to reflect the API change to createMCSymbolizer in LLVM r226416.Chandler Carruth2015-01-191-1/+1
| | | | | | This should fix the LLDB build since that change. llvm-svn: 226427
* [PM] Lift the analyses into the interface forChandler Carruth2015-01-197-20/+21
| | | | | | | | | | SplitLandingPadPredecessors and remove the Pass argument from its interface. Another step to the utilities being usable with both old and new pass managers. llvm-svn: 226426
* Change using => typedef to please the MSVC bots.Michael Gottesman2015-01-191-3/+3
| | | | llvm-svn: 226425
* Hide the state of TinyPtrVector and remove the single element constructor.Michael Gottesman2015-01-191-7/+11
| | | | | | | | There is no reason for this state to be exposed as public. The single element constructor was superfulous in light of the single element ArrayRef constructor. llvm-svn: 226424
* PR6037Nathan Sidwell2015-01-1919-24/+107
| | | | | | Warn on inaccessible direct base llvm-svn: 226423
* [x86] Teach Sema to check size of comparison immediate on avx512 cmpps/cmppd ↵Craig Topper2015-01-192-1/+17
| | | | | | buitins. llvm-svn: 226422
* [x86] Mark that the AVX-512 cmpps/cmppd builtins need an ICE for the ↵Craig Topper2015-01-193-18/+27
| | | | | | comparison immediate. This requires converting to a macro in the header file. llvm-svn: 226421
* [multilib] Teach Polly's CMake to use the libdir suffix variable. ThisChandler Carruth2015-01-191-1/+1
| | | | | | | | | | | | lets 'ninja check-polly' pass for me with a lib64 build of LLVM. I've not updated the standalone side as I don't use it and don't have an easy way to test any changes I've made there. I mostly wanted to be able to actually run Polly's tests when I update its use of LLVM's APIs during my refactorings on the (very unlikely) off chance that I make a change which compiles but does the wrong thing. llvm-svn: 226420
* Reorder.NAKAMURA Takumi2015-01-195-5/+5
| | | | llvm-svn: 226419
* [CMake] examples/Kaleidoscope: Prune redundant libdeps.NAKAMURA Takumi2015-01-195-9/+0
| | | | llvm-svn: 226418
* [CMake] Update libdeps in examples/Kaleidoscope/Chapter4.NAKAMURA Takumi2015-01-191-0/+1
| | | | llvm-svn: 226417
* unique_ptrify the RelInfo parameter to TargetRegistry::createMCSymbolizerDavid Blaikie2015-01-185-29/+22
| | | | llvm-svn: 226416
* Attempt to fix the MSVC build by working around a layering issueDavid Blaikie2015-01-181-1/+1
| | | | | | | | Since MCStreamer isn't part of Support, the dtor can't be called from here - so just pass by reference instead. This is rather imperfect, but will hopefully suffice. llvm-svn: 226415
* std::unique_ptrify the MCStreamer argument to createAsmPrinterDavid Blaikie2015-01-1819-68/+89
| | | | llvm-svn: 226414
* Handle unscoped enumeration in nested name specifier.Serge Pavlov2015-01-185-12/+61
| | | | | | | | | | If an unscoped enum is used as a nested name specifier and the language dialect is not C++ 11, issue an extension warning. This fixes PR16951. Differential Revision: http://reviews.llvm.org/D6389 llvm-svn: 226413
* R600: Remove redundant testMatt Arsenault2015-01-183-15/+2
| | | | | | This is already covered in ftrunc.ll llvm-svn: 226412
* Cleaning up the test suite; remove some includes of non-standard file <__config>Marshall Clow2015-01-1812-35/+8
| | | | llvm-svn: 226411
* Update error message text.Serge Pavlov2015-01-1810-25/+25
| | | | | | | | | Previously if an enumeration was used in a nested name specifier in pre-C++11 language dialect, error message was 'XXX is not a class, namespace, or scoped enumeration'. This patch removes the word 'scoped' as in C++11 any enumeration may be used in this context. llvm-svn: 226410
* [mips] 'CHECK :' is not a valid check directive. Fixed.Daniel Sanders2015-01-185-301/+301
| | | | llvm-svn: 226409
* [mips] Make whitespace in disassembler tests more consistent. NFC.Daniel Sanders2015-01-1828-3854/+3854
| | | | | | | | | | The tests for the ISA's should now be approximately diffable. That is, the output of 'diff valid-mips1.txt valid-mips2.txt' should be emit the lines for instructions that were added/removed to/from MIPS-I by MIPS-II. This doesn't work perfectly at the moment due to ordering differences but it should be close. llvm-svn: 226408
* [mips] Make whitespace of disassembler tests more consistent by removing ↵Daniel Sanders2015-01-1815-1523/+0
| | | | | | blank lines. NFC. llvm-svn: 226407
* [X86][SSE] Added scalar min/max folding tests. NFC.Simon Pilgrim2015-01-181-4/+40
| | | | llvm-svn: 226406
* [X86][SSE] Added float extract and xmm extract/insert stack folding tests. NFC.Simon Pilgrim2015-01-181-3/+26
| | | | llvm-svn: 226405
* [X86][SSE] Added scalar conversion stack folding tests. NFC.Simon Pilgrim2015-01-181-12/+156
| | | | llvm-svn: 226404
* [PowerPC] Don't hard-code R2 as register when processing TOC relocationsHal Finkel2015-01-181-3/+3
| | | | | | | | | | | Instructions that have high-order TOC relocations always carry R2 as their base register, so it does not matter whether we take the register from the instruction or just hard-code it in PPCAsmPrinter. In the future, however, we might want to apply these relocations to instructions using a different register, so taking the register from the instruction is a better thing to do. No change in functionality here, however. llvm-svn: 226403
* Remove redundant semicolon clang-format complained aboutTobias Grosser2015-01-181-2/+2
| | | | llvm-svn: 226402
* [PowerPC] Add some FIXMEs for fastcc and FPR <-> GPR movesHal Finkel2015-01-181-0/+6
| | | | | | | So we don't forget, once we support FPR <-> GPR moves on the P8, we'll likely want to re-visit this part of the calling convention. llvm-svn: 226401
* AVX1 stack folding tests. NFC.Simon Pilgrim2015-01-181-31/+1246
| | | | | | | | Begun adding more exhaustive tests - all floating point instructions should now be either tested or have placeholders. We do seem to have a number of missing instructions, I will add a patch for review once the remaining working instructions are added. I'll then move on to SSE tests and then the integer instructions. llvm-svn: 226400
* [PowerPC] Initial PPC64 calling-convention changes for fastccHal Finkel2015-01-184-63/+757
| | | | | | | | | | | | | | | | | The default calling convention specified by the PPC64 ELF (V1 and V2) ABI is designed to work with both prototyped and non-prototyped/varargs functions. As a result, GPRs and stack space are allocated for every argument, even those that are passed in floating-point or vector registers. GlobalOpt::OptimizeFunctions will transform local non-varargs functions (that do not have their address taken) to use the 'fast' calling convention. When functions are using the 'fast' calling convention, don't allocate GPRs for arguments passed in other types of registers, and don't allocate stack space for arguments passed in registers. Other changes for the fast calling convention may be added in the future. llvm-svn: 226399
* [PM] Update Polly for LLVM r226394 and r226396 which changed some of theChandler Carruth2015-01-184-8/+35
| | | | | | | block splitting interfaces to accept specific analyses rather than a pass. llvm-svn: 226398
OpenPOWER on IntegriCloud