aboutsummaryrefslogtreecommitdiffstats
path: root/test
Commit message (Collapse)AuthorAgeFilesLines
* fix a bug noticed by inspection: when instcombine sinks loads throughChris Lattner2009-11-011-0/+21
| | | | | | | | | phis, it didn't preserve the alignment of the load. This is a missed optimization of the alignment is high and a miscompilation when the alignment is low. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85736 91177308-0d34-0410-b5e6-96231b3b80d8
* convert to filecheck.Chris Lattner2009-11-011-20/+49
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85734 91177308-0d34-0410-b5e6-96231b3b80d8
* We currently only run ipsccp at LTO time, which is silly. It subsumesChris Lattner2009-11-011-0/+19
| | | | | | | | | | | | | | ipconstprop and doesn't take much time. Just run it in its place. This adds a testcase for it, which I plan to expand to cover other "integration" cases, where we expect the optimizer to be able to eliminate various things. Due to phase order issues we've regressed in a number of areas and integration tests are the only way I see to prevent this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85729 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix tests.Evan Cheng2009-11-012-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85723 91177308-0d34-0410-b5e6-96231b3b80d8
* improve x86 codegen support for blockaddress. We now compileChris Lattner2009-11-011-0/+16
| | | | | | | | | | | | | | | | | | | | | | | the testcase into: _test1: ## @test1 ## BB#0: ## %entry leaq L_test1_bb6(%rip), %rax jmpq *%rax L_test1_bb: ## Address Taken LBB1_1: ## %bb movb $1, %al ret L_test1_bb6: ## Address Taken LBB1_2: ## %bb6 movb $2, %al ret Note, it is very very strange that BlockAddressSDNode doesn't carry around TargetFlags. Dan, please fix this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85703 91177308-0d34-0410-b5e6-96231b3b80d8
* Use cbz and cbnz instructions.Evan Cheng2009-10-312-0/+34
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85698 91177308-0d34-0410-b5e6-96231b3b80d8
* vml[as].f32 cause stalls in following advanced SIMD instructions. Avoid usingJim Grosbach2009-10-313-4/+6
| | | | | | them for scalar floating point operations for now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85697 91177308-0d34-0410-b5e6-96231b3b80d8
* Consolidate test filesJim Grosbach2009-10-314-122/+100
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85696 91177308-0d34-0410-b5e6-96231b3b80d8
* Change to use FileCheckJim Grosbach2009-10-311-1/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85695 91177308-0d34-0410-b5e6-96231b3b80d8
* Make tests more explicit about which instructions are expected.Jim Grosbach2009-10-311-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85694 91177308-0d34-0410-b5e6-96231b3b80d8
* Grammar tweak to commentsJim Grosbach2009-10-311-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85693 91177308-0d34-0410-b5e6-96231b3b80d8
* Update test to be more explicit about what instruction sequences are ↵Jim Grosbach2009-10-311-26/+39
| | | | | | expected for each operation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85691 91177308-0d34-0410-b5e6-96231b3b80d8
* Update test to be more explicit about what instruction sequences are ↵Jim Grosbach2009-10-311-3/+16
| | | | | | expected for each operation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85689 91177308-0d34-0410-b5e6-96231b3b80d8
* Expand 64-bit logical shift right inlineJim Grosbach2009-10-311-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85687 91177308-0d34-0410-b5e6-96231b3b80d8
* Expand 64-bit arithmetic shift right inlineJim Grosbach2009-10-311-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85685 91177308-0d34-0410-b5e6-96231b3b80d8
* Force triple; darwin's ASM syntax differs from linux's.Benjamin Kramer2009-10-311-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85676 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85675 91177308-0d34-0410-b5e6-96231b3b80d8
* Add missing colons for FileCheck.Benjamin Kramer2009-10-312-5/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85674 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert to FileCheckJim Grosbach2009-10-311-5/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85673 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85670 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85667 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85643 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a target triple so that this test behaves consistently across hosts.Dan Gohman2009-10-311-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85640 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix the -mattr line for this test so that it passes on hosts that lack SSSE3.Dan Gohman2009-10-301-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85637 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a testcase for the recent duplicate PHI elimination changes.Dan Gohman2009-10-301-0/+21
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85636 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85627 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85622 91177308-0d34-0410-b5e6-96231b3b80d8
* Add missing substitution for %llvmgcc_only.Daniel Dunbar2009-10-301-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85614 91177308-0d34-0410-b5e6-96231b3b80d8
* I forgot to commit this test.Evan Cheng2009-10-301-0/+28
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85608 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85590 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85441 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85421 91177308-0d34-0410-b5e6-96231b3b80d8
* Treat lifetime begin/end markers as allocations/frees respectively for theOwen Anderson2009-10-282-0/+38
| | | | | | | purposes for GVN/DSE. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85383 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85380 91177308-0d34-0410-b5e6-96231b3b80d8
* Add trivial support for the invariance intrinsics to memdep. This logic isOwen Anderson2009-10-281-0/+21
| | | | | | | purely local for now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85378 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85377 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85364 91177308-0d34-0410-b5e6-96231b3b80d8
* Use fconsts and fconstd to materialize small fp constants.Evan Cheng2009-10-281-0/+33
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85362 91177308-0d34-0410-b5e6-96231b3b80d8
* Mark dead physregdefs dead immediately. This helps MachineSink andDan Gohman2009-10-281-0/+15
| | | | | | | MachineLICM and other things which run before LiveVariables is run. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85360 91177308-0d34-0410-b5e6-96231b3b80d8
* Allow constants of different types to share constant pool entriesDan Gohman2009-10-281-0/+19
| | | | | | | if they have compatible encodings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85359 91177308-0d34-0410-b5e6-96231b3b80d8
* rename indbr -> indirectbr to appease the residents of #llvm.Chris Lattner2009-10-281-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85351 91177308-0d34-0410-b5e6-96231b3b80d8
* Add radar number.Dale Johannesen2009-10-271-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85290 91177308-0d34-0410-b5e6-96231b3b80d8
* Testcase for llvm-gcc patch 85284.Dale Johannesen2009-10-271-0/+42
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85287 91177308-0d34-0410-b5e6-96231b3b80d8
* 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85274 91177308-0d34-0410-b5e6-96231b3b80d8
* Add missing testcase.Rafael Espindola2009-10-271-0/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85266 91177308-0d34-0410-b5e6-96231b3b80d8
* change of mind :)Chris Lattner2009-10-271-0/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85258 91177308-0d34-0410-b5e6-96231b3b80d8
* rename test.Chris Lattner2009-10-271-0/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85256 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert Analysis tests to FileCheck in regards to PR5307.Edward O'Callaghan2009-10-275-7/+17
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85241 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix Thumb2 failures by converting them to FileCheck.Bob Wilson2009-10-275-8/+36
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85210 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix the rest of the ARM failures by converting them to FileCheck.Bob Wilson2009-10-277-39/+74
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85208 91177308-0d34-0410-b5e6-96231b3b80d8