#
c9d1e370 |
| 30-Aug-2005 |
Nate Begeman <natebegeman@mac.com> |
Add AssertSext, AssertZext nodes for targets that pass arguments in registers, and the incoming values have already been zero or sign extended from the appopriate type to the register width.
llvm-sv
Add AssertSext, AssertZext nodes for targets that pass arguments in registers, and the incoming values have already been zero or sign extended from the appopriate type to the register width.
llvm-svn: 23146
show more ...
|
#
0d45ee4a |
| 29-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
improve comment
llvm-svn: 23134
|
#
3f0a2493 |
| 27-Aug-2005 |
Reid Spencer <rspencer@reidspencer.com> |
Fix a typo.
llvm-svn: 23117
|
#
c30405e0 |
| 26-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
Change ConstantPoolSDNode to actually hold the Constant itself instead of putting it into the constant pool. This allows the isel machinery to create constants that it will end up deciding are not n
Change ConstantPoolSDNode to actually hold the Constant itself instead of putting it into the constant pool. This allows the isel machinery to create constants that it will end up deciding are not needed, without them ending up in the resultant function constant pool.
llvm-svn: 23081
show more ...
|
#
79b8dad7 |
| 25-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
Add support for TargetConstantPool node
llvm-svn: 23040
|
#
bbe0e7df |
| 25-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
add a new TargetFrameIndex node
llvm-svn: 23035
|
#
46059044 |
| 21-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
Add 5-operand version of SelectNodeTo
llvm-svn: 22950
|
#
7f618f49 |
| 19-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
ADd support for TargetGlobalAddress nodes
llvm-svn: 22939
|
#
19a271a6 |
| 18-Aug-2005 |
Nate Begeman <natebegeman@mac.com> |
Add support for target DAG nodes that take 4 operands, such as PowerPC's rlwinm.
llvm-svn: 22856
|
#
cc0132b2 |
| 17-Aug-2005 |
Nate Begeman <natebegeman@mac.com> |
Add two new methods isTargetOpcode() which returns true if the node type is greater than the range of building selection dag node types, and getTargetOpcode(), which returns the node opcode less the
Add two new methods isTargetOpcode() which returns true if the node type is greater than the range of building selection dag node types, and getTargetOpcode(), which returns the node opcode less the value of isd::builtin_op_end, which specifies the end of the builtin types.
llvm-svn: 22844
show more ...
|
#
d66e6165 |
| 17-Aug-2005 |
Jim Laskey <jlaskey@mac.com> |
Move the code dependency for MathExtras.h from SelectionDAGNodes.h.
Added some class dividers in SelectionDAG.cpp.
llvm-svn: 22841
|
#
b74c6661 |
| 17-Aug-2005 |
Jim Laskey <jlaskey@mac.com> |
Culling out use of unions for converting FP to bits and vice versa.
llvm-svn: 22838
|
#
06d63f42 |
| 17-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
Make removeUser more efficient, add a matching addUser. Fix the setOperands methods I added to update use/def information correctly.
llvm-svn: 22832
|
#
40f909ad |
| 17-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
make sure to remove a node from the use list of its operands when we replace it.
llvm-svn: 22820
|
#
12214cf5 |
| 17-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
add some helper methods, and a new TargetConstant node, which is not subjected to folding.
llvm-svn: 22812
|
#
33182325 |
| 16-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
Eliminate the RegSDNode class, which 3 nodes (CopyFromReg/CopyToReg/ImplicitDef) used to tack a register number onto the node.
Instead of doing this, make a new node, RegisterSDNode, which is a leaf
Eliminate the RegSDNode class, which 3 nodes (CopyFromReg/CopyToReg/ImplicitDef) used to tack a register number onto the node.
Instead of doing this, make a new node, RegisterSDNode, which is a leaf containing a register number. These three operations just become normal DAG nodes now, instead of requiring special handling.
Note that with this change, it is no longer correct to make illegal CopyFromReg/CopyToReg nodes. The legalizer will not touch them, and this is bad, so don't do it. :)
llvm-svn: 22806
show more ...
|
#
371e4951 |
| 16-Aug-2005 |
Nate Begeman <natebegeman@mac.com> |
Implement BR_CC and BRTWOWAY_CC. This allows the removal of a rather nasty fixme from the PowerPC backend. Emit slightly better code for legalizing select_cc.
llvm-svn: 22805
|
#
577af487 |
| 16-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
allow passing a dag into getOperationName and dump
llvm-svn: 22803
|
#
ba19325e |
| 16-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
add some methods for dag->dag isel
llvm-svn: 22800
|
#
e5b86d74 |
| 10-Aug-2005 |
Nate Begeman <natebegeman@mac.com> |
Add new node, SELECT_CC. This node is for targets that don't natively implement SELECT.
llvm-svn: 22755
|
#
d47675ed |
| 09-Aug-2005 |
Chris Lattner <sabre@nondot.org> |
Eliminate the SetCCSDNode in favor of a CondCodeSDNode class. This pulls the CC out of the SetCC operation, making SETCC a standard ternary operation and CC's a standard DAG leaf. This will make it
Eliminate the SetCCSDNode in favor of a CondCodeSDNode class. This pulls the CC out of the SetCC operation, making SETCC a standard ternary operation and CC's a standard DAG leaf. This will make it possible for other node to use CC's as operands in the future...
llvm-svn: 22728
show more ...
|
#
33a030e3 |
| 27-Jul-2005 |
Jeff Cohen <jeffc@jolt-lang.org> |
Eliminate tabs and trailing spaces.
llvm-svn: 22520
|
#
de0a4b19 |
| 10-Jul-2005 |
Chris Lattner <sabre@nondot.org> |
Change *EXTLOAD to use an VTSDNode operand instead of being an MVTSDNode. This is the last MVTSDNode.
This allows us to eliminate a bunch of special case code for handling MVTSDNodes.
llvm-svn: 223
Change *EXTLOAD to use an VTSDNode operand instead of being an MVTSDNode. This is the last MVTSDNode.
This allows us to eliminate a bunch of special case code for handling MVTSDNodes.
llvm-svn: 22367
show more ...
|
#
9bfa5495 |
| 10-Jul-2005 |
Chris Lattner <sabre@nondot.org> |
Move TRUNCSTORE to using a VTSDNode operand instead of being a MVTSDNode. Also update some comments that Andrew forgot to update when he changed loads/stores.
llvm-svn: 22365
|
#
0b6ba90a |
| 10-Jul-2005 |
Chris Lattner <sabre@nondot.org> |
Introduce a new VTSDNode class with the ultimate goal of eliminating the MVTSDNode class. This class is used to provide an operand to operators that require an extra type. We start by converting FP
Introduce a new VTSDNode class with the ultimate goal of eliminating the MVTSDNode class. This class is used to provide an operand to operators that require an extra type. We start by converting FP_ROUND_INREG and SIGN_EXTEND_INREG over to using it.
llvm-svn: 22364
show more ...
|