aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Handle the last operand more intelligently. When emitting the \n, alsoChris Lattner2006-07-181-5/+7
| | | | | | | | return from the asmprinter to make the generated asmprinter both more efficient and smaller. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29182 91177308-0d34-0410-b5e6-96231b3b80d8
* Emit switches with 1/2 cases as unconditional code or an if/then/else forChris Lattner2006-07-181-10/+24
| | | | | | | tidyness. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29181 91177308-0d34-0410-b5e6-96231b3b80d8
* Steal bits from the asm string index to use for operand information. On bothChris Lattner2006-07-181-10/+12
| | | | | | | | x86 and ppc, this gets us 4 more bits to play with, since the string indices both only use 12 bits. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29180 91177308-0d34-0410-b5e6-96231b3b80d8
* Merge operand info and asmstr idx into a single 32-bit field. No other change.Chris Lattner2006-07-181-16/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29179 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor output changes.Patrick Jenkins2006-07-181-1/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29178 91177308-0d34-0410-b5e6-96231b3b80d8
* Completely change the structure of the generated asmprinter to be more tableChris Lattner2006-07-182-26/+207
| | | | | | | | | | based and less switch-statements-with-hundreds-of-cases based. This shrinks the x86 asmprinters to about 1/3 their previous size. Other improvements coming. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29177 91177308-0d34-0410-b5e6-96231b3b80d8
* initial prologue and epilogue implementation. Need to define add and sub ↵Rafael Espindola2006-07-182-1/+23
| | | | | | before finishing it :-) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29175 91177308-0d34-0410-b5e6-96231b3b80d8
* Make the implicit def instructions look like other instrs.Chris Lattner2006-07-183-5/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29174 91177308-0d34-0410-b5e6-96231b3b80d8
* simple optimization: don't bother calling "exists" (which calls the syscallChris Lattner2006-07-181-3/+0
| | | | | | | | "access"). Instead, just let the open call fail if the file doesn't exist. This reduces the # syscalls executed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29173 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove a dead conditional: info_ can only be allocated if FD is good. ImproveChris Lattner2006-07-181-5/+4
| | | | | | | spacing git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29172 91177308-0d34-0410-b5e6-96231b3b80d8
* The only entry in the stat buf this code cares about is the size. Keep justChris Lattner2006-07-181-14/+14
| | | | | | | the size, not the whole stat buffer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29171 91177308-0d34-0410-b5e6-96231b3b80d8
* Reduce code in the error path by only allocating info_ if everything looksChris Lattner2006-07-181-10/+8
| | | | | | | good. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29170 91177308-0d34-0410-b5e6-96231b3b80d8
* Unindent some codeChris Lattner2006-07-181-25/+24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29169 91177308-0d34-0410-b5e6-96231b3b80d8
* Add functions to compute ceil(log2(N)) to match functions for floor(log2(N))Chris Lattner2006-07-181-1/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29168 91177308-0d34-0410-b5e6-96231b3b80d8
* Reduce the size of Constants.o by 25% by generalizing specific instantiations ofJim Laskey2006-07-171-30/+31
| | | | | | | std::map. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29163 91177308-0d34-0410-b5e6-96231b3b80d8
* If a gccpath is specified when invoking the nightly test script we will ↵Patrick Jenkins2006-07-171-5/+9
| | | | | | hopefully now use that gcc for the gcc version. Also fixed some 80 char column stuff. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29162 91177308-0d34-0410-b5e6-96231b3b80d8
* Use __attribute__((noinline)) only if compiled by gcc.Evan Cheng2006-07-161-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29161 91177308-0d34-0410-b5e6-96231b3b80d8
* Parameterize target node ValueType to allow more sharing of emit functions.Evan Cheng2006-07-162-32/+67
| | | | | | | | Also reduce the number of arguments passed to emit functions and removed a hack. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29160 91177308-0d34-0410-b5e6-96231b3b80d8
* skeleton of a lowerCall implementation for ARMRafael Espindola2006-07-163-5/+79
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29159 91177308-0d34-0410-b5e6-96231b3b80d8
* Reduce instruction selection code size and stack frame size by factoringEvan Cheng2006-07-152-43/+135
| | | | | | | | | | | code that emit target specific nodes into emit functions that are uniquified and shared among selection routines. e.g. This reduces X86ISelDAGToDAG.o (release) from ~2M to ~1.5M. Stack frame size of Select_store from ~13k down to ~8k. This is the first step. Further work to enable more sharing will follow. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29158 91177308-0d34-0410-b5e6-96231b3b80d8
* On 64-bit targets like ppc64, we should use .quad to output pointer directives,Chris Lattner2006-07-151-1/+9
| | | | | | | not .long. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29157 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove what little AIX support we have. It has never been tested and isn'tChris Lattner2006-07-155-169/+2
| | | | | | | complete. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29156 91177308-0d34-0410-b5e6-96231b3b80d8
* The generated index array should be const.Chris Lattner2006-07-141-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29155 91177308-0d34-0410-b5e6-96231b3b80d8
* Add an out-of-line virtual function to home class.Chris Lattner2006-07-142-1/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29154 91177308-0d34-0410-b5e6-96231b3b80d8
* Add an out-of-line virtual method for X86DwarfWriter to give it a home.Chris Lattner2006-07-142-19/+21
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29153 91177308-0d34-0410-b5e6-96231b3b80d8
* Emit the string information for the asm writer as a single large stringChris Lattner2006-07-141-36/+69
| | | | | | | | | | | | | | | | | | | | and index into it, instead of emitting it like this: static const char * const OpStrs[] = { "PHINODE\n", // PHI 0, // INLINEASM "adc ", // ADC32mi "adc ", // ADC32mi8 ... The old way required thousands of relocations that slows down link time and dynamic load times. This also cuts about 10K off each of the X86 asmprinters, and should shrink the others as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29152 91177308-0d34-0410-b5e6-96231b3b80d8
* Add two helpers for escaping and unescaping strings.Chris Lattner2006-07-141-0/+50
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29151 91177308-0d34-0410-b5e6-96231b3b80d8
* Add two helper functionsChris Lattner2006-07-141-0/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29150 91177308-0d34-0410-b5e6-96231b3b80d8
* eliminate some ugly code, using ConstantExpr::getWithOperands instead.Chris Lattner2006-07-142-86/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29149 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a new helper, simplify ConstantExpr::getWithOperandReplaced at Gabor'sChris Lattner2006-07-141-22/+57
| | | | | | | request :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29148 91177308-0d34-0410-b5e6-96231b3b80d8
* Add another helper method.Chris Lattner2006-07-141-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29147 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixed an issue where the user specified gcc was not the gcc we report to the ↵Patrick Jenkins2006-07-141-2/+10
| | | | | | nightly test server. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29144 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a new method for bugpoint to useChris Lattner2006-07-141-0/+51
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29143 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a new method for bugpoint to use.Chris Lattner2006-07-141-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29142 91177308-0d34-0410-b5e6-96231b3b80d8
* Hopefully the final attempt at making IndVars preserve LCSSA.Owen Anderson2006-07-141-2/+30
| | | | | | | This should fix PR 831. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29141 91177308-0d34-0410-b5e6-96231b3b80d8
* Add missing PPC64 extload/truncstoresChris Lattner2006-07-142-9/+99
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29140 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a noteChris Lattner2006-07-141-0/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29139 91177308-0d34-0410-b5e6-96231b3b80d8
* Bring the Xcode project up to date.Jim Laskey2006-07-131-437/+130
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29138 91177308-0d34-0410-b5e6-96231b3b80d8
* Clean up.Jim Laskey2006-07-131-1/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29137 91177308-0d34-0410-b5e6-96231b3b80d8
* Another fix in the rotate encodings, needed when the first two operands are notChris Lattner2006-07-131-1/+1
| | | | | | | the same. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29136 91177308-0d34-0410-b5e6-96231b3b80d8
* 1. Simplfy bit operations.Jim Laskey2006-07-132-181/+116
| | | | | | | 2. Coalesce instruction cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29135 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert this patch temporarily until PR831 is fixed.Chris Lattner2006-07-131-31/+15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29134 91177308-0d34-0410-b5e6-96231b3b80d8
* Syntax error. I will run perl -c before commiting perl scripts.Patrick Jenkins2006-07-131-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29133 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixed some small bugs exposed when trying to get a sparc machine to run the ↵Patrick Jenkins2006-07-131-6/+6
| | | | | | script. Specifically some misnamed variables. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29132 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixed a bug handling void function types.Jim Laskey2006-07-132-12/+21
| | | | | | | Requires rebuild of llvm-gcc4 (touch llvm-debug.cpp.) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29131 91177308-0d34-0410-b5e6-96231b3b80d8
* Print negative immediates as negative values instead of large constantsChris Lattner2006-07-121-1/+1
| | | | | | | when using the immshifted addressing mode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29130 91177308-0d34-0410-b5e6-96231b3b80d8
* Turn an if into an else if.Chris Lattner2006-07-121-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29129 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix encoding of rotates, such as rldiclChris Lattner2006-07-121-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29128 91177308-0d34-0410-b5e6-96231b3b80d8
* Handle instructions in the map, but that map to a null pointer.Chris Lattner2006-07-121-1/+2
| | | | | | | This unbreaks smg2000. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29127 91177308-0d34-0410-b5e6-96231b3b80d8
* IndVars now (correctly) preserves LCSSA form.Owen Anderson2006-07-121-15/+31
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29126 91177308-0d34-0410-b5e6-96231b3b80d8