aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2004-07-26Add initial support for list slices. This currently allows you to do stuffChris Lattner
like this: def B { list<int> X = [10, 20, 30, 4, 1, 1231, 20] [2-4,2,2,0-6]; } ... which isn't particularly useful, but more is to come. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15247 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26A utility to run an arbitrary program on each of the LLVM source files.Reid Spencer
This is like llvmgrep but instead of running grep, it runs the command given by the first argument. For example, to find the top ten files with the most lines in llvm, you could: utils/llvmdo wc -l | sort -nb | tail Or, to find any source files with the wrong permissions, you could: utils/llvmdo ls -l | grep -v rw-r--r-- Hopefully, you get the idea. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15246 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26Do not store the stack pointer if the stack size is 0.Misha Brukman
Also, convert C-style comments to C++ and make sure code wraps at 80 cols. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15245 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26ADDI can take several forms, including:Misha Brukman
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15244 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26assert() on MachineInstr properties instead of checking them dynamicallyMisha Brukman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15243 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26* Recognize `addi r1, r2, 0' a move instructionMisha Brukman
* List formats of instructions currently recognized as moves git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15242 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26Remove dead sectionChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15241 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26Fix indentation: should be 2 spaces.Misha Brukman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15240 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26Fix file header as it has been renamed.Misha Brukman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15239 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26Renamed files to have the `X86' prefix for uniqueness purposes.Misha Brukman
All CVS history was renamed, the *,v were copied over. No worries. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15238 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26* Rewrote castsMisha Brukman
* Implemented GEP folding * Dynamically output global address stuff once per function * Fix casting fp<->short/byte Patch contributed by Nate Begeman. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15237 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26Increment the label number in runOnFunction() rather than while printing outMisha Brukman
some instruction. Patch by Nate Begeman. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15236 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26More notes on bugs, unimplemented features, and suggested code improvements.Misha Brukman
Written by Nate Begeman. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15235 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26Fix subtracting values > 2^15 in the prologue/epilogue, by Nate Begeman.Misha Brukman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15234 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26Added another test case for double FP constants as well.Reid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15233 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26Implement DeadStoreElim/alloca.llx by observing that allocas are dead at theChris Lattner
end of the function (either return or unwind) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15232 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26New testcaseChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15231 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26Add some new methodsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15230 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26New methodsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15229 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26Update testChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15228 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26Throttle back indvar substitution from creating multiplies in loops. This ↵Chris Lattner
is bad bad bad. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15227 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26Fix bug in previous patch :(Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15226 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-26Fix an extremely serious regression that was causing LLVM basic blocks to beChris Lattner
scrambled around almost at random, having really bad effects on icache locality. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15225 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25Fix a serious bug in the double constant reader. In particular, becauseChris Lattner
(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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15224 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25Temporarily disable this code, as it is emitting LLVM_NAN("nan") which ↵Chris Lattner
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> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15223 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25Bugs fixed.Reid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15222 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25Avoid use of size(), which counts, in favor of other mechanisms.Reid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15221 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25Always write FP values correctly.Reid Spencer
Adjust for new Module.h interface for dependent libraries. Excise unused backwards compatibility flag. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15220 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25Don't create a backwards compatibility flag for something that was aReid Spencer
regression bug introduced in release 1.2 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15219 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25Adjust to new Module.h interface for dependent libraries.Reid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15218 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25Adjust to new Module.h interface for dependent librariesReid Spencer
Remove mem leaks resulting from not freeing parse strings. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15217 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25Adjust to new Module.h interface for dependent librariesReid Spencer
Only write the target triple and deplibs if they are non-empty. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15216 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25Reduce the footprint of the dependent library interfaceReid Spencer
Document the dependent library interface Constify the std::string& parameters in the dep lib interface. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15215 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25Fix a latent bug in the AliasSetTracker that was exposed by the FreeInst ↵Chris Lattner
additions and broke a bunch of programs last night. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15214 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25bug 263:Reid Spencer
Add target triple and dependent libraries support to this test. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15213 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25bug 263:Reid Spencer
Ensure the list of libraries is cleared. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15212 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25bug 263:Reid Spencer
Add ability to write target triple and dependent libraries information. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15211 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25bug 263:Reid Spencer
- 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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15210 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25bug 263:Reid Spencer
Provide parsing for the target triple and dependent libraries. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15209 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25bug 263:Reid Spencer
Provide new tokens for target triples and dependent libraries. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15208 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25bug 263:Reid Spencer
The necessary changes to module in order to support both target triples and a list of dependent libraries. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15207 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25bug 402:Reid Spencer
A new set of block identifiers has been added for version 1.3 so that the range of values can fit within 5 bits. This aids in halving the size of block headers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15206 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25Codify my thoughts on where we want to end up with the target-independentChris Lattner
code generator. Comments welcome. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15205 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25* Substantially simplify how free instructions are handled (potentially fixingChris Lattner
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15204 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25Add back() and pop_back() methods to SetVectorChris Lattner
Move clear to the end of the class Add assertions git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15203 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25Add some comments to the backtracking code.Alkis Evlogimenos
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15200 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25Free instructions kill values too. This implements DeadStoreElim/free.llxChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15199 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25New testcase for DSEChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15198 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25Add support for free instructionsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15197 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-25Fix the sense of joinableChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15196 91177308-0d34-0410-b5e6-96231b3b80d8