summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* For PR1248:Reid Spencer2007-03-211-18/+26
| | | | | | | | | | | | * Fix some indentation and comments in InsertRangeTest * Add an "IsSigned" parameter to AddWithOverflow and make it handle signed additions. Also, APIntify this function so it works with any bitwidth. * For the icmp pred ([us]div %X, C1), C2 transforms, exit early if the div instruction's RHS is zero. * Finally, for icmp pred (sdiv %X, C1), -C2, fix an off-by-one error. The HiBound needs to be incremented in order to get the range test correct. llvm-svn: 35247
* Fix a comment.Reid Spencer2007-03-211-1/+1
| | | | llvm-svn: 35246
* repair x86 performance, dejagnu problems from previous changeDale Johannesen2007-03-216-6/+36
| | | | llvm-svn: 35245
* Add TODO list for MSIL backendAnton Korobeynikov2007-03-211-0/+51
| | | | llvm-svn: 35244
* Add Roman to creditsAnton Korobeynikov2007-03-211-0/+4
| | | | llvm-svn: 35243
* Let the new backend begin!Anton Korobeynikov2007-03-215-2/+1596
| | | | llvm-svn: 35242
* add generation of unnecessary push/pop around callsDale Johannesen2007-03-211-0/+42
| | | | llvm-svn: 35241
* New test case.Evan Cheng2007-03-211-0/+27
| | | | llvm-svn: 35240
* fold (truncate (srl (load x), c)) -> (smaller load (x+c/vt bits))Evan Cheng2007-03-211-6/+24
| | | | llvm-svn: 35239
* Regenerate.Reid Spencer2007-03-212-767/+744
| | | | llvm-svn: 35237
* For PR1243:Reid Spencer2007-03-211-14/+10
| | | | | | | Okay, really fix it this time. Make sure the CurFun.Linkage is set early and consolidate some duplicate code. llvm-svn: 35236
* Regenerate.Reid Spencer2007-03-215-904/+1557
| | | | llvm-svn: 35235
* For PR1256:Reid Spencer2007-03-213-251/+708
| | | | | | | | | | | | | | | | | | Make Signedness information pervasive throughout all types and values. There is no easy way to get around this. Because the GEP instruction can index through an arbitrarily complex value structure, it is necessary to keep track of signedness information throughout that structure. This change makes Signedness a full class, capable of representing Signedness in arbitrarily shaped types. The class is then used throughout llvm-upgrade to track signedness and differentiate between globals, locals, and functions based on their signedness. For PR1243: This patch also removes bogus warnings about renaming internal globals. It now only emits such warnings when renaming non-internal globals because they may affect linkage. llvm-svn: 35234
* Protect R31's frame offset from being used by callee-saved registers, when R31Nicolas Geoffray2007-03-211-0/+20
| | | | | | is the frame pointer. llvm-svn: 35233
* Fix a bug in getAllOnesValue() which brokeZhou Sheng2007-03-211-1/+1
| | | | | | some test cases for bitwidth > 64. llvm-svn: 35232
* Mark re-materializable instructions.Evan Cheng2007-03-213-0/+6
| | | | llvm-svn: 35230
* Updated.Evan Cheng2007-03-201-1/+6
| | | | llvm-svn: 35229
* Potential spiller improvement.Evan Cheng2007-03-201-0/+27
| | | | llvm-svn: 35228
* do not share old induction variables when this would result in invalidDale Johannesen2007-03-205-18/+81
| | | | | | instructions (that would have to be split later) llvm-svn: 35227
* maintain LiveIn when splitting blocks (register scavenging needs it)Dale Johannesen2007-03-203-1/+32
| | | | llvm-svn: 35226
* DominanceFrontier::calculate().Devang Patel2007-03-201-23/+78
| | | | | | Avoid recursion, Use iterative algorithm. llvm-svn: 35225
* Fix some VC++ warnings.Jeff Cohen2007-03-202-1/+2
| | | | llvm-svn: 35224
* Fix (and simplify) 48-bit byte swap.Jeff Cohen2007-03-201-9/+8
| | | | | | Get pos/neg infinity the correct way. llvm-svn: 35223
* LoopSimplify::FindPHIToPartitionLoops()Devang Patel2007-03-201-0/+4
| | | | | | Use ETForest instead of DominatorSet. llvm-svn: 35222
* LoopSimplify::FindPHIToPartitionLoops()Devang Patel2007-03-202-4/+25
| | | | | | Use ETForest instead of DominatorSet. llvm-svn: 35221
* Code clean up.Lauro Ramos Venancio2007-03-201-23/+20
| | | | llvm-svn: 35220
* Minor bug.Evan Cheng2007-03-201-1/+2
| | | | llvm-svn: 35219
* bugfix: When the source register of CALL_NOLINK was LR, the following code ↵Lauro Ramos Venancio2007-03-204-19/+81
| | | | | | | | | | was emitted: mov lr, pc bx lr So, the function was not called. llvm-svn: 35218
* llvm-gcc now requires -fnested-functions to enable them in C.Chris Lattner2007-03-201-1/+1
| | | | llvm-svn: 35217
* Break up huge line so that this file is almost readable.Reid Spencer2007-03-201-2/+52
| | | | llvm-svn: 35216
* Regenerate.Reid Spencer2007-03-202-176/+172
| | | | llvm-svn: 35215
* Don't delete things before their last use (avoids bad reads).Reid Spencer2007-03-201-2/+0
| | | | llvm-svn: 35214
* CopyToReg source operand can be a physical register.Lauro Ramos Venancio2007-03-201-3/+19
| | | | llvm-svn: 35213
* Test handling of structs with multiple variable-sized fields.Duncan Sands2007-03-202-0/+16
| | | | llvm-svn: 35212
* Simplify isHighOnes().Zhou Sheng2007-03-201-9/+1
| | | | llvm-svn: 35211
* Ada testcase for structs with multiple variable sized fields.Duncan Sands2007-03-202-0/+14
| | | | llvm-svn: 35210
* Test that ARRAY_RANGE_REF returns an array not an element.Duncan Sands2007-03-201-0/+7
| | | | llvm-svn: 35209
* First cut trivial re-materialization support.Evan Cheng2007-03-205-27/+155
| | | | llvm-svn: 35208
* Make two piece constant generation as a single instruction. It's ↵Evan Cheng2007-03-202-30/+55
| | | | | | re-materialized as a load from constantpool. llvm-svn: 35207
* New entry.Evan Cheng2007-03-201-0/+13
| | | | llvm-svn: 35206
* Added MRegisterInfo hook to re-materialize an instruction.Evan Cheng2007-03-2013-16/+106
| | | | llvm-svn: 35205
* Two changes:Chris Lattner2007-03-202-13/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | 1) codegen a shift of a register as a shift, not an LEA. 2) teach the RA to convert a shift to an LEA instruction if it wants something in three-address form. This gives us asm diffs like: - leal (,%eax,4), %eax + shll $2, %eax which is faster on some processors and smaller on all of them. and, more interestingly: - movl 24(%esi), %eax - leal (,%eax,4), %edi + movl 24(%esi), %edi + shll $2, %edi Without #2, #1 was a significant pessimization in some cases. This implements CodeGen/X86/shift-codegen.ll llvm-svn: 35204
* These functions should use shll, not lea.Chris Lattner2007-03-201-0/+27
| | | | llvm-svn: 35203
* fix indentationChris Lattner2007-03-201-1/+1
| | | | llvm-svn: 35202
* Correct the name: isStrictPositive --> isStrictlyPositive.Zhou Sheng2007-03-201-1/+1
| | | | llvm-svn: 35201
* Add a dtor to fix leaks from all clients of BitVector.Chris Lattner2007-03-201-0/+4
| | | | llvm-svn: 35200
* Regenerate.Reid Spencer2007-03-203-282/+320
| | | | llvm-svn: 35199
* Plug some PATypeHolder memory leaks.Reid Spencer2007-03-201-6/+25
| | | | llvm-svn: 35198
* use types of loads and stores, not address, in CheckForIVReuseDale Johannesen2007-03-201-7/+28
| | | | llvm-svn: 35197
* fix obvious comment bugDale Johannesen2007-03-201-1/+1
| | | | llvm-svn: 35196
OpenPOWER on IntegriCloud