summaryrefslogtreecommitdiffstats
path: root/llvm/test
Commit message (Collapse)AuthorAgeFilesLines
* Add support to ADCE for pruning unreachable blocks. This addresses the finalOwen Anderson2008-07-021-0/+37
| | | | | | part of PR2509. llvm-svn: 53038
* A better fix for PR2503 that doesn't pessimize GVN in the presence of ↵Owen Anderson2008-07-021-0/+36
| | | | | | unreachable blocks. llvm-svn: 53032
* Considering predecessors of exit blocks getsDale Johannesen2008-07-011-1/+1
| | | | | | us a little more tail merging. llvm-svn: 52986
* Implement split and scalarize for SELECT_CC, fixing PR2504Chris Lattner2008-06-301-0/+9
| | | | llvm-svn: 52887
* Regression test for PR2443.Duncan Sands2008-06-273-1/+25
| | | | llvm-svn: 52826
* Use the c modifier to tell llvm-ar not to issue aDuncan Sands2008-06-271-2/+2
| | | | | | | warning when creating the archive (the warning causes the test to fail). llvm-svn: 52824
* test doesn't need eh infoChris Lattner2008-06-271-2/+2
| | | | llvm-svn: 52811
* when linking globals, make sure to preserve the address space of the global.Chris Lattner2008-06-271-0/+9
| | | | llvm-svn: 52810
* XFAIL for now.Evan Cheng2008-06-261-0/+1
| | | | llvm-svn: 52795
* Use the -enable-pre flag so this test doesn't fail.Owen Anderson2008-06-261-1/+1
| | | | llvm-svn: 52784
* Make LLVM compile on DragonFly BSD (PR2499).Matthijs Kooijman2008-06-261-1/+1
| | | | | | Patch by Hasso Tepper! llvm-svn: 52781
* Allow for rounding up of stack frame.Dale Johannesen2008-06-261-1/+1
| | | | llvm-svn: 52751
* when we know the signbit of an input to uint_to_fp is zero,Chris Lattner2008-06-261-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | change it to sint_to_fp on targets where that is cheaper (and visaversa of course). This allows us to compile uint_to_fp to: _test: movl 4(%esp), %eax shrl $23, %eax cvtsi2ss %eax, %xmm0 movl 8(%esp), %eax movss %xmm0, (%eax) ret instead of: .align 3 LCPI1_0: ## double .long 0 ## double least significant word 4.5036e+15 .long 1127219200 ## double most significant word 4.5036e+15 .text .align 4,0x90 .globl _test _test: subl $12, %esp movl 16(%esp), %eax shrl $23, %eax movl %eax, (%esp) movl $1127219200, 4(%esp) movsd (%esp), %xmm0 subsd LCPI1_0, %xmm0 cvtsd2ss %xmm0, %xmm0 movl 20(%esp), %eax movss %xmm0, (%eax) addl $12, %esp ret llvm-svn: 52747
* - Fix a x86 vector isel bug: illegal transformation of a vector_shuffle into aEvan Cheng2008-06-251-0/+9
| | | | | | | | shift. - Add a readme entry for a missing vector_shuffle optimization that results in awful codegen. llvm-svn: 52740
* simplify shell syntax to work better on solaris, patch byChris Lattner2008-06-251-1/+1
| | | | | | Nathan Keynes! llvm-svn: 52721
* Added MemOperands to Atomic operations since Atomics touches memory.Mon P Wang2008-06-253-19/+19
| | | | | | | | Added abstract class MemSDNode for any Node that have an associated MemOperand Changed atomic.lcs => atomic.cmp.swap, atomic.las => atomic.load.add, and atomic.lss => atomic.load.sub llvm-svn: 52706
* Fix PR2488, a case where we deleted stack restores too aggressively.Chris Lattner2008-06-251-0/+39
| | | | llvm-svn: 52702
* Enable two-address remat by default.Evan Cheng2008-06-252-1/+68
| | | | llvm-svn: 52701
* v2f32 is now a valid (MMX) type which breaks thisDale Johannesen2008-06-241-3/+3
| | | | | | | | | test (doesn't work for any MMX vector types, it's not me). Rewritten to use v2i16 which is generic and going to stay that way; I think that preserves the point of the test. llvm-svn: 52692
* Revert 52645, the loop unroller changes. It caused a regression in 252.eon.Dan Gohman2008-06-242-72/+0
| | | | llvm-svn: 52688
* Commit the new DeadArgElim pass again, this time with the gcc bootstrap ↵Matthijs Kooijman2008-06-243-1/+89
| | | | | | | | failures fixed. Also add a testcase to reproduce the gcc bootstrap failure in very much reduced form. llvm-svn: 52677
* If it's determined safe, remat MOV32r0 (i.e. xor r, r) and others as it is ↵Evan Cheng2008-06-241-0/+45
| | | | | | instead of using the longer MOV32ri instruction. llvm-svn: 52670
* This situation can occur:Bill Wendling2008-06-231-0/+25
| | | | | | | | | | | | | | | | | | | ,------. | | | v | t2 = phi ... t1 ... | | | v | t1 = ... | ... = ... t1 ... | | `------' where there is a use in a PHI node that's a predecessor to the defining block. We don't want to mark all predecessors as having the value "alive" in this case. Also, the assert was too restrictive and didn't handle this case. llvm-svn: 52655
* Revamp the loop unroller, extending it to correctly update PHI nodesDan Gohman2008-06-232-0/+72
| | | | | | | | in the presence of out-of-loop users of in-loop values and the trip count is not a known multiple of the unroll count, and to be a bit simpler overall. This fixes PR2253. llvm-svn: 52645
* Make test work on non-x86 machines (like my G4 PPC).Bill Wendling2008-06-231-2/+2
| | | | llvm-svn: 52619
* Improve LSR's dead-phi detection to handle use-def cyclesDan Gohman2008-06-221-0/+21
| | | | | | with more than two nodes. llvm-svn: 52617
* Fix PR2369 by making scalarrepl more careful about promoting Chris Lattner2008-06-221-0/+18
| | | | | | | | | structures. Its default threshold is to promote things that are smaller than 128 bytes, which is sane. However, it is not sane to do this for things that turn into 128 *registers*. Add a cap on the number of registers introduced, defaulting to 128/4=32. llvm-svn: 52611
* Fix for PR2479: correctly optimize expressions like (a > 13) & (a == Eli Friedman2008-06-211-0/+11
| | | | | | | | 15). See also PR1800, which is about the signed case. llvm-svn: 52608
* This file is empty.Duncan Sands2008-06-211-0/+0
| | | | llvm-svn: 52596
* Turn off llvm-gcc warnings when running "make check".Duncan Sands2008-06-211-2/+2
| | | | llvm-svn: 52595
* Support for load/store of expanded float types. IDuncan Sands2008-06-211-0/+10
| | | | | | | don't know if a truncating store is possible here, but added support for it anyway. llvm-svn: 52577
* Undo spill weight tweak. Need to investigate the performance regressions.Evan Cheng2008-06-213-3/+3
| | | | llvm-svn: 52572
* Back out Matthijs' DAE patches. It's miscompiling gcc driver.Evan Cheng2008-06-211-39/+0
| | | | llvm-svn: 52570
* Add testcase that checks that DeadArgElim doesn't touch stuff it shouldn't ↵Matthijs Kooijman2008-06-201-0/+36
| | | | | | touch. llvm-svn: 52540
* Recommit r52459, rewriting of the dead argument elimination pass.Matthijs Kooijman2008-06-201-0/+39
| | | | | | | | | | | | This is a fixed version that no longer uses multimap::equal_range, which resulted in a pointer invalidation problem. Also, DAE::InspectedFunctions was not really necessary, so it got removed. Lastly, this version no longer applies the extra arg hack on functions who did not have any arguments to start with. llvm-svn: 52532
* Fix a warning, closing PR2452Chris Lattner2008-06-201-3/+3
| | | | llvm-svn: 52529
* Fix a warning.Chris Lattner2008-06-201-3/+1
| | | | llvm-svn: 52528
* Fix an error handling redefinition of linkonce functions where theChris Lattner2008-06-202-1/+9
| | | | | | types differ. Patch by Nathan Keynes! llvm-svn: 52527
* fix a warning.Chris Lattner2008-06-201-4/+2
| | | | llvm-svn: 52526
* Fix PR2471, which is a bug involving an invalid promotion from a conditional ↵Chris Lattner2008-06-201-0/+16
| | | | | | load. llvm-svn: 52525
* ISD::UNDEF should be expanded recursively / iteratively.Evan Cheng2008-06-191-0/+6
| | | | llvm-svn: 52508
* Modify some ipconstprop tests to also test with invokes.Matthijs Kooijman2008-06-192-2/+13
| | | | llvm-svn: 52491
* Fix a bug with <8 x i16> shuffle lowering on X86 where parts of the Eli Friedman2008-06-191-0/+10
| | | | | | | | | | shuffle could be skipped. The check is invalid because the loop index i doesn't correspond to the element actually inserted. The correct check is already done a few lines earlier, for whether the element is already in the right spot, so this shouldn't have any effect on the codegen for code that was already correct. llvm-svn: 52486
* New test case.Evan Cheng2008-06-191-0/+17
| | | | llvm-svn: 52483
* This also got better (55 - 51 instructions). But doing one more ↵Evan Cheng2008-06-191-1/+1
| | | | | | re-materialization. llvm-svn: 52482
* This got better.Evan Cheng2008-06-191-1/+1
| | | | llvm-svn: 52481
* Remove this test until the corresponding patch is reapplied because it's ↵Owen Anderson2008-06-181-39/+0
| | | | | | causing make check to crash for some people. llvm-svn: 52473
* Add local PRE to GVN. This only operates in cases where it would not ↵Owen Anderson2008-06-181-0/+18
| | | | | | | | increase code size, namely when the instantiated expression would only need to be created in one predecessor. llvm-svn: 52471
* Rewrite the DeadArgumentElimination pass, to use a more explicit tracking ofMatthijs Kooijman2008-06-181-0/+39
| | | | | | | | | | | | | dependencies between return values and/or arguments. Also make the handling of arguments and return values the same. The pass now looks properly inside returned structs, but only at the first level (ie, not inside nested structs). Also add a testcase for testing various variations of (multiple) dead rerturn values. llvm-svn: 52459
* Reapply r52397 (make IPConstProp promote returned arguments), but fixed thisMatthijs Kooijman2008-06-181-0/+46
| | | | | | | | time. Sorry for the trouble! This time, also add a testcase, which I should have done in the first place... llvm-svn: 52455
OpenPOWER on IntegriCloud