summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Remove unused MachineLocation.h include from MCAsmInfo.h. NFCPete Cooper2015-05-191-1/+0
| | | | llvm-svn: 237707
* RegisterCoalescer: Improve a comment.Matthias Braun2015-05-191-6/+5
| | | | | | | Explain the relation of the example to the variables in the code, explain what bad behaviour the code avoids in this case. llvm-svn: 237706
* use range-based for loopSanjay Patel2015-05-191-5/+5
| | | | llvm-svn: 237705
* clang-format: Add space in function pointers with SpaceBeforeParens=AlwaysAnders Waldenborg2015-05-192-1/+3
| | | | | | | | | "void (*my_function)(void)" should become "void (*my_function) (void)" when SpaceBeforeParens is set to 'Always' Differential Revision: http://reviews.llvm.org/D9835 llvm-svn: 237704
* [RewriteStatepointsForGC] Fix up naming in "relocationViaAlloca" and run it ↵Igor Laevsky2015-05-191-56/+56
| | | | | | | | through clang-format. Differential Revision: http://reviews.llvm.org/D9774 llvm-svn: 237703
* Remove the InstructionSimplifierPass immediately after InstructionCombiningPass.Wei Mi2015-05-191-4/+0
| | | | | | | | | | InstructionCombiningPass was added after LoopUnrollPass in r237395. Because InstructionCombiningPass is strictly more powerful than InstructionSimplifierPass, remove the unnecessary InstructionSimplifierPass. Differential Revision: http://reviews.llvm.org/D9838 llvm-svn: 237702
* [RewriteStatepointsForGC] For some values (like gep's and bitcasts) it's ↵Igor Laevsky2015-05-195-9/+503
| | | | | | | | cheaper to clone them after statepoint than to emit proper relocates for them. This change implements this logic. There is alredy similar optimization in CodeGenPrepare, but doing so during RewriteStatepointsForGC allows to capture more opprtunities such as relocates in loops and longer instruction chains. Differential Revision: http://reviews.llvm.org/D9774 llvm-svn: 237701
* Add compiler flag test support to LIT. Fix new/delete tests on apple-clang.Eric Fiselier2015-05-194-11/+28
| | | | llvm-svn: 237700
* Implement LWG2433: uninitialized_copy()/etc. should tolerate overloaded ↵Marshall Clow2015-05-196-8/+102
| | | | | | operator& llvm-svn: 237699
* [X86] Add _mm_broadcastsd_pd intrinsicMichael Kuperstein2015-05-192-0/+11
| | | | | | _mm_broadcastsd_pd is basically an alias for _mm_movedup_pd, however the alias is only available from AVX2 forward. llvm-svn: 237698
* [mips][microMIPSr6] Implement NOR, OR, ORI, XOR and XORI instructionsZoran Jovanovic2015-05-194-7/+37
| | | | | | Differential Revision: http://reviews.llvm.org/D8800 llvm-svn: 237697
* [mips][microMIPSr6] Implement AND and ANDI instructionsZoran Jovanovic2015-05-194-3/+16
| | | | | | Differential Revision: http://reviews.llvm.org/D8772 llvm-svn: 237696
* Rangify for loop in Cleanup(), NFC.Yaron Keren2015-05-191-2/+2
| | | | llvm-svn: 237695
* Prevent Cleanup() from running more than once.Yaron Keren2015-05-191-0/+3
| | | | llvm-svn: 237694
* [X86] Added _mm256_bslli_epi128 and _mm256_bsrli_epi128.Michael Kuperstein2015-05-192-0/+14
| | | | | | These two intrinsics are alternative names for _mm256_slli_si256 and _mm256_srli_si256, respectively. llvm-svn: 237693
* Use cat and not type Under MSYS, same as Cygwin.Yaron Keren2015-05-191-1/+1
| | | | | | | | type means something else under the MSYS shell. Patch by Tzafrir Poupko! llvm-svn: 237692
* [OPENMP] Fixed codegen for copying/initialization of array variables/parameters.Alexey Bataev2015-05-197-19/+157
| | | | | | This modification generates proper copyin/initialization sequences for array variables/parameters. Before they were considered as pointers, not arrays. llvm-svn: 237691
* clang-format: Improve *-detection.Daniel Jasper2015-05-192-0/+5
| | | | | | | | | | | | Before: S << a *(10); After: S << a * (10); This fixes llvm.org/PR16500. llvm-svn: 237690
* [mips] Correct and improve special-case shuffle instructions.Daniel Sanders2015-05-197-248/+1051
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: The documentation writes vectors highest-index first whereas LLVM-IR writes them lowest-index first. As a result, instructions defined in terms of left_half() and right_half() had the halves reversed. In addition to correcting them, they have been improved to allow shuffles that use the same operand twice or in reverse order. For example, ilvev used to accept masks of the form: <0, n, 2, n+2, 4, n+4, ...> but now accepts: <0, 0, 2, 2, 4, 4, ...> <n, n, n+2, n+2, n+4, n+4, ...> <0, n, 2, n+2, 4, n+4, ...> <n, 0, n+2, 2, n+4, 4, ...> One further improvement is that splati.[bhwd] is now the preferred instruction for splat-like operations. The other special shuffles are no longer used for splats. This lead to the discovery that <0, 0, ...> would not cause splati.[hwd] to be selected and this has also been fixed. This fixes the enc-3des test from the test-suite on Mips64r6 with MSA. Reviewers: vkalintiris Reviewed By: vkalintiris Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D9660 llvm-svn: 237689
* clang-format: Improve for-loop formatting.Daniel Jasper2015-05-192-1/+7
| | | | | | | | | | | | | | | | | | Before: for (SmallVectorImpl<TemplateIdAnnotationn *>::iterator I = Container.begin(), E = Container.end(); I != E; ++I) After: for (SmallVectorImpl<TemplateIdAnnotationn *>::iterator I = Container.begin(), E = Container.end(); I != E; ++I) This fixes llvm.org/PR23544. llvm-svn: 237688
* As r237678 was reverted, this is no longer needed.Yaron Keren2015-05-191-2/+1
| | | | llvm-svn: 237687
* clang-format: Support #include_nextDaniel Jasper2015-05-192-0/+2
| | | | | | | | | | | | Before: #include_next < test.h > After: #include_next <test.h> This fixes llvm.org/PR23500 llvm-svn: 237686
* [mips][microMIPSr6] Implement DIV, DIVU, MOD and MODU instructionsZoran Jovanovic2015-05-194-5/+30
| | | | | | Differential Revision: http://reviews.llvm.org/D8769 llvm-svn: 237685
* clang-format: Correctly detect casts to qualified types.Daniel Jasper2015-05-192-1/+3
| | | | | | | | | | | | Before: ns::E f() { return (ns::E) - 1; } After: ns::E f() { return (ns::E)-1; } This fixes llvm.org/PR23503. llvm-svn: 237684
* Fix Visual C++ errors C2784, C2780, C2782 after r237678.Yaron Keren2015-05-191-1/+2
| | | | | | It does not like std::min(unsigned, uint32_t). llvm-svn: 237683
* [X86] ABI change for x86-32: pass 3 vector arguments in-register instead of ↵Michael Kuperstein2015-05-194-29/+114
| | | | | | | | | | | | | | | | 4, except on Darwin. This changes the ABI used on 32-bit x86 for passing vector arguments. Historically, clang passes the first 4 vector arguments in-register, and additional vector arguments on the stack, regardless of platform. That is different from the behavior of gcc, icc, and msvc, all of which pass only the first 3 arguments in-register. The 3-register convention is documented, unofficially, in Agner's calling convention guide, and, officially, in the recently released version 1.0 of the i386 psABI. Darwin is kept as is because the OS X ABI Function Call Guide explicitly documents the current (4-register) behavior. This fixes PR21510 Differential revision: http://reviews.llvm.org/D9644 llvm-svn: 237682
* clang-format: Fix regression caused by r237244.Daniel Jasper2015-05-192-1/+4
| | | | | | | | | | | | | | | Before: [call aaaaaaaa.aaaaaaaa.aaaaaaaa.aaaaaaaa.aaaaaaaa.aaaaaaaa.aaaaaaaa.aaaaaaaa. aaaaaaaa]; After: [call aaaaaaaa.aaaaaaaa.aaaaaaaa.aaaaaaaa.aaaaaaaa.aaaaaaaa.aaaaaaaa.aaaaaaaa .aaaaaaaa]; This merely papers over the fact that we aren't parsing ObjC method calls correctly. Also, the indentation is weird. llvm-svn: 237681
* Revert "Avoid size_t -> unsigned conversion in MathExtras.h header. NFC".Pawel Bylica2015-05-191-4/+4
| | | | llvm-svn: 237680
* Mark TestEvents as XTIMEOUT on LinuxTamas Berghammer2015-05-191-0/+1
| | | | llvm-svn: 237679
* Avoid size_t -> unsigned conversion in MathExtras.h header. NFC.Pawel Bylica2015-05-191-4/+4
| | | | llvm-svn: 237678
* Fix documentation for Set-Like ContainersArtyom Skrobov2015-05-191-10/+26
| | | | llvm-svn: 237677
* Don't print =breakpoint-created if BP info was emitted in the result record (MI)Ilia K2015-05-194-13/+28
| | | | llvm-svn: 237676
* [sanitizer][MIPS] Add --target flag for MIPS32Sagar Thakur2015-05-194-4/+8
| | | | | | | | | | Without the --target flag, clang uses the mips64 triple which selects the n64 abi. We need to add --target=mips-linux-gnu, so that clang can select the correct abi for mips32r2. Reviewers: dsanders, kcc, samsonov Subscribers: llvm-commits, mohit.bhakkad, jaydeep Differential Revision: http://reviews.llvm.org/D9249 llvm-svn: 237675
* [OPENMP] Prohibit VLAs in 'private/firstprivate' clauses of 'task' directive.Alexey Bataev2015-05-195-3/+43
| | | | | | Currently runtime does not allow to support variably modified types for 'private' and 'firstprivate' clauses in 'task' directives. llvm-svn: 237674
* Fix getSwappedBytes for double.Pawel Bylica2015-05-191-1/+1
| | | | llvm-svn: 237673
* [OPENMP] Prohibit variably modified types in 'copyprivate' clause.Alexey Bataev2015-05-193-2/+15
| | | | | | Runtime does not allow to work with VLAs in copyprivate clause. llvm-svn: 237672
* [OPENMP] Fixed analysis of function arguments and their data sharing attributes.Alexey Bataev2015-05-195-50/+102
| | | | | | Added proper analysis for types of function arguments. llvm-svn: 237670
* BrainF.cpp: Update CreateCall() according to r237624.NAKAMURA Takumi2015-05-191-1/+2
| | | | llvm-svn: 237669
* SemaExprCXX.cpp: Try to fix \param in r237608. [-Wdocumentation]NAKAMURA Takumi2015-05-191-2/+1
| | | | llvm-svn: 237668
* Drop unnecessary ';' after namespaceTobias Grosser2015-05-191-1/+1
| | | | | | | The ';' was introduced in 237642. With it in place, we get a large number of warnings in -pedantic mode. llvm-svn: 237667
* Adapt to IRBuilder::CreateCall interface changeTobias Grosser2015-05-192-3/+3
| | | | | | | The IRBuilder::CreateCall interface was changed in r237624 and now requires an initializer list. llvm-svn: 237666
* dotest - minor doc fixVince Harron2015-05-191-2/+2
| | | | llvm-svn: 237665
* mark new/delete tests as XFAIL more carefullyEric Fiselier2015-05-194-10/+20
| | | | llvm-svn: 237664
* [libcxx] Rework sized delete.Eric Fiselier2015-05-1915-518/+509
| | | | | | | | | | | | | | | | | | | | | | | | | | Summary: This patch does 2 main things: 1. Enable sized delete if the feature test macro `__cpp_sized_deallocation` is enabled. 2. Rework and cleanup all of the sized delete tests. Test Plan: The sized delete replacement tests are now split into 4 files: 1. sized_delete11.pass.cpp: Ensure overriding sized delete in C++11 has no effect. 2. sized_delete14.pass.cpp: Test overriding sized delete in C++14 and ensure it is called. This test fails on clang and GCC < 5.1. 3. size_delete_calls_unsized_delete_.pass.cpp: Test that the default sized delete calls unsized delete. 4. sized_delete_fsizeddeallocation.pass.cpp: Test overriding sized delete when -fsized-deallocation is passed. This test should pass on clang and GCC >= 5.1 I have also removed a lot of cruft from the old tests. They no longer replace the new handler and tests that it is called for bad allocations. Reviewers: mclow.lists Reviewed By: mclow.lists Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D9831 llvm-svn: 237662
* PR20073: promote "dereference of 'void*'" from Extension to ExtWarn.Richard Smith2015-05-193-7/+7
| | | | llvm-svn: 237652
* SelectionDAG: Cleanup and simplify FoldConstantArithmeticMatthias Braun2015-05-192-100/+95
| | | | | | | | | | | This cleans up the FoldConstantArithmetic code by factoring out the case of two ConstantSDNodes into an own function. This avoids unnecessary complexity for many callers who already have ConstantSDNode arguments. This also avoids an intermeidate SmallVector datastructure and a loop over that datastructure. llvm-svn: 237651
* [BitcodeReader] Error out if we read an invalid function argument typeFilipe Cabecinhas2015-05-193-1/+9
| | | | | | Bug found with AFL fuzz. llvm-svn: 237650
* [lib/Fuzzer] more efficient reload logic; also don't spam git too muchKostya Serebryany2015-05-193-8/+11
| | | | llvm-svn: 237649
* [AST] Put VarDeclBitfields on a dietDavid Majnemer2015-05-194-65/+104
| | | | | | | | VarDeclBitfields contained bits which are never present in parameters. Split these out so that ParmVarDeclBitfields wouldn't grow past 32-bits if another field was added. llvm-svn: 237648
* [modules] Support for merging a parsed definition of a static data member of ↵Richard Smith2015-05-192-14/+35
| | | | | | a class template into an imported but hidden definition. llvm-svn: 237647
OpenPOWER on IntegriCloud