aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Disable for now. This is pessimizing code.Evan Cheng2008-02-201-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47354 91177308-0d34-0410-b5e6-96231b3b80d8
* Add some comments to Intrinsic::getDeclaration to clarify how toDan Gohman2008-02-201-0/+6
| | | | | | | get declarations for overloaded intrinsics. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47353 91177308-0d34-0410-b5e6-96231b3b80d8
* Add Alignment field to ParameterAttributes andDale Johannesen2008-02-192-1/+25
| | | | | | | | | treat more or less rationally in interface functions, subject to change. No functional change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47352 91177308-0d34-0410-b5e6-96231b3b80d8
* Add hidden option -x86-fold-and-in-test to test the effect the test / and ↵Evan Cheng2008-02-192-1/+7
| | | | | | folding change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47351 91177308-0d34-0410-b5e6-96231b3b80d8
* regenerateDevang Patel2008-02-193-1040/+1062
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47350 91177308-0d34-0410-b5e6-96231b3b80d8
* ParseDevang Patel2008-02-192-1/+11
| | | | | | | %b = getresult {i32, i32} %a, i32 1 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47349 91177308-0d34-0410-b5e6-96231b3b80d8
* Add GetResultInst. First step for multiple return value support.Devang Patel2008-02-196-1/+88
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47348 91177308-0d34-0410-b5e6-96231b3b80d8
* Generated files for checkin 47342.Dale Johannesen2008-02-193-267/+267
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47344 91177308-0d34-0410-b5e6-96231b3b80d8
* Forgot a file, goes with 47342.Dale Johannesen2008-02-191-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47343 91177308-0d34-0410-b5e6-96231b3b80d8
* Expand ParameterAttributes to 32 bits (in preparationDale Johannesen2008-02-1916-96/+122
| | | | | | | | | for adding alignment info, not there yet). Clean up interfaces to reference ParameterAttributes consistently. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47342 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixed bug in APInt::Profile() where the BitWidth field was not included in theTed Kremenek2008-02-191-0/+2
| | | | | | | | profile of the APSInt object. This caused unexpected Profile collisions where none should have occurred. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47338 91177308-0d34-0410-b5e6-96231b3b80d8
* fix some byval problems in the cbe. Closes PR2065Andrew Lenharth2008-02-191-7/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47337 91177308-0d34-0410-b5e6-96231b3b80d8
* random cleanups.Chris Lattner2008-02-191-7/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47334 91177308-0d34-0410-b5e6-96231b3b80d8
* this test requires sse2Chris Lattner2008-02-191-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47331 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't fold and's into test instructions if they have multiple uses.Chris Lattner2008-02-192-6/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | This compiles test-nofold.ll into: _test: movl $15, %ecx andl 4(%esp), %ecx testl %ecx, %ecx movl $42, %eax cmove %ecx, %eax ret instead of: _test: movl 4(%esp), %eax movl %eax, %ecx andl $15, %ecx testl $15, %eax movl $42, %eax cmove %ecx, %eax ret git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47330 91177308-0d34-0410-b5e6-96231b3b80d8
* rename tests to avoid a test- prefix when they aren't related to the test ↵Chris Lattner2008-02-1910-0/+0
| | | | | | instruction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47329 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a compiler warning.Duncan Sands2008-02-191-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47328 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove llvm-upgrade and update tests.Tanya Lattner2008-02-1951-1306/+1302
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47325 91177308-0d34-0410-b5e6-96231b3b80d8
* dead passChris Lattner2008-02-191-16/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47324 91177308-0d34-0410-b5e6-96231b3b80d8
* remove the LowerSelect pass. The last client was the old Sparc backend, ↵Chris Lattner2008-02-198-120/+0
| | | | | | which is long dead by now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47323 91177308-0d34-0410-b5e6-96231b3b80d8
* remove the lower packed pass. It can never work and even the parts that Chris Lattner2008-02-193-456/+0
| | | | | | | | could work don't work fully. This fixes PR1705. Oh yeah, we don't have packed types anymore either ;-) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47322 91177308-0d34-0410-b5e6-96231b3b80d8
* Refactor this method a bit, and correct a test that was completely wrong but ↵Owen Anderson2008-02-191-7/+11
| | | | | | happened to work out anyways. :-) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47321 91177308-0d34-0410-b5e6-96231b3b80d8
* isa+cast -> dyncast.Chris Lattner2008-02-191-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47320 91177308-0d34-0410-b5e6-96231b3b80d8
* simplify this code again, try 2 :)Chris Lattner2008-02-191-7/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47319 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a comment.Owen Anderson2008-02-191-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47318 91177308-0d34-0410-b5e6-96231b3b80d8
* In addition to arguments passed to it, memcpy (and all other calls) can ↵Owen Anderson2008-02-191-1/+2
| | | | | | ModRef pointers that alias their arguments as well. This fixes PR2057. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47317 91177308-0d34-0410-b5e6-96231b3b80d8
* Major improvements to yesterday's return slot optimization. Remove some ↵Owen Anderson2008-02-191-14/+39
| | | | | | | | | unneccessary constraints, and add some others that should have been in from the first place. Document the whole thing better. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47315 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix some minor issues folding undef, PR2052Chris Lattner2008-02-191-1/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47314 91177308-0d34-0410-b5e6-96231b3b80d8
* fdiv/frem of undef can produce undef, because the undef operand Chris Lattner2008-02-191-4/+11
| | | | | | | | | can be a SNaN. We could be more aggressive and turn this into unreachable, but that is less nice, and not really worth it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47313 91177308-0d34-0410-b5e6-96231b3b80d8
* regenerateChris Lattner2008-02-193-3431/+4591
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47312 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR2060 by rejecting invalid types for integer constants.Chris Lattner2008-02-192-11/+21
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47311 91177308-0d34-0410-b5e6-96231b3b80d8
* Factor the profitability check for return slot optimization out into a ↵Owen Anderson2008-02-191-14/+26
| | | | | | | | | static function. At some point in the future, this check will become smarter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47310 91177308-0d34-0410-b5e6-96231b3b80d8
* An sret parameter is required to be the first parameter, so there's no need ↵Owen Anderson2008-02-191-8/+3
| | | | | | | | | to loop over all the parameters of the callee looking for it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47309 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't spew stats to stderr.Nick Lewycky2008-02-191-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47308 91177308-0d34-0410-b5e6-96231b3b80d8
* Cleanup some of my patches from yesterday. Refactor the check for which xformOwen Anderson2008-02-191-22/+23
| | | | | | | | to apply to a memcpy into processInstruction. Also, fix a bug in the check due to missing braces. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47307 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix up the run line for this new test.Nick Lewycky2008-02-191-1/+1
| | | | | | | llc: for the -info-output-file option: requires a value! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47306 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix Transforms/GVN/memcpy.ll, which Chris broke in r47275 by reordering the ↵Owen Anderson2008-02-191-1/+2
| | | | | | branches. memcpy's are a kind of CallInst. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47305 91177308-0d34-0410-b5e6-96231b3b80d8
* New test.Evan Cheng2008-02-191-0/+219
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47302 91177308-0d34-0410-b5e6-96231b3b80d8
* PR1909: Tail merging pass ran wild. It makes no sense to merge blocks in ↵Evan Cheng2008-02-191-3/+12
| | | | | | order to save a single instruction since a branch will be inserted for each BB. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47301 91177308-0d34-0410-b5e6-96231b3b80d8
* Me not like duplicated comments.Evan Cheng2008-02-191-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47300 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove llvm-upgrade and update tests.Tanya Lattner2008-02-1911-137/+118
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47297 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove llvm-upgrade and update tests.Tanya Lattner2008-02-19162-3373/+3173
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47296 91177308-0d34-0410-b5e6-96231b3b80d8
* - When DAG combiner is folding a bit convert into a BUILD_VECTOR, it should ↵Evan Cheng2008-02-188-60/+129
| | | | | | | | | check if it's essentially a SCALAR_TO_VECTOR. Avoid turning (v8i16) <10, u, u, u> to <10, 0, u, u, u, u, u, u>. Instead, simply convert it to a SCALAR_TO_VECTOR of the proper type. - X86 now normalize SCALAR_TO_VECTOR to (BIT_CONVERT (v4i32 SCALAR_TO_VECTOR)). Get rid of X86ISD::S2VEC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47290 91177308-0d34-0410-b5e6-96231b3b80d8
* Correctly fold divide-by-constant, even when faced with overflow.Nick Lewycky2008-02-183-2/+50
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47287 91177308-0d34-0410-b5e6-96231b3b80d8
* Chris pointed out that it's not necessary to set i64 MUL to ExpandDan Gohman2008-02-181-12/+10
| | | | | | | | on x86-32 since i64 itself is not a Legal type. And, update some comments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47282 91177308-0d34-0410-b5e6-96231b3b80d8
* - Remove the previous check which broke coalescer-commute3.llEvan Cheng2008-02-181-5/+5
| | | | | | | - For now, conservatively ignore copy MI whose source is a physical register. Commuting its def MI can cause a physical register live interval to be live through a loop (since we know it's live coming into the def MI). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47281 91177308-0d34-0410-b5e6-96231b3b80d8
* upgrade some tests.Chris Lattner2008-02-181-39/+43
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47280 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a noteNate Begeman2008-02-181-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47279 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a note about sext from i1 plus flags use.Chris Lattner2008-02-181-0/+52
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47278 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't mark scalar integer multiplication as Expand on x86, since x86Dan Gohman2008-02-182-5/+14
| | | | | | | | | | | | | | has plain one-result scalar integer multiplication instructions. This avoids expanding such instructions into MUL_LOHI sequences that must be special-cased at isel time, and avoids the problem with that code that provented memory operands from being folded. This fixes PR1874, addressesing the most common case. The uncommon cases of optimizing multiply-high operations will require work in DAGCombiner. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47277 91177308-0d34-0410-b5e6-96231b3b80d8