summaryrefslogtreecommitdiffstats
path: root/llvm/test
Commit message (Collapse)AuthorAgeFilesLines
* optimize strstr, PR5783Chris Lattner2009-12-151-0/+48
| | | | llvm-svn: 91438
* Convert llvmc tests to FileCheck.Mikhail Glushenkov2009-12-1513-24/+41
| | | | llvm-svn: 91420
* Support hook invocation from 'append_cmd'.Mikhail Glushenkov2009-12-152-0/+52
| | | | llvm-svn: 91419
* For fastcc on x86, let ECX be used as a return register after EAX and EDXKenneth Uildriks2009-12-151-0/+15
| | | | llvm-svn: 91410
* Disable 91381 for now. It's miscompiling ARMISelDAG2DAG.cpp.Evan Cheng2009-12-151-0/+1
| | | | llvm-svn: 91405
* Validate the generated C++ code in llvmc tests.Mikhail Glushenkov2009-12-1516-9/+25
| | | | | | | | | | Checks that the code generated by 'tblgen --emit-llvmc' can be actually compiled. Also fixes two bugs found in this way: - forward_transformed_value didn't work with non-list arguments - cl::ZeroOrOne is now called cl::Optional llvm-svn: 91404
* Pipe 'grep' output to 'count'.Mikhail Glushenkov2009-12-151-2/+2
| | | | llvm-svn: 91403
* Allow $CALL(Hook, '$INFILE') for non-join tools.Mikhail Glushenkov2009-12-151-0/+13
| | | | llvm-svn: 91402
* Make 91378 more conservative.Evan Cheng2009-12-151-13/+0
| | | | | | | 1. Only perform (zext (shl (zext x), y)) -> (shl (zext x), y) when y is a constant. This makes sure it remove at least one zest. 2. If the shift is a left shift, make sure the original shift cannot shift out bits. llvm-svn: 91399
* Use sbb x, x to materialize carry bit in a GPR. The result is all one's or ↵Evan Cheng2009-12-151-0/+23
| | | | | | all zero's. llvm-svn: 91381
* Fold (zext (and x, cst)) -> (and (zext x), cst).Evan Cheng2009-12-151-4/+4
| | | | llvm-svn: 91380
* Propagate zest through logical shift.Evan Cheng2009-12-152-0/+51
| | | | llvm-svn: 91378
* Fix integer cast code to handle vector types.Dan Gohman2009-12-141-0/+13
| | | | llvm-svn: 91362
* Add radar fixed in comment.Eric Christopher2009-12-141-5/+6
| | | | llvm-svn: 91312
* Remove empty file completelyShantonu Sen2009-12-141-0/+0
| | | | llvm-svn: 91277
* revert r91184, because it causes a crash on a .bc file I justChris Lattner2009-12-141-68/+0
| | | | | | sent to Bob. llvm-svn: 91268
* Add a test for the 'init' option property.Mikhail Glushenkov2009-12-141-0/+22
| | | | llvm-svn: 91259
* Disable r91104 for x86. It causes partial register stall which pessimize ↵Evan Cheng2009-12-121-1/+3
| | | | | | code in 32-bit. llvm-svn: 91223
* Fix some CHECK lines which were ignored by accident.Benjamin Kramer2009-12-122-8/+8
| | | | llvm-svn: 91214
* Revise scalar replacement to be more flexible about handle bitcasts and GEPs.Bob Wilson2009-12-111-0/+68
| | | | | | | | | | | | | | | While scanning through the uses of an alloca, keep track of the current offset relative to the start of the alloca, and check memory references to see if the offset & size correspond to a component within the alloca. This has the nice benefit of unifying much of the code from isSafeUseOfAllocation, isSafeElementUse, and isSafeUseOfBitCastedAllocation. The code to rewrite the uses of a promoted alloca, after it is determined to be safe, is reorganized in the same way. Also, when rewriting GEP instructions, mark them as "in-bounds" since all the indices are known to be safe. llvm-svn: 91184
* Lower setcc branchless, if this is profitable.Anton Korobeynikov2009-12-111-0/+116
| | | | | | Based on the patch by Brian Lucas! llvm-svn: 91175
* Implement vector widening, splitting, and scalarizing for SIGN_EXTEND_INREG.Dan Gohman2009-12-111-0/+37
| | | | llvm-svn: 91158
* Change this to the correct PR number.Dan Gohman2009-12-111-1/+1
| | | | llvm-svn: 91148
* Make getUniqueExitBlocks's precondition assert more precise, toDan Gohman2009-12-111-0/+22
| | | | | | avoid spurious failures. This fixes PR5758. llvm-svn: 91147
* Fix the result type of SELECT nodes lowered from Select instructions withDan Gohman2009-12-111-0/+15
| | | | | | aggregate return values. This fixes PR5754. llvm-svn: 91145
* Honour setHasCalls() set from isel.Anton Korobeynikov2009-12-111-0/+63
| | | | | | | This is used in some weird cases like general dynamic TLS model. This fixes PR5723 llvm-svn: 91144
* Tests for 91103 and 91104.Evan Cheng2009-12-111-0/+93
| | | | llvm-svn: 91105
* Add a test for the fix in revision 91009.Eric Christopher2009-12-101-0/+20
| | | | llvm-svn: 91062
* It's not safe to coalesce a move where src and dst registers have different ↵Evan Cheng2009-12-101-0/+40
| | | | | | | | subregister indices. e.g.: %reg16404:1<def> = MOV8rr %reg16412:2<kill> llvm-svn: 91061
* Fix PR5744, a case where we were getting the pointer size instead of theChris Lattner2009-12-101-0/+16
| | | | | | | | value size. This only manifested when memdep inprecisely returns clobber, which is do to a caching issue in the PR5744 testcase. We can 'efficiently emulate' this by using '-no-aa' llvm-svn: 91004
* Fix test.Evan Cheng2009-12-091-1/+1
| | | | llvm-svn: 90988
* Optimize splat of a scalar load into a shuffle of a vector load when it's ↵Evan Cheng2009-12-091-0/+43
| | | | | | | | | | | | legal. e.g. vector_shuffle (scalar_to_vector (i32 load (ptr + 4))), undef, <0, 0, 0, 0> => vector_shuffle (v4i32 load ptr), undef, <1, 1, 1, 1> iff ptr is 16-byte aligned (or can be made into 16-byte aligned). llvm-svn: 90984
* fix hte last remaining known (by me) phi translation bug. When we reanalyzeChris Lattner2009-12-091-4/+16
| | | | | | | clobbers to forward pieces of large stores to small loads, we need to consider the properly phi translated pointer in the store block. llvm-svn: 90978
* Add a minor optimization: if we haven't changed the operands of anChris Lattner2009-12-091-66/+0
| | | | | | | | | | add, there is no need to scan the world to find the same add again. This invalidates the previous testcase, which wasn't wonderful anyway, because it needed a run of instcombine to permute the use-lists in just the right way to before GVN was run (so it was really fragile). Not a big loss. llvm-svn: 90973
* fix PR5733, a case where we'd replace an add with a lexically identical Chris Lattner2009-12-091-0/+66
| | | | | | binary operator that wasn't an add. In this case, a xor. Whoops. llvm-svn: 90971
* merge crash-2.ll into crash.llChris Lattner2009-12-092-43/+43
| | | | llvm-svn: 90969
* the code in GVN that tries to forward large loads to small Chris Lattner2009-12-091-0/+54
| | | | | | | | stores is not phi translating, thus it miscompiles really crazy testcases. This is from inspection, I haven't seen this in the wild. llvm-svn: 90930
* Switch GVN and memdep to use PHITransAddr, which correctly handlesChris Lattner2009-12-091-1/+50
| | | | | | | | | | | | | | | | | | | | | | | phi translation of complex expressions like &A[i+1]. This has the following benefits: 1. The phi translation logic is all contained in its own class with a strong interface and verification that it is self consistent. 2. The logic is more correct than before. Previously, if intermediate expressions got PHI translated, we'd miss the update and scan for the wrong pointers in predecessor blocks. @phi_trans2 is a testcase for this. 3. We have a lot less code in memdep. We can handle phi translation across blocks of things like @phi_trans3, which is pretty insane :). This patch should fix the miscompiles of 255.vortex, and I tested it with a bootstrap of llvm-gcc, llvm-test and dejagnu of course. llvm-svn: 90926
* Teach InferPtrAlignment to infer GV+cst alignment and use it to simplify x86 ↵Evan Cheng2009-12-091-3/+3
| | | | | | isl lowering code. llvm-svn: 90925
* Remove tests that are not suitable anymore. Plus they are not testing the ↵Devang Patel2009-12-098-1035/+0
| | | | | | original bugfixes anymore. These tests were inserted to check bug fixes in code that handled debug info intrinsics. These intrinsics are no longer used and now llvm parser simply ignores old .dbg intrinsics from these dead tests. llvm-svn: 90923
* Revert 90858 90875 and 90805 for now.Devang Patel2009-12-081-18/+0
| | | | llvm-svn: 90898
* - Support inline asm 'w' constraint for 128-bit vector types.Evan Cheng2009-12-081-0/+13
| | | | | | - Also support the 'q' NEON registers asm code. llvm-svn: 90894
* CMake/lit: Add llvm_{unit_,}site_config parameters, and always pass them ↵Daniel Dunbar2009-12-083-0/+14
| | | | | | when running tests from the project files. llvm-svn: 90869
* Do not try to push dead variable's debug info into namespace info.Devang Patel2009-12-081-0/+18
| | | | llvm-svn: 90857
* Teach GlobalOpt to delete aliases with internal linkage (afterDuncan Sands2009-12-081-1/+13
| | | | | | | forwarding any uses). GlobalDCE can also do this, but is only run at -O3. llvm-svn: 90850
* Reduce (cmp 0, and_su (foo, bar)) into (bit foo, bar). This saves extra ↵Anton Korobeynikov2009-12-081-0/+166
| | | | | | instruction. Patch inspired by Brian Lucas! llvm-svn: 90819
* Test case for 90787.Evan Cheng2009-12-071-0/+15
| | | | llvm-svn: 90791
* Use FileCheck and set nounwind on calls.David Greene2009-12-071-6/+7
| | | | llvm-svn: 90790
* Don't enable the post-RA scheduler on x86 except at -O3. In itsDan Gohman2009-12-078-8/+8
| | | | | | current form, it is too expensive in compile time. llvm-svn: 90781
* Implement 'forward_value' and 'forward_transformed_value'.Mikhail Glushenkov2009-12-072-0/+42
| | | | llvm-svn: 90770
OpenPOWER on IntegriCloud