Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | LR is a 32-bit int reg | Misha Brukman | 2004-07-27 | 1 | -2/+2 | |
| | | | | llvm-svn: 15273 | |||||
* | MovePCtoLR (which is `bl' in disguise) modifies LR implicitly | Misha Brukman | 2004-07-27 | 1 | -1/+2 | |
| | | | | llvm-svn: 15272 | |||||
* | Register LR is callee-saved | Misha Brukman | 2004-07-27 | 1 | -1/+1 | |
| | | | | llvm-svn: 15271 | |||||
* | Add IMPLICIT_DEF of LR for branch-and-link instrs (calls and global accesses) | Misha Brukman | 2004-07-27 | 2 | -0/+4 | |
| | | | | llvm-svn: 15270 | |||||
* | nuke pointless -debug output | Chris Lattner | 2004-07-27 | 1 | -4/+0 | |
| | | | | llvm-svn: 15267 | |||||
* | Fix conservative assumption, which was quite broken. Also, notice that | Chris Lattner | 2004-07-27 | 1 | -2/+22 | |
| | | | | | | functions known to not access memory (like sin/cos) don't access memory! :) llvm-svn: 15264 | |||||
* | Fix hoisting of void typed values, e.g. calls | Chris Lattner | 2004-07-27 | 1 | -7/+13 | |
| | | | | llvm-svn: 15263 | |||||
* | alloca void makes no sense | Chris Lattner | 2004-07-27 | 1 | -0/+1 | |
| | | | | llvm-svn: 15262 | |||||
* | Remove a bogus assertion | Chris Lattner | 2004-07-27 | 1 | -3/+0 | |
| | | | | llvm-svn: 15261 | |||||
* | Complete rewrite of this pass to be faster, use less memory, be easier to | Chris Lattner | 2004-07-27 | 1 | -97/+148 | |
| | | | | | | | understand, and more accurate to boot! This implements GlobalModRef/purecse.ll over the previous impl. llvm-svn: 15260 | |||||
* | Simplify code and silence warning | Chris Lattner | 2004-07-27 | 1 | -6/+4 | |
| | | | | llvm-svn: 15255 | |||||
* | Use context-sensitive alias analysis to avoid pessimization in clients of | Chris Lattner | 2004-07-27 | 1 | -5/+23 | |
| | | | | | | | AliasSetTracker (dse and licm). This implements DeadStoreElimination/context-sensitive.llx llvm-svn: 15254 | |||||
* | Make basicaa a bit more aggressive | Chris Lattner | 2004-07-27 | 1 | -0/+4 | |
| | | | | llvm-svn: 15252 | |||||
* | basic-aa can actually provide simple mod/ref info | Chris Lattner | 2004-07-27 | 1 | -3/+3 | |
| | | | | llvm-svn: 15251 | |||||
* | This was implemented back in march | Chris Lattner | 2004-07-27 | 1 | -7/+0 | |
| | | | | llvm-svn: 15250 | |||||
* | Do not store the stack pointer if the stack size is 0. | Misha Brukman | 2004-07-26 | 1 | -8/+14 | |
| | | | | | | Also, convert C-style comments to C++ and make sure code wraps at 80 cols. llvm-svn: 15245 | |||||
* | ADDI can take several forms, including: | Misha Brukman | 2004-07-26 | 1 | -2/+1 | |
| | | | | | | | | | | addi r1, r2, 0 addi r1, <frame index #n>, 0 so we must check for the second parameter being a register for this instruction to be considered a reg-to-reg copy. llvm-svn: 15244 | |||||
* | assert() on MachineInstr properties instead of checking them dynamically | Misha Brukman | 2004-07-26 | 1 | -7/+8 | |
| | | | | llvm-svn: 15243 | |||||
* | * Recognize `addi r1, r2, 0' a move instruction | Misha Brukman | 2004-07-26 | 1 | -2/+12 | |
| | | | | | | * List formats of instructions currently recognized as moves llvm-svn: 15242 | |||||
* | Fix indentation: should be 2 spaces. | Misha Brukman | 2004-07-26 | 1 | -25/+25 | |
| | | | | llvm-svn: 15240 | |||||
* | Fix file header as it has been renamed. | Misha Brukman | 2004-07-26 | 5 | -5/+5 | |
| | | | | llvm-svn: 15239 | |||||
* | Renamed files to have the `X86' prefix for uniqueness purposes. | Misha Brukman | 2004-07-26 | 5 | -0/+0 | |
| | | | | | | All CVS history was renamed, the *,v were copied over. No worries. llvm-svn: 15238 | |||||
* | * Rewrote casts | Misha Brukman | 2004-07-26 | 2 | -384/+1020 | |
| | | | | | | | | | | * Implemented GEP folding * Dynamically output global address stuff once per function * Fix casting fp<->short/byte Patch contributed by Nate Begeman. llvm-svn: 15237 | |||||
* | Increment the label number in runOnFunction() rather than while printing out | Misha Brukman | 2004-07-26 | 2 | -22/+20 | |
| | | | | | | some instruction. Patch by Nate Begeman. llvm-svn: 15236 | |||||
* | More notes on bugs, unimplemented features, and suggested code improvements. | Misha Brukman | 2004-07-26 | 1 | -14/+19 | |
| | | | | | | Written by Nate Begeman. llvm-svn: 15235 | |||||
* | Fix subtracting values > 2^15 in the prologue/epilogue, by Nate Begeman. | Misha Brukman | 2004-07-26 | 1 | -4/+20 | |
| | | | | llvm-svn: 15234 | |||||
* | Implement DeadStoreElim/alloca.llx by observing that allocas are dead at the | Chris Lattner | 2004-07-26 | 1 | -1/+4 | |
| | | | | | | end of the function (either return or unwind) llvm-svn: 15232 | |||||
* | Add some new methods | Chris Lattner | 2004-07-26 | 1 | -0/+13 | |
| | | | | llvm-svn: 15230 | |||||
* | Throttle back indvar substitution from creating multiplies in loops. This ↵ | Chris Lattner | 2004-07-26 | 1 | -3/+3 | |
| | | | | | | is bad bad bad. llvm-svn: 15227 | |||||
* | Fix bug in previous patch :( | Chris Lattner | 2004-07-26 | 1 | -6/+12 | |
| | | | | llvm-svn: 15226 | |||||
* | Fix an extremely serious regression that was causing LLVM basic blocks to be | Chris Lattner | 2004-07-26 | 1 | -0/+6 | |
| | | | | | | scrambled around almost at random, having really bad effects on icache locality. llvm-svn: 15225 | |||||
* | Fix a serious bug in the double constant reader. In particular, because | Chris Lattner | 2004-07-25 | 1 | -1/+2 | |
| | | | | | | | | (At[3] << 24) is an int type and it is being coerced to uint64_t, it was getting sign extended, causing us to get FFFFFFFFxxxxxxxx constants all of the time. llvm-svn: 15224 | |||||
* | Temporarily disable this code, as it is emitting LLVM_NAN("nan") which ↵ | Chris Lattner | 2004-07-25 | 1 | -2/+2 | |
| | | | | | | | | | | | results in a call to the glibc 'nan' function because the initializer is not a string. This breaks when used in a global initializer. Try compiling this testcase for example: %X = global float <some nan value> llvm-svn: 15223 | |||||
* | Avoid use of size(), which counts, in favor of other mechanisms. | Reid Spencer | 2004-07-25 | 1 | -4/+5 | |
| | | | | llvm-svn: 15221 | |||||
* | Always write FP values correctly. | Reid Spencer | 2004-07-25 | 1 | -35/+21 | |
| | | | | | | | Adjust for new Module.h interface for dependent libraries. Excise unused backwards compatibility flag. llvm-svn: 15220 | |||||
* | Don't create a backwards compatibility flag for something that was a | Reid Spencer | 2004-07-25 | 1 | -4/+0 | |
| | | | | | | regression bug introduced in release 1.2 llvm-svn: 15219 | |||||
* | Adjust to new Module.h interface for dependent libraries. | Reid Spencer | 2004-07-25 | 1 | -2/+2 | |
| | | | | llvm-svn: 15218 | |||||
* | Adjust to new Module.h interface for dependent libraries | Reid Spencer | 2004-07-25 | 1 | -8/+7 | |
| | | | | | | Remove mem leaks resulting from not freeing parse strings. llvm-svn: 15217 | |||||
* | Adjust to new Module.h interface for dependent libraries | Reid Spencer | 2004-07-25 | 1 | -8/+12 | |
| | | | | | | Only write the target triple and deplibs if they are non-empty. llvm-svn: 15216 | |||||
* | Fix a latent bug in the AliasSetTracker that was exposed by the FreeInst ↵ | Chris Lattner | 2004-07-25 | 1 | -1/+2 | |
| | | | | | | additions and broke a bunch of programs last night. llvm-svn: 15214 | |||||
* | bug 263: | Reid Spencer | 2004-07-25 | 1 | -0/+1 | |
| | | | | | | Ensure the list of libraries is cleared. llvm-svn: 15212 | |||||
* | bug 263: | Reid Spencer | 2004-07-25 | 1 | -0/+11 | |
| | | | | | | Add ability to write target triple and dependent libraries information. llvm-svn: 15211 | |||||
* | bug 263: | Reid Spencer | 2004-07-25 | 7 | -811/+1003 | |
| | | | | | | | | | | | | | | | | - encode/decode target triple and dependent libraries bug 401: - fix encoding/decoding of FP values to be little-endian only bug 402: - initial (compatible) cut at 24-bit types instead of 32-bit - reduce size of block headers by 50% Other: - cleanup Writer by consolidating to one compilation unit, rem. other files - use a std::vector instead of std::deque so the buffer can be allocated in multiples of 64KByte chunks rather than in multiples of some smaller (default) number. llvm-svn: 15210 | |||||
* | bug 263: | Reid Spencer | 2004-07-25 | 1 | -1/+22 | |
| | | | | | | Provide parsing for the target triple and dependent libraries. llvm-svn: 15209 | |||||
* | bug 263: | Reid Spencer | 2004-07-25 | 1 | -0/+2 | |
| | | | | | | Provide new tokens for target triples and dependent libraries. llvm-svn: 15208 | |||||
* | * Substantially simplify how free instructions are handled (potentially fixing | Chris Lattner | 2004-07-25 | 1 | -43/+52 | |
| | | | | | | | | | | | a bug in DSE). * Delete dead operand uses iteratively instead of recursively, using a SetVector. * Defer deletion of dead operand uses until the end of processing, which means we don't have to bother with updating the AliasSetTracker. This speeds up DSE substantially. llvm-svn: 15204 | |||||
* | Add some comments to the backtracking code. | Alkis Evlogimenos | 2004-07-25 | 1 | -2/+17 | |
| | | | | llvm-svn: 15200 | |||||
* | Free instructions kill values too. This implements DeadStoreElim/free.llx | Chris Lattner | 2004-07-25 | 1 | -4/+13 | |
| | | | | llvm-svn: 15199 | |||||
* | Add support for free instructions | Chris Lattner | 2004-07-25 | 1 | -2/+18 | |
| | | | | llvm-svn: 15197 | |||||
* | Fix the sense of joinable | Chris Lattner | 2004-07-25 | 2 | -5/+5 | |
| | | | | llvm-svn: 15196 |