summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/Generic
Commit message (Collapse)AuthorAgeFilesLines
* Don't run RAFast in the optimizing regalloc pipeline.Jakob Stoklund Olesen2012-06-082-2/+2
| | | | | | | | | | | The fast register allocator is not supposed to work in the optimizing pipeline. It doesn't make sense to compute live intervals, run full copy coalescing, and then run RAFast. Fast register allocation in the optimizing pipeline is better done by RABasic. llvm-svn: 158242
* Fix a crash in APInt::lshr when shiftAmt > BitWidth.Chad Rosier2012-06-081-0/+8
| | | | | | Patch by James Benton <jbenton@vmware.com>. llvm-svn: 158213
* test/CodeGen/Generic/APIntLoadStore.ll: Mark as XFAIL:ppc since r157911.NAKAMURA Takumi2012-06-081-0/+1
| | | | llvm-svn: 158209
* Add an insertPass API to TargetPassConfig. <rdar://problem/11498613>Bob Wilson2012-05-301-0/+14
| | | | | | | | | | Besides adding the new insertPass function, this patch uses it to enhance the existing -print-machineinstrs so that the MachineInstrs after a specific pass can be printed. Patch by Bin Zeng! llvm-svn: 157655
* revert my previous patches that introduced an additional parameter to the ↵Nuno Lopes2012-05-222-18/+2
| | | | | | | | objectsize intrinsic. After a lot of discussion, we realized it's not the best option for run-time bounds checking llvm-svn: 157255
* change the objectsize intrinsic signature: add a 3rd parameter to denote the ↵Nuno Lopes2012-05-092-2/+18
| | | | | | | | maximum runtime performance penalty that the user is willing to accept. This commit only adds the parameter. Code taking advantage of it will follow. llvm-svn: 156473
* Move to X86 directory because this fails on non-X86 platforms.Bill Wendling2012-04-161-59/+0
| | | | llvm-svn: 154825
* Don't try to zExt just to check if an integer constant is zero, it mightRafael Espindola2012-04-101-0/+18
| | | | | | not fit in a i64. llvm-svn: 154364
* Add VSELECT to LegalizeVectorTypes::ScalariseVectorResult. Previously it ↵Pete Cooper2012-04-031-0/+8
| | | | | | would crash if it encountered a 1 element VSELECT. Solution is slightly more complicated than just creating a SELET as we have to mask or sign extend the vector condition if it had different boolean contents from the scalar condition. Fixes <rdar://problem/11178095> llvm-svn: 153976
* Add testcase for r153705Bill Wendling2012-03-301-0/+59
| | | | llvm-svn: 153706
* misched: tag a few XFAILs that I plan to fixAndrew Trick2012-03-211-20/+0
| | | | llvm-svn: 153222
* I meant to disable this test, not XFAIL itAndrew Trick2012-03-211-2/+2
| | | | llvm-svn: 153165
* misched: beginning to add unit testsAndrew Trick2012-03-211-0/+20
| | | | llvm-svn: 153163
* Replace all instances of dg.exp file with lit.local.cfg, since all tests are ↵Eli Bendersky2012-02-162-3/+1
| | | | | | | | run with LIT now and now Dejagnu. dg.exp is no longer needed. Patch reviewed by Daniel Dunbar. It will be followed by additional cleanup patches. llvm-svn: 150664
* Move test/CodeGen/Generic/2012-02-01-CoalescerBug.ll to CodeGen/ARM, for ↵NAKAMURA Takumi2012-02-021-26/+0
| | | | | | | | now. It requires TARGETS=arm. I cannot reproduce a fixed issue with other targets. llvm-svn: 149604
* PR11868. The previous loop in LiveIntervals::join would sometimes fall over ifLang Hames2012-02-021-0/+26
| | | | | | | more than two adjacent ranges needed to be merged. The new version should be able to handle an arbitrary sequence of adjancent ranges. llvm-svn: 149588
* Remove all references to the old EH.Bill Wendling2012-01-312-4/+0
| | | | | | There was always the current EH. -- Ministry of Truth llvm-svn: 149335
* Manually upgrade the test suite to specify the flag to cttz and ctlz.Chandler Carruth2011-12-122-20/+20
| | | | | | | | | | | | | | | | | | | | | | | I followed three heuristics for deciding whether to set 'true' or 'false': - Everything target independent got 'true' as that is the expected common output of the GCC builtins. - If the target arch only has one way of implementing this operation, set the flag in the way that exercises the most of codegen. For most architectures this is also the likely path from a GCC builtin, with 'true' being set. It will (eventually) require lowering away that difference, and then lowering to the architecture's operation. - Otherwise, set the flag differently dependending on which target operation should be tested. Let me know if anyone has any issue with this pattern or would like specific tests of another form. This should allow the x86 codegen to just iteratively improve as I teach the backend how to differentiate between the two forms, and everything else should remain exactly the same. llvm-svn: 146370
* Remove the the test which checks the saving of a vector of booleans into memory.Nadav Rotem2011-10-161-11/+0
| | | | | | | | The decision was to pack the bits. Currently no codegen supports this. Currently, all of the bits in the vector are saved into the same address in memory. llvm-svn: 142149
* PR11004: Inline memcpy to avoid generating nested call sequence. Un-XFAIL ↵David Meyer2011-09-261-1/+0
| | | | | | 2011-06-09-TailCallByVal and 2010-11-04-BigByval llvm-svn: 140516
* This test is completely invalid with the modern EH model. Delete.Bill Wendling2011-09-201-17/+0
| | | | llvm-svn: 140213
* This test is already covered by llvm/trunk/test/CodeGen/X86/vsel.llNadav Rotem2011-09-081-15/+0
| | | | llvm-svn: 139288
* Add X86-SSE4 codegen support for vector-select.Nadav Rotem2011-09-081-1/+1
| | | | llvm-svn: 139285
* Revert r129875, XFAILing this test for arm, since the fix was reverted.Dan Gohman2011-09-031-0/+1
| | | | llvm-svn: 139058
* Try to eliminate the use of the 'unwind' instruction.Bill Wendling2011-09-021-1/+1
| | | | llvm-svn: 139046
* XFAIL this test on arm until the backend is fixed.Benjamin Kramer2011-09-011-0/+3
| | | | llvm-svn: 138955
* Revert r138894. This was failing on cmake-clang-i686-msvc10.Bill Wendling2011-08-311-3/+0
| | | | llvm-svn: 138900
* Update more tests to the new EH scheme.Bill Wendling2011-08-311-0/+3
| | | | llvm-svn: 138894
* Revert r138606 until LowerInvoke has been converted to the new EH scheme.Bill Wendling2011-08-261-4/+1
| | | | llvm-svn: 138656
* Update to the new EH scheme.Bill Wendling2011-08-258-9/+40
| | | | llvm-svn: 138606
* LSR wants to split the landing pad's critical edge. Let it do it, but use theBill Wendling2011-08-251-0/+29
| | | | | | proper function to do it. llvm-svn: 138550
* Comment correction.Andrew Trick2011-07-121-2/+3
| | | | llvm-svn: 134958
* Land the long talked about "type system rewrite" patch. ThisChris Lattner2011-07-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | patch brings numerous advantages to LLVM. One way to look at it is through diffstat: 109 files changed, 3005 insertions(+), 5906 deletions(-) Removing almost 3K lines of code is a good thing. Other advantages include: 1. Value::getType() is a simple load that can be CSE'd, not a mutating union-find operation. 2. Types a uniqued and never move once created, defining away PATypeHolder. 3. Structs can be "named" now, and their name is part of the identity that uniques them. This means that the compiler doesn't merge them structurally which makes the IR much less confusing. 4. Now that there is no way to get a cycle in a type graph without a named struct type, "upreferences" go away. 5. Type refinement is completely gone, which should make LTO much MUCH faster in some common cases with C++ code. 6. Types are now generally immutable, so we can use "Type *" instead "const Type *" everywhere. Downsides of this patch are that it removes some functions from the C API, so people using those will have to upgrade to (not yet added) new API. "LLVM 3.0" is the right time to do this. There are still some cleanups pending after this, this patch is large enough as-is. llvm-svn: 134829
* more tests not making the jump into the brave new world.Chris Lattner2011-07-092-878/+0
| | | | llvm-svn: 134820
* Added a testcase for PR10220.Lang Hames2011-07-071-0/+15
| | | | llvm-svn: 134573
* Introduce "expect" intrinsic instructions.Jakub Staszak2011-07-061-0/+223
| | | | llvm-svn: 134516
* Handle debug info for i128 constants.Devang Patel2011-06-241-25/+0
| | | | llvm-svn: 133821
* rip out a ton of intrinsic modernization logic from AutoUpgrade.cpp, which isChris Lattner2011-06-183-176/+6
| | | | | | | | | for pre-2.9 bitcode files. We keep x86 unaligned loads, movnt, crc32, and the target indep prefetch change. As usual, updating the testsuite is a PITA. llvm-svn: 133337
* remove asmparser support for the old getresult instruction, which has been ↵Chris Lattner2011-06-172-8/+2
| | | | | | subsumed by extractvalue. llvm-svn: 133247
* Remove support for using "foo" as symbols instead of %"foo". This is ancientChris Lattner2011-06-171-6/+6
| | | | | | | syntax and has been long obsolete. As usual, updating the tests is the nasty part of this. llvm-svn: 133242
* manually upgrade a bunch of tests to modern syntax, and remove some thatChris Lattner2011-06-171-28/+0
| | | | | | are either unreduced or only test old syntax. llvm-svn: 133228
* Rename the test. Thanks Cameron! Use shorter/generic names.Anna Zaks2011-06-161-12/+12
| | | | llvm-svn: 133115
* Function::getNumBlockIDs() should be used instead of Function::size() to set ↵Anna Zaks2011-06-161-0/+81
| | | | | | the upper limit on the block IDs since basic blocks might get removed (simplified away) after being initially numbered. Plus the test case, in which SelectionDAGBuilder::visitBr() calls llvm::MachineFunction::removeFromMBBNumbering(), which introduces the hole in numbering leading to an assert in llc (prior to the fix). llvm-svn: 133113
* Move the legalizer tests to the X86 directory because the test uses the x86Nadav Rotem2011-06-071-91/+0
| | | | | | codegen. Thanks Galina. llvm-svn: 132706
* Add methods to support the integer-promotion of vector types. Methods toNadav Rotem2011-06-061-1/+72
| | | | | | legalize SDNodes such as BUILD_VECTOR, EXTRACT_VECTOR_ELT, etc. llvm-svn: 132689
* TypeLegalizer: Add support for passing of vector-promoted types in registers ↵Nadav Rotem2011-06-041-0/+20
| | | | | | (copyFromParts/copyToParts). llvm-svn: 132649
* This patch is another step in the direction of adding vector select. In thisNadav Rotem2011-06-011-0/+15
| | | | | | | | | patch we add a flag to enable a new type legalization decision - to promote integer elements in vectors. Currently, the rest of the codegen does not support this kind of legalization. This flag will be removed when the transition is complete. llvm-svn: 132394
* Move test for appropriate directory.Galina Kistanova2011-05-171-32/+0
| | | | llvm-svn: 131477
* Make codegen able to handle values of empty types. This is one wayRafael Espindola2011-05-131-0/+81
| | | | | | to fix PR9900. I will keep it open until sable is able to comment on it. llvm-svn: 131294
* Un-XFAIL this test for ARM. <rdar://problem/7662569>Stuart Hastings2011-04-201-1/+0
| | | | llvm-svn: 129875
OpenPOWER on IntegriCloud