Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Backing out | Evan Cheng | 2007-02-27 | 1 | -2/+6 | |
| | | | | | | | | | | CodeGenTarget.cpp updated: 1.82 -> 1.83 Record.cpp updated: 1.55 -> 1.56 Record.h updated: 1.59 -> 1.60 TableGen.cpp updated: 1.47 -> 1.48 It's missing CallingConvEmitter.h llvm-svn: 34693 | |||||
* | initial support for calling convention generation, still unfinished. | Chris Lattner | 2007-02-27 | 1 | -6/+2 | |
| | | | | llvm-svn: 34682 | |||||
* | Files missing from LABEL check in. | Jim Laskey | 2007-01-26 | 1 | -1/+8 | |
| | | | | llvm-svn: 33539 | |||||
* | What should be the last unnecessary <iostream>s in the library. | Bill Wendling | 2006-12-07 | 1 | -2/+3 | |
| | | | | llvm-svn: 32333 | |||||
* | Match TargetInstrInfo changes. | Evan Cheng | 2006-12-01 | 1 | -3/+2 | |
| | | | | llvm-svn: 32107 | |||||
* | Remove the isTwoAddress property from the CodeGenInstruction class. It should | Chris Lattner | 2006-11-15 | 1 | -1/+17 | |
| | | | | | | | | | | not be used for anything other than backwards compat constraint handling. Add support for a new DisableEncoding property which contains a list of registers that should not be encoded by the generated code emitter. Convert the codeemitter generator to use this, fixing some PPC JIT regressions. llvm-svn: 31769 | |||||
* | ADd support for adding constraints to suboperands | Chris Lattner | 2006-11-15 | 1 | -29/+92 | |
| | | | | llvm-svn: 31748 | |||||
* | allow ptr_rc to explicitly appear in an instructions operand list, it doesn't | Chris Lattner | 2006-11-10 | 1 | -1/+2 | |
| | | | | | | have to be a subpart of a complex operand. llvm-svn: 31618 | |||||
* | emit TIED_TO correctly | Chris Lattner | 2006-11-07 | 1 | -2/+2 | |
| | | | | llvm-svn: 31484 | |||||
* | simplify the way operand flags and constraints are handled, making it easier | Chris Lattner | 2006-11-06 | 1 | -21/+30 | |
| | | | | | | to extend. llvm-svn: 31481 | |||||
* | recognize ppc's blr instruction as predicated | Chris Lattner | 2006-11-06 | 1 | -0/+2 | |
| | | | | llvm-svn: 31480 | |||||
* | Clean up some code. | Evan Cheng | 2006-11-04 | 1 | -1/+3 | |
| | | | | llvm-svn: 31451 | |||||
* | eliminate need for the NumMIOperands field in Operand. | Chris Lattner | 2006-11-03 | 1 | -1/+13 | |
| | | | | llvm-svn: 31432 | |||||
* | Tied-to constraint must be op_with_larger_idx = op_with_smaller_idx or else ↵ | Evan Cheng | 2006-11-01 | 1 | -0/+3 | |
| | | | | | | throw an exception. llvm-svn: 31361 | |||||
* | Add operand constraints to TargetInstrInfo. | Evan Cheng | 2006-11-01 | 1 | -0/+48 | |
| | | | | llvm-svn: 31333 | |||||
* | Added properties such as SDNPHasChain to ComplexPattern. | Evan Cheng | 2006-10-11 | 1 | -0/+14 | |
| | | | | llvm-svn: 30890 | |||||
* | Allow more use of iPTR in patterns. | Evan Cheng | 2006-06-15 | 1 | -22/+22 | |
| | | | | llvm-svn: 28790 | |||||
* | Don't generate getCalleeSaveReg and getCalleeSaveRegClasses anymore. | Evan Cheng | 2006-05-18 | 1 | -3/+0 | |
| | | | | llvm-svn: 28376 | |||||
* | Typo | Evan Cheng | 2006-05-17 | 1 | -2/+2 | |
| | | | | llvm-svn: 28366 | |||||
* | Remove PointerType from target definition. Use abstract type MVT::iPTR to | Evan Cheng | 2006-05-17 | 1 | -31/+27 | |
| | | | | | | represent pointer type. llvm-svn: 28363 | |||||
* | Allow patterns to refer to physical registers that belong to multiple | Evan Cheng | 2006-05-16 | 1 | -0/+17 | |
| | | | | | | register classes. llvm-svn: 28323 | |||||
* | Fix a typo: Instr* -> Intr* | Chris Lattner | 2006-04-10 | 1 | -3/+3 | |
| | | | | llvm-svn: 27568 | |||||
* | Only compute intrinsic valuetypes when in a target .td file. | Chris Lattner | 2006-03-28 | 1 | -2/+12 | |
| | | | | llvm-svn: 27197 | |||||
* | revert this, it breaks things. | Chris Lattner | 2006-03-28 | 1 | -4/+3 | |
| | | | | llvm-svn: 27196 | |||||
* | Add support for decoding iPTR to the right pointer type. | Chris Lattner | 2006-03-27 | 1 | -5/+15 | |
| | | | | llvm-svn: 27188 | |||||
* | Make sure to initialize the TheDef field! | Chris Lattner | 2006-03-24 | 1 | -0/+1 | |
| | | | | llvm-svn: 27078 | |||||
* | Move CodeGenIntrinsic implementation to CodeGenTarget.cpp with the rest of | Chris Lattner | 2006-03-24 | 1 | -0/+85 | |
| | | | | | | | | the CodeGen* implementations. Parse the MVT::ValueType for each operand of the intrinsics. llvm-svn: 27075 | |||||
* | getEnumName() missed v8i8, v4i16, and v2i32 types | Evan Cheng | 2006-03-19 | 1 | -0/+3 | |
| | | | | llvm-svn: 26869 | |||||
* | New vector type v2f32. | Evan Cheng | 2006-03-01 | 1 | -0/+2 | |
| | | | | llvm-svn: 26437 | |||||
* | Added x86 integer vector types: 64-bit packed byte integer (v16i8), 64-bit | Evan Cheng | 2006-02-20 | 1 | -0/+3 | |
| | | | | | | packed word integer (v8i16), and 64-bit packed doubleword integer (v2i32). llvm-svn: 26294 | |||||
* | PHI and INLINEASM are now builtin instructions provided by Target.td | Chris Lattner | 2006-01-27 | 1 | -17/+13 | |
| | | | | llvm-svn: 25673 | |||||
* | * Remove instruction fields hasInFlag / hasOutFlag and added SNDPInFlag and | Evan Cheng | 2006-01-09 | 1 | -2/+0 | |
| | | | | | | | | | SNDPOutFlag to DAG nodes. These properties do not belong to target specific instructions. * Added DAG node property SNDPOptInFlag. It's same as SNDPInFlag except it's optional. Used by ret / call, etc. llvm-svn: 25154 | |||||
* | Added field noResults to Instruction. | Evan Cheng | 2005-12-26 | 1 | -0/+1 | |
| | | | | | | | | | | | | Currently tblgen cannot tell which operands in the operand list are results so it assumes the first one is a result. This is bad. Ideally we would fix this by separating results from inputs, e.g. (res R32:$dst), (ops R32:$src1, R32:$src2). But that's a more distruptive change. Adding 'let noResults = 1' is the workaround to tell tblgen that the instruction does not produces a result. It works for now since tblgen does not support instructions which produce multiple results. llvm-svn: 25017 | |||||
* | * Support for hasInFlag and hasOutFlag (on instructions). Remove nameless FLAG | Evan Cheng | 2005-12-23 | 1 | -0/+2 | |
| | | | | | | | support which is fragile. * Fixed a number of bugs. llvm-svn: 24996 | |||||
* | Support for read / write from explicit registers with FlagVT type. | Evan Cheng | 2005-12-17 | 1 | -0/+2 | |
| | | | | llvm-svn: 24753 | |||||
* | * Added an explicit type field to ComplexPattern. | Evan Cheng | 2005-12-08 | 1 | -3/+5 | |
| | | | | | | * Renamed MatchingNodes to RootNodes. llvm-svn: 24636 | |||||
* | Added support for ComplexPattern. These are patterns that require C++ pattern | Evan Cheng | 2005-12-08 | 1 | -0/+9 | |
| | | | | | | | matching code that is not currently auto-generated by tblgen, e.g. X86 addressing mode. Selection routines for complex patterns can return multiple operands, e.g. X86 addressing mode returns 4. llvm-svn: 24634 | |||||
* | * Commit the fix (by Chris) for a tblgen type inferencing bug. | Evan Cheng | 2005-12-04 | 1 | -0/+1 | |
| | | | | | | | | | | | * Enhanced tblgen to handle instructions which have chain operand and writes a chain result. * Enhanced tblgen to handle instructions which produces no results. Part of the change is a temporary hack which relies on instruction property (e.g. isReturn, isBranch). The proper fix would be to change the .td syntax to separate results dag from ops dag. llvm-svn: 24587 | |||||
* | Support multiple ValueTypes per RegisterClass, needed for upcoming vector | Nate Begeman | 2005-12-01 | 1 | -8/+20 | |
| | | | | | | work. This change has no effect on generated code. llvm-svn: 24563 | |||||
* | Nuke CodeGenInstruction's ValueType member, it is no longer used. | Nate Begeman | 2005-12-01 | 1 | -9/+4 | |
| | | | | llvm-svn: 24556 | |||||
* | Add the new vector types to tablegen | Nate Begeman | 2005-11-29 | 1 | -0/+12 | |
| | | | | llvm-svn: 24514 | |||||
* | Initialize this variable on all paths, fixing a crasher in windows. Thanks | Chris Lattner | 2005-11-19 | 1 | -1/+1 | |
| | | | | | | to JeffC for pointing this out. llvm-svn: 24426 | |||||
* | Teach tblgen about instruction operands that have multiple MachineInstr | Chris Lattner | 2005-11-19 | 1 | -1/+4 | |
| | | | | | | | operands, digging into them to find register values (used on X86). Patch by Evan Cheng! llvm-svn: 24424 | |||||
* | Rename Record::getValueAsListDef to getValueAsListOfDefs, to more accurately | Chris Lattner | 2005-10-28 | 1 | -20/+8 | |
| | | | | | | | reflect what it is. Convert some more code over to use it. llvm-svn: 24072 | |||||
* | Do not let getLegalValueTypes return a list with duplicates in it | Chris Lattner | 2005-10-14 | 1 | -0/+7 | |
| | | | | llvm-svn: 23723 | |||||
* | force all instruction operands to be named. | Chris Lattner | 2005-09-14 | 1 | -2/+5 | |
| | | | | llvm-svn: 23358 | |||||
* | Check that operands have unique names. REJECT instructions with broken operand | Chris Lattner | 2005-09-14 | 1 | -29/+39 | |
| | | | | | | lists: only don't parse them if they are entirely missing (sparcv9). llvm-svn: 23355 | |||||
* | Add a new Record::getValueAsCode method to mirror the other getValueAs* | Chris Lattner | 2005-09-13 | 1 | -11/+2 | |
| | | | | | | methods. Use it to simplify some code. llvm-svn: 23336 | |||||
* | Compute the value types that are natively supported by a target. | Chris Lattner | 2005-09-08 | 1 | -0/+6 | |
| | | | | llvm-svn: 23282 | |||||
* | spell this right | Chris Lattner | 2005-08-26 | 1 | -1/+1 | |
| | | | | llvm-svn: 23099 |