summaryrefslogtreecommitdiffstats
path: root/llvm/test
Commit message (Collapse)AuthorAgeFilesLines
* Expand 64-bit logical shift right inlineJim Grosbach2009-10-311-1/+1
| | | | llvm-svn: 85687
* Expand 64-bit arithmetic shift right inlineJim Grosbach2009-10-311-1/+1
| | | | llvm-svn: 85685
* Force triple; darwin's ASM syntax differs from linux's.Benjamin Kramer2009-10-311-1/+1
| | | | llvm-svn: 85676
* Expand 64 bit left shift inline rather than using the libcall. For now, thisJim Grosbach2009-10-311-1/+1
| | | | | | | is unconditional. Making it still use the libcall when optimizing for size would be a good adjustment. llvm-svn: 85675
* Add missing colons for FileCheck.Benjamin Kramer2009-10-312-5/+5
| | | | llvm-svn: 85674
* Convert to FileCheckJim Grosbach2009-10-311-5/+9
| | | | llvm-svn: 85673
* Revert r85667. LoopUnroll currently can't call utility functions whichDan Gohman2009-10-311-2/+0
| | | | | | | auto-update the DominatorTree because it doesn't keep the DominatorTree current while it works. llvm-svn: 85670
* Merge the enhancements from LoopUnroll's FoldBlockIntoPredecessor intoDan Gohman2009-10-311-0/+2
| | | | | | | MergeBlockIntoPredecessor. This makes SimplifyCFG slightly more aggressive, and makes it unnecessary for LoopUnroll to have its own copy of this code. llvm-svn: 85667
* It's safe to remat t2LDRpci; Add PseudoSourceValue to load / store's to ↵Evan Cheng2009-10-311-0/+34
| | | | | | enable more machine licm. More changes coming. llvm-svn: 85643
* Add a target triple so that this test behaves consistently across hosts.Dan Gohman2009-10-311-1/+1
| | | | llvm-svn: 85640
* Fix the -mattr line for this test so that it passes on hosts that lack SSSE3.Dan Gohman2009-10-301-1/+1
| | | | llvm-svn: 85637
* Add a testcase for the recent duplicate PHI elimination changes.Dan Gohman2009-10-301-0/+21
| | | | llvm-svn: 85636
* if basic blocks are destroyed while there are *just* BlockAddress' hanging Chris Lattner2009-10-301-2/+7
| | | | | | | around, then zap them. This is analogous to dangling constantexprs hanging off functions. llvm-svn: 85627
* Fix MachineLICM to use the correct virtual register class whenDan Gohman2009-10-301-0/+26
| | | | | | | | | | unfolding loads for hoisting. getOpcodeAfterMemoryUnfold returns the opcode of the original operation without the load, not the load itself, MachineLICM needs to know the operand index in order to get the correct register class. Extend getOpcodeAfterMemoryUnfold to return this information. llvm-svn: 85622
* Add missing substitution for %llvmgcc_only.Daniel Dunbar2009-10-301-0/+1
| | | | llvm-svn: 85614
* I forgot to commit this test.Evan Cheng2009-10-301-0/+28
| | | | llvm-svn: 85608
* This fixes functions likeRafael Espindola2009-10-301-0/+17
| | | | | | | | | | | void f (int a1, int a2, int a3, int a4, int a5,...) In ARMTargetLowering::LowerFormalArguments if the function has 4 or more regular arguments we used to set VarArgsFrameIndex using an offset of 0, which is only correct if the function has exactly 4 regular arguments. llvm-svn: 85590
* Reimplement BranchFolding change to avoid tail merging for a 1 instructionBob Wilson2009-10-283-3/+3
| | | | | | | common tail, except when the OptimizeForSize function attribute is present. Radar 7338114. llvm-svn: 85441
* Extend getMallocArraySize() to determine the array size if the malloc ↵Victor Hernandez2009-10-282-0/+82
| | | | | | | | | | | | | | argument is: ArraySize * ElementSize ElementSize * ArraySize ArraySize << log2(ElementSize) ElementSize << log2(ArraySize) Refactor isArrayMallocHelper and delete isSafeToGetMallocArraySize, so that there is only 1 copy of the malloc array determining logic. Update users of getMallocArraySize() to not bother calling isArrayMalloc() as well. llvm-svn: 85421
* Treat lifetime begin/end markers as allocations/frees respectively for theOwen Anderson2009-10-282-0/+38
| | | | | | purposes for GVN/DSE. llvm-svn: 85383
* Be more careful about invariance reasoning on "store" queries. Stores still ↵Owen Anderson2009-10-281-0/+15
| | | | | | | | need to depend on Ref and ModRef calls within the invariant region. llvm-svn: 85380
* Add trivial support for the invariance intrinsics to memdep. This logic isOwen Anderson2009-10-281-0/+21
| | | | | | purely local for now. llvm-svn: 85378
* add bitcode reader support for blockaddress. We can now fullyChris Lattner2009-10-281-1/+7
| | | | | | | | | | round trip blockaddress through .ll and .bc files, so add a testcase. There are still a bunch of places in the optimizer and other places that need to be updated to work with these constructs, but at least the basics are in now. llvm-svn: 85377
* Teach MachineLICM to unfold loads from constant memory fromDan Gohman2009-10-282-0/+70
| | | | | | | otherwise unhoistable instructions in order to allow the loads to be hoisted. llvm-svn: 85364
* Use fconsts and fconstd to materialize small fp constants.Evan Cheng2009-10-281-0/+33
| | | | llvm-svn: 85362
* Mark dead physregdefs dead immediately. This helps MachineSink andDan Gohman2009-10-281-0/+15
| | | | | | MachineLICM and other things which run before LiveVariables is run. llvm-svn: 85360
* Allow constants of different types to share constant pool entriesDan Gohman2009-10-281-0/+19
| | | | | | if they have compatible encodings. llvm-svn: 85359
* rename indbr -> indirectbr to appease the residents of #llvm.Chris Lattner2009-10-281-3/+3
| | | | llvm-svn: 85351
* Add radar number.Dale Johannesen2009-10-271-0/+1
| | | | llvm-svn: 85290
* Testcase for llvm-gcc patch 85284.Dale Johannesen2009-10-271-0/+42
| | | | llvm-svn: 85287
* add enough support for indirect branch for the feature test to passChris Lattner2009-10-271-0/+11
| | | | | | | (assembler,asmprinter, bc reader+writer) and document it. Codegen currently aborts on it. llvm-svn: 85274
* Add missing testcase.Rafael Espindola2009-10-271-0/+14
| | | | llvm-svn: 85266
* change of mind :)Chris Lattner2009-10-271-0/+0
| | | | llvm-svn: 85258
* rename test.Chris Lattner2009-10-271-0/+0
| | | | llvm-svn: 85256
* Convert Analysis tests to FileCheck in regards to PR5307.Edward O'Callaghan2009-10-275-7/+17
| | | | llvm-svn: 85241
* Fix Thumb2 failures by converting them to FileCheck.Bob Wilson2009-10-275-8/+36
| | | | llvm-svn: 85210
* Fix the rest of the ARM failures by converting them to FileCheck.Bob Wilson2009-10-277-39/+74
| | | | llvm-svn: 85208
* Fix some more failures by converting to FileCheck.Bob Wilson2009-10-277-23/+44
| | | | llvm-svn: 85207
* Fix a pretty serious misfeature of the inliner: if it inlines a functionChris Lattner2009-10-271-1/+32
| | | | | | | | | | with multiple return values it inserts a PHI to merge them all together. However, if the return values are all the same, it ends up with a pointless PHI and this pointless PHI happens to really block SRoA from happening in at least a silly C++ example written by Doug, but probably others. This fixes rdar://7339069. llvm-svn: 85206
* convert to filecheck.Chris Lattner2009-10-271-5/+8
| | | | llvm-svn: 85205
* Convert to FileCheck, fixing failure due to tab change in the process.Bob Wilson2009-10-271-4/+3
| | | | llvm-svn: 85204
* Convert a few tests to FileCheck for PR5307.Edward O'Callaghan2009-10-263-4/+33
| | | | llvm-svn: 85171
* Code that checks WillNotOverflowSignedAdd before creating an AddDan Gohman2009-10-262-2/+2
| | | | | | can safely use the NSW bit on the Add. llvm-svn: 85164
* Teach BasicAA how to analyze Select instructions, and make it moreDan Gohman2009-10-261-0/+73
| | | | | | aggressive on PHI instructions. llvm-svn: 85158
* Break anti-dependence breaking out into its own class.David Goodwin2009-10-261-2/+2
| | | | llvm-svn: 85127
* reapply r85085 with a bugfix to avoid infinite looping.Chris Lattner2009-10-261-1/+0
| | | | | | | All of the 'demorgan' related xforms need to use dyn_castNotVal, not m_Not. llvm-svn: 85119
* Make LSR's OptimizeShadowIV ignore induction variables with negativeDan Gohman2009-10-261-0/+25
| | | | | | | | | | strides for now, because it doesn't handle them correctly. This fixes a miscompile of SingleSource/Benchmarks/Misc-C++/ray. This problem was usually hidden because indvars transforms such induction variables into negations of canonical induction variables. llvm-svn: 85118
* - Revert some changes from 85044, 85045, and 85047 that broke x86_64 tests andEvan Cheng2009-10-261-0/+171
| | | | | | | | | | | | | | | | | | | | | | | | | | bootstrapping. It's not safe to leave identity subreg_to_reg and insert_subreg around. - Relax register scavenging to allow use of partially "not-live" registers. It's common for targets to operate on registers where the top bits are undef. e.g. s0 = d0 = insert_subreg d0<undef>, s0, 1 ... = d0 When the insert_subreg is eliminated by the coalescer, the scavenger used to complain. The previous fix was to keep to insert_subreg around. But that's brittle and it's overly conservative when we want to use the scavenger to allocate registers. It's actually legal and desirable for other instructions to use the "undef" part of d0. e.g. s0 = d0 = insert_subreg d0<undef>, s0, 1 ... s1 = = s1 = d0 We probably need add a "partial-undef" marker on machine operand so the machine verifier would not complain. llvm-svn: 85091
* Revert 85085. It causes infinite looping during llvm-gcc build.Evan Cheng2009-10-261-0/+1
| | | | llvm-svn: 85090
* Fix gmake check for AuroraUX triple.Edward O'Callaghan2009-10-261-2/+6
| | | | llvm-svn: 85088
OpenPOWER on IntegriCloud