Jeff Cohen
81980781a1
Eliminate tabs and trailing spaces.
...
llvm-svn: 22520
2005-07-27 05:53:44 +00:00
Chris Lattner
6e49696ba6
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
2005-07-10 01:55:33 +00:00
Chris Lattner
a966d80ab8
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
2005-07-10 00:28:25 +00:00
Chris Lattner
c355896290
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
2005-07-10 00:07:11 +00:00
Chris Lattner
3afe2d8d83
add accessors
...
llvm-svn: 22007
2005-05-14 06:19:11 +00:00
Chris Lattner
97505aa9ac
add TAILCALL node
...
llvm-svn: 21956
2005-05-13 18:40:17 +00:00
Chris Lattner
094bbfcebb
rename the ADJCALLSTACKDOWN/ADJCALLSTACKUP nodes to be CALLSEQ_START/BEGIN.
...
llvm-svn: 21915
2005-05-12 23:24:06 +00:00
Chris Lattner
328273326d
new method
...
llvm-svn: 21869
2005-05-11 18:56:45 +00:00
Chris Lattner
9aedca57b1
Add READPORT, WRITEPORT, READIO, WRITEIO nodes, wrap long lines
...
llvm-svn: 21823
2005-05-09 20:21:27 +00:00
Andrew Lenharth
8b64bd0fd5
Implement count leading zeros (ctlz), count trailing zeros (cttz), and count
...
population (ctpop). Generic lowering is implemented, however only promotion
is implemented for SelectionDAG at the moment.
More coming soon.
llvm-svn: 21676
2005-05-03 17:19:30 +00:00
Chris Lattner
4678a790e6
Add FSQRT, FSIN, FCOS nodes, patch contributed by Morten Ofstad
...
llvm-svn: 21605
2005-04-28 21:44:03 +00:00
Andrew Lenharth
2a00530fa7
Implement Value* tracking for loads and stores in the selection DAG. This enables one to use alias analysis in the backends.
...
(TRUNK)Stores and (EXT|ZEXT|SEXT)Loads have an extra SDOperand which is a SrcValueSDNode which contains the Value*. Note that if the operation is introduced by the backend, it will still have the operand, but the value* will be null.
llvm-svn: 21599
2005-04-27 20:10:01 +00:00
Misha Brukman
4ad5efd1a9
Remove trailing whitespace
...
llvm-svn: 21409
2005-04-21 20:39:54 +00:00
Chris Lattner
f5fe51581b
Remove the ZERO_EXTEND_INREG node which is redundant with AND
...
llvm-svn: 21263
2005-04-13 02:36:41 +00:00
Chris Lattner
b0e6e4b693
Add a new node
...
llvm-svn: 21162
2005-04-09 03:21:50 +00:00
Chris Lattner
6c466448d3
fix this method for 64-bit constants
...
llvm-svn: 21158
2005-04-08 21:31:29 +00:00
Chris Lattner
4201b81130
document these nodes, as they are nonobvious
...
llvm-svn: 21108
2005-04-06 04:21:29 +00:00
Nate Begeman
12af81407b
Add MULHU and MULHS nodes for the high part of an (un)signed 32x32=64b
...
multiply.
llvm-svn: 21102
2005-04-05 22:36:56 +00:00
Chris Lattner
e74fa510c9
Add two happy new nodes for FABS and FNEG
...
llvm-svn: 21007
2005-04-02 04:58:28 +00:00
Chris Lattner
92920b74a0
fix a comment
...
llvm-svn: 21003
2005-04-02 03:59:45 +00:00
Chris Lattner
37abadec02
add some new nodes.
...
llvm-svn: 21000
2005-04-02 03:30:33 +00:00
Nate Begeman
4034852ba9
Add ISD::UNDEF node
...
Teach the SelectionDAG code how to expand and promote it
Have PPC32 LowerCallTo generate ISD::UNDEF for int arg regs used up by fp
arguments, but not shadowing their value. This allows us to do the right
thing with both fixed and vararg floating point arguments.
llvm-svn: 20988
2005-04-01 22:34:39 +00:00
Misha Brukman
b5dc9aae6c
Fix spelling of `corresponds'
...
llvm-svn: 20966
2005-03-31 21:30:35 +00:00
Andrew Lenharth
7db3834ecf
PCMarker support for DAG and Alpha
...
llvm-svn: 20965
2005-03-31 21:24:06 +00:00
Chris Lattner
9ee3bbc844
Keep track of node depth for each node
...
llvm-svn: 19732
2005-01-21 21:39:38 +00:00
Chris Lattner
8e17ad37f2
Eliminate the unimplemented ADDC/SUBB operations, add ADD_PARTS/SUB_PARTS instead.
...
llvm-svn: 19713
2005-01-20 18:50:39 +00:00
Chris Lattner
818e819e43
Allow setcc operations to have non-bool types.
...
llvm-svn: 19655
2005-01-18 02:51:41 +00:00
Chris Lattner
783a9d8893
Add methods
...
llvm-svn: 19627
2005-01-17 02:24:59 +00:00
Chris Lattner
2f65e8798f
Add new SIGN_EXTEND_INREG, ZERO_EXTEND_INREG, and FP_ROUND_INREG operators.
...
llvm-svn: 19568
2005-01-15 06:17:04 +00:00
Chris Lattner
3df2651c81
Change CopyFromReg to take and produce a chain node, allowing it to be used
...
with physregs that are not live across the entire block.
llvm-svn: 19560
2005-01-14 22:37:20 +00:00
Chris Lattner
c73bf62770
Start adding some new operators, give IMPLICIT_DEF a chain operand.
...
llvm-svn: 19558
2005-01-14 22:07:46 +00:00
Chris Lattner
c6f23adb2a
Add a method
...
llvm-svn: 19538
2005-01-13 22:58:50 +00:00
Chris Lattner
7a8788c9ac
Add new ImplicitDef node, rename CopyRegSDNode class to RegSDNode.
...
llvm-svn: 19535
2005-01-13 20:50:02 +00:00
Chris Lattner
000509e7b0
Add a new node type, add comments.
...
llvm-svn: 19525
2005-01-13 17:58:35 +00:00
Chris Lattner
92c07c0dba
New method.
...
llvm-svn: 19516
2005-01-12 18:37:33 +00:00
Chris Lattner
f01a5206ea
Update comments to indicate CopyFrom/ToReg take physregs as well as vregs.
...
llvm-svn: 19514
2005-01-12 18:11:36 +00:00
Chris Lattner
1b9caa4504
Add MEMSET/MEMCPY/MEMMOVE operations. Fix a really bad bug in the vector
...
SDNode ctor.
llvm-svn: 19462
2005-01-11 05:56:17 +00:00
Chris Lattner
9ed0d66c8a
Add a helper method.
...
llvm-svn: 19442
2005-01-10 23:25:04 +00:00
Chris Lattner
a4f7c88eb6
Add support for graph operations, and add a viewGraph method to SelectionDAG.
...
llvm-svn: 19440
2005-01-10 23:05:53 +00:00
Chris Lattner
a58b3f48ef
Silence VS warnings.
...
llvm-svn: 19384
2005-01-08 19:52:31 +00:00
Chris Lattner
e4cd40b379
Add operators for FP -> INT conversions and back.
...
llvm-svn: 19368
2005-01-08 08:08:49 +00:00
Chris Lattner
6182c88b85
Add a new SelectionDAG::RemoveDeadNodes method
...
llvm-svn: 19344
2005-01-07 21:08:55 +00:00
Jeff Cohen
6b821ecd16
Fix include. Too easy to make mistakes like this on Windows :(
...
llvm-svn: 19343
2005-01-07 19:21:49 +00:00
Jeff Cohen
a97d6be787
Get new SelectionDAG stuff building with Visual Studio.
...
llvm-svn: 19340
2005-01-07 15:52:36 +00:00
Chris Lattner
c5b77f7009
Initial implementation of the nodes in a SelectionDAG.
...
llvm-svn: 19325
2005-01-07 07:45:27 +00:00