aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Hush a noisy warning from GCC 4.2 about overflow during conversion by usingReid Spencer2007-07-191-2/+2
| | | | | | | the type "unsigned" instead of uintptr_t for a 1-bit structure field. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40066 91177308-0d34-0410-b5e6-96231b3b80d8
* Make val_replace fail early, which reduces the time to optimize 403.gcc to ↵Owen Anderson2007-07-191-0/+2
| | | | | | 14.8s. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40064 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't need the "&&" to glue lines together.Bill Wendling2007-07-191-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40063 91177308-0d34-0410-b5e6-96231b3b80d8
* Verify loop info.Devang Patel2007-07-199-28/+51
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40062 91177308-0d34-0410-b5e6-96231b3b80d8
* Properly initialize value :)Anton Korobeynikov2007-07-191-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40059 91177308-0d34-0410-b5e6-96231b3b80d8
* Replace mysterious code causing a g++-4.2 warningDuncan Sands2007-07-192-18/+9
| | | | | | | with hopefully correct code that pleases g++-4.2. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40051 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix this test. We produce pretty cruddy code for thisDuncan Sands2007-07-191-1/+1
| | | | | | | | | nowadays, unfortunately it's not so easy to get good code here while still producing correct code in exotic situations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40050 91177308-0d34-0410-b5e6-96231b3b80d8
* As pointed out by g++-4.2, the original code didn't doDuncan Sands2007-07-191-2/+2
| | | | | | | what it thought it was doing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40044 91177308-0d34-0410-b5e6-96231b3b80d8
* Remember to free the heap allocated array if we're not going to use it.Owen Anderson2007-07-191-2/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40043 91177308-0d34-0410-b5e6-96231b3b80d8
* Use SmallVector and DenseMap in even more places.Owen Anderson2007-07-191-27/+26
| | | | | | | With this, the time to optimize 403.gcc is down to 15.1s. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40042 91177308-0d34-0410-b5e6-96231b3b80d8
* Testcase for PR1549Bill Wendling2007-07-191-0/+15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40041 91177308-0d34-0410-b5e6-96231b3b80d8
* Change ValueTable to use a DenseMap for mapping expressions to value numbers.Owen Anderson2007-07-191-78/+122
| | | | | | | This results in a slight speedup for 403.gcc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40040 91177308-0d34-0410-b5e6-96231b3b80d8
* Set up ground work to verify preserved analysis info.Devang Patel2007-07-192-1/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40039 91177308-0d34-0410-b5e6-96231b3b80d8
* Move some sets and maps to SmallPtrSet and DenseMap respectively. This Owen Anderson2007-07-191-8/+7
| | | | | | | reduces the time to optimize 403.gcc from 17.6s to 16.4s. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40036 91177308-0d34-0410-b5e6-96231b3b80d8
* After a basic block is split into two parts,Devang Patel2007-07-191-2/+15
| | | | | | | | | | second part dominates all the blocks dominated by original basic block. And first part dominates second part. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40035 91177308-0d34-0410-b5e6-96231b3b80d8
* Now this temp. fix is not required.Devang Patel2007-07-191-4/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40034 91177308-0d34-0410-b5e6-96231b3b80d8
* Change instruction description to split OperandList into OutOperandList andEvan Cheng2007-07-1933-2514/+2664
| | | | | | | | | | | | | | | | InOperandList. This gives one piece of important information: # of results produced by an instruction. An example of the change: def ADD32rr : I<0x01, MRMDestReg, (ops GR32:$dst, GR32:$src1, GR32:$src2), "add{l} {$src2, $dst|$dst, $src2}", [(set GR32:$dst, (add GR32:$src1, GR32:$src2))]>; => def ADD32rr : I<0x01, MRMDestReg, (outs GR32:$dst), (ins GR32:$src1, GR32:$src2), "add{l} {$src2, $dst|$dst, $src2}", [(set GR32:$dst, (add GR32:$src1, GR32:$src2))]>; git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40033 91177308-0d34-0410-b5e6-96231b3b80d8
* Only adjust esp around calls in presence of alloca.Evan Cheng2007-07-191-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40030 91177308-0d34-0410-b5e6-96231b3b80d8
* Only adjust esp around calls in presence of alloca.Evan Cheng2007-07-193-50/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40028 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix typo.Devang Patel2007-07-181-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40025 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix dominator info update to accommodate CFG changes.Devang Patel2007-07-181-17/+65
| | | | | | | This fixes PR1559. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40024 91177308-0d34-0410-b5e6-96231b3b80d8
* New test.Devang Patel2007-07-181-0/+66
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40023 91177308-0d34-0410-b5e6-96231b3b80d8
* Add comment.Evan Cheng2007-07-181-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40022 91177308-0d34-0410-b5e6-96231b3b80d8
* New test.Evan Cheng2007-07-181-0/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40020 91177308-0d34-0410-b5e6-96231b3b80d8
* Use MOV instead of LEA to restore ESP if callee-saved frame size is 0; if ↵Evan Cheng2007-07-181-13/+19
| | | | | | previous instruction updates esp, fold it in. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40018 91177308-0d34-0410-b5e6-96231b3b80d8
* Add constructor overloads for LoadInst and StoreInst that insert at theDan Gohman2007-07-182-0/+24
| | | | | | | end of a BasicBlock and have an alignment parameter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40016 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement initial memory alignment awareness for SSE instructions. Vector loadsDan Gohman2007-07-1812-59/+238
| | | | | | | | and stores that have a specified alignment of less than 16 bytes now use instructions that support misaligned memory references. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40015 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix an issue where assignments that caused a SmallPtrSet to become non-smallOwen Anderson2007-07-181-4/+8
| | | | | | | | would result in calling realloc() on a null pointer. Instead, if we encounter this situation, make a normal call to malloc(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40014 91177308-0d34-0410-b5e6-96231b3b80d8
* It's not necessary to do rounding for alloca operations when the requestedDan Gohman2007-07-183444-0/+584492
alignment is equal to the stack alignment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40004 91177308-0d34-0410-b5e6-96231b3b80d8