Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Code insertion methods now return void instead of an int. | Chris Lattner | 2004-08-15 | 1 | -13/+10 |
| | | | | llvm-svn: 15780 | ||||
* | These methods no longer take a TargetRegisterClass* operand. | Chris Lattner | 2004-08-15 | 1 | -4/+4 |
| | | | | llvm-svn: 15774 | ||||
* | Eliminate MachineFunction& argument from eliminateFrameIndex in x86 Target. ↵ | Nate Begeman | 2004-08-14 | 1 | -2/+2 |
| | | | | | | Get MachineFunction from MachineInstruction's parent's parent llvm-svn: 15739 | ||||
* | Reserve the correct amt of space. | Chris Lattner | 2004-07-17 | 1 | -2/+2 |
| | | | | llvm-svn: 14913 | ||||
* | Delete the allocate*TargetMachine function, which is now dead . | Chris Lattner | 2004-07-11 | 1 | -1/+1 |
| | | | | | | The shared command line options are now in a header that makes sense. llvm-svn: 14756 | ||||
* | Add #include <iostream> since Value.h does not #include it any more. | Reid Spencer | 2004-07-04 | 1 | -0/+2 |
| | | | | llvm-svn: 14622 | ||||
* | Spell out `NoFramePointerElim' for readability. | Misha Brukman | 2004-06-21 | 1 | -1/+1 |
| | | | | llvm-svn: 14299 | ||||
* | Use the common `NoFPElim' setting instead of our own. | Misha Brukman | 2004-06-21 | 1 | -4/+2 |
| | | | | llvm-svn: 14298 | ||||
* | Rename Type::PrimitiveID to TypeId and ::getPrimitiveID() to ::getTypeID() | Chris Lattner | 2004-06-17 | 1 | -1/+1 |
| | | | | llvm-svn: 14201 | ||||
* | Add support for the setp instructions | Chris Lattner | 2004-06-11 | 1 | -0/+1 |
| | | | | llvm-svn: 14140 | ||||
* | Convert to the new TargetMachine interface. | Chris Lattner | 2004-06-02 | 1 | -2/+2 |
| | | | | llvm-svn: 13952 | ||||
* | Add more ADC and SBB variants | Alkis Evlogimenos | 2004-04-02 | 1 | -0/+2 |
| | | | | llvm-svn: 12607 | ||||
* | Implement spill code folding for all of the conditional move instructions | Chris Lattner | 2004-03-30 | 1 | -0/+21 |
| | | | | llvm-svn: 12554 | ||||
* | Another API change to MRegisterInfo::foldMemoryOperand. Instead of a | Alkis Evlogimenos | 2004-03-14 | 1 | -4/+3 |
| | | | | | | MachineBasicBlock::iterator take a MachineInstr*. llvm-svn: 12392 | ||||
* | Change MRegisterInfo::foldMemoryOperand to return the folded | Alkis Evlogimenos | 2004-03-14 | 1 | -169/+163 |
| | | | | | | instruction to make the API more flexible. llvm-svn: 12386 | ||||
* | Add memory operand version of conditional move. | Alkis Evlogimenos | 2004-03-07 | 1 | -0/+3 |
| | | | | llvm-svn: 12190 | ||||
* | A big X86 instruction rename. The instructions are renamed to make | Alkis Evlogimenos | 2004-02-29 | 1 | -148/+148 |
| | | | | | | | | | | | | | | | | their names more decriptive. A name consists of the base name, a default operand size followed by a character per operand with an optional special size. For example: ADD8rr -> add, 8-bit register, 8-bit register IMUL16rmi -> imul, 16-bit register, 16-bit memory, 16-bit immediate IMUL16rmi8 -> imul, 16-bit register, 16-bit memory, 8-bit immediate MOVSX32rm16 -> movsx, 32-bit register, 16-bit memory llvm-svn: 11995 | ||||
* | SHLD and SHRD take 32-bit operands but an 8-bit immediate. Rename them | Alkis Evlogimenos | 2004-02-28 | 1 | -2/+2 |
| | | | | | | to denote this fact. llvm-svn: 11972 | ||||
* | Floating point loads/stores act on memory operands. Rename them to | Alkis Evlogimenos | 2004-02-28 | 1 | -2/+2 |
| | | | | | | denote this fact. llvm-svn: 11971 | ||||
* | Uncomment instructions that take both an immediate and a memory | Alkis Evlogimenos | 2004-02-28 | 1 | -11/+11 |
| | | | | | | operand but their sizes differ. llvm-svn: 11969 | ||||
* | Do not generate instructions with mismatched memory/immediate sized | Alkis Evlogimenos | 2004-02-28 | 1 | -11/+11 |
| | | | | | | operands. The X86 backend doesn't handle them properly right now. llvm-svn: 11944 | ||||
* | Add memory operand folding support for the SETcc family of | Alkis Evlogimenos | 2004-02-27 | 1 | -0/+12 |
| | | | | | | instructions. llvm-svn: 11907 | ||||
* | Add memory operand folding support for SHLD and SHRD instructions. | Alkis Evlogimenos | 2004-02-27 | 1 | -0/+11 |
| | | | | llvm-svn: 11905 | ||||
* | Add memory operand folding support for SHL, SHR and SAR, SHLD instructions. | Alkis Evlogimenos | 2004-02-27 | 1 | -0/+18 |
| | | | | llvm-svn: 11903 | ||||
* | Move MOTy::UseType enum into MachineOperand. This eliminates the | Alkis Evlogimenos | 2004-02-22 | 1 | -5/+10 |
| | | | | | | | | | switch statements in the constructors and simplifies the implementation of the getUseType() member function. You will have to specify defs using MachineOperand::Def instead of MOTy::Def though (similarly for Use and UseAndDef). llvm-svn: 11715 | ||||
* | When folding memory operands in machine instructions be careful to | Alkis Evlogimenos | 2004-02-22 | 1 | -2/+4 |
| | | | | | | | leave register operands with the same use/def flags as the original instruction. llvm-svn: 11709 | ||||
* | Add support for GlobalAddress's for alkis | Chris Lattner | 2004-02-17 | 1 | -2/+8 |
| | | | | llvm-svn: 11560 | ||||
* | Instructiosn with 1 memory operand have 4 operands in our | Alkis Evlogimenos | 2004-02-17 | 1 | -2/+1 |
| | | | | | | representation.. duh! llvm-svn: 11554 | ||||
* | Align case statements. | Alkis Evlogimenos | 2004-02-17 | 1 | -32/+32 |
| | | | | llvm-svn: 11552 | ||||
* | Add TEST and XCHG memory operand support. | Alkis Evlogimenos | 2004-02-17 | 1 | -1/+15 |
| | | | | llvm-svn: 11550 | ||||
* | Add OR and XOR memory operand support. | Alkis Evlogimenos | 2004-02-17 | 1 | -0/+18 |
| | | | | llvm-svn: 11549 | ||||
* | Add memory operand folding support for MUL, DIV, IDIV, NEG, NOT, | Alkis Evlogimenos | 2004-02-17 | 1 | -0/+22 |
| | | | | | | MOVSX, and MOVZX. llvm-svn: 11546 | ||||
* | Add memory operand folding for CMP{rm,mr,mi}{8,16,32}, INCm{8,16,32} | Alkis Evlogimenos | 2004-02-17 | 1 | -0/+21 |
| | | | | | | and DECm{8,16,32} instructions. llvm-svn: 11545 | ||||
* | Add support for folding memory operands for ADC, SBB and SUB instructions. | Alkis Evlogimenos | 2004-02-17 | 1 | -0/+13 |
| | | | | llvm-svn: 11541 | ||||
* | Add a (hidden) option to print instructions that fail to fuse. It's looking | Chris Lattner | 2004-02-17 | 1 | -8/+16 |
| | | | | | | like compares and test's would be the next huge win... llvm-svn: 11539 | ||||
* | Add support for folding memory operands in MOVri{8,16,32} instructions. | Alkis Evlogimenos | 2004-02-17 | 1 | -0/+3 |
| | | | | llvm-svn: 11538 | ||||
* | Add an option to disable spill fusing in the X86 backend | Chris Lattner | 2004-02-17 | 1 | -0/+5 |
| | | | | llvm-svn: 11531 | ||||
* | Fix the mneumonics for the mov instructions to have the source and destination | Chris Lattner | 2004-02-17 | 1 | -9/+9 |
| | | | | | | order in the correct sense!! Arg! llvm-svn: 11530 | ||||
* | GRRR. Move instructions have swapped the order of the r/m operands. | Chris Lattner | 2004-02-17 | 1 | -6/+6 |
| | | | | llvm-svn: 11528 | ||||
* | Change to match the newer, simpler, interface | Chris Lattner | 2004-02-17 | 1 | -30/+7 |
| | | | | llvm-svn: 11525 | ||||
* | Add support for folding memory operands into AND and IMUL's | Chris Lattner | 2004-02-17 | 1 | -2/+30 |
| | | | | llvm-svn: 11523 | ||||
* | Scrunchify code, by adding helpers. No functionality changes. | Chris Lattner | 2004-02-17 | 1 | -56/+45 |
| | | | | llvm-svn: 11522 | ||||
* | Add API to check and fold memory operands into instructions. | Alkis Evlogimenos | 2004-02-17 | 1 | -0/+81 |
| | | | | llvm-svn: 11519 | ||||
* | Fix the 'have a framepointer' case, so that the frame pointer always points | Chris Lattner | 2004-02-15 | 1 | -8/+10 |
| | | | | | | to the old saved EBP. llvm-svn: 11455 | ||||
* | There is no reason to align the stack pointer if there are no callees of this | Chris Lattner | 2004-02-14 | 1 | -10/+12 |
| | | | | | | function! llvm-svn: 11450 | ||||
* | The prologue/epilogue related method calls have no reason to return a value, | Chris Lattner | 2004-02-14 | 1 | -25/+15 |
| | | | | | | | | make them return void. This allows us to avoid some costly MBB.size() calls llvm-svn: 11448 | ||||
* | finegrainify namespacification, fix 80col prob | Chris Lattner | 2004-02-14 | 1 | -7/+1 |
| | | | | llvm-svn: 11445 | ||||
* | Use newly added next() and prior() utility functions. | Alkis Evlogimenos | 2004-02-14 | 1 | -1/+2 |
| | | | | llvm-svn: 11430 | ||||
* | Change interface so that we can add to the end of a basic block | Alkis Evlogimenos | 2004-02-12 | 1 | -5/+5 |
| | | | | | | | without getting an assertion from ilist that we are dereferencing ilist<T>::end(). llvm-svn: 11345 | ||||
* | Change MachineBasicBlock's vector of MachineInstr pointers into an | Alkis Evlogimenos | 2004-02-12 | 1 | -26/+23 |
| | | | | | | | | | ilist of MachineInstr objects. This allows constant time removal and insertion of MachineInstr instances from anywhere in each MachineBasicBlock. It also allows for constant time splicing of MachineInstrs into or out of MachineBasicBlocks. llvm-svn: 11340 |