Evan Cheng
9f21c2daf4
Remove the temporary option: -no-isel-fold-inflight
...
llvm-svn: 28012
2006-04-28 18:54:11 +00:00
Evan Cheng
ff5a88b62e
Added a temporary option -no-isel-fold-inflight to control whether a "inflight"
...
node can be folded.
llvm-svn: 28003
2006-04-28 02:09:19 +00:00
Evan Cheng
679d1dd5cf
Added addJumpTableIndex
...
llvm-svn: 27956
2006-04-24 06:42:15 +00:00
Nate Begeman
7bb910dbe7
Fix the updating of the machine CFG when a PHI node was in a successor of
...
the jump table's range check block. This re-enables 100% dense jump tables
by default on PPC & x86
llvm-svn: 27952
2006-04-23 06:26:20 +00:00
Nate Begeman
f86709e9e2
Code cleanup associated with jump tables, thanks to Chris for noticing
...
these.
llvm-svn: 27950
2006-04-22 23:52:35 +00:00
Nate Begeman
7ed816f900
JumpTable support! What this represents is working asm and jit support for
...
x86 and ppc for 100% dense switch statements when relocations are non-PIC.
This support will be extended and enhanced in the coming days to support
PIC, and less dense forms of jump tables.
llvm-svn: 27947
2006-04-22 18:53:45 +00:00
Chris Lattner
7649e06c23
Remove some of the obvious v9-specific cruft
...
llvm-svn: 27894
2006-04-20 18:09:13 +00:00
Nate Begeman
7821901005
Fix a copy & paste error from long ago.
...
llvm-svn: 27800
2006-04-18 16:03:18 +00:00
Chris Lattner
bcd61bbadb
Add some convenience methods.
...
llvm-svn: 27774
2006-04-17 21:35:08 +00:00
Reid Spencer
553050adcb
Make sure both member variables are initialized in the default constructor
...
for SDOperand. This gets rid of numerous warnings in lib/CodeGen and
lib/Target when compiled with GCC 4.0.2
llvm-svn: 27607
2006-04-12 16:44:15 +00:00
Chris Lattner
bf69078515
new dag node
...
llvm-svn: 27596
2006-04-11 21:30:42 +00:00
Chris Lattner
eda5a7014a
Add helper methods.
...
llvm-svn: 27576
2006-04-11 01:09:25 +00:00
Chris Lattner
a4a7e59c52
Add a new VSELECT node.
...
llvm-svn: 27541
2006-04-08 22:16:01 +00:00
Jim Laskey
fabb0ba736
Make sure that debug labels are defined within the same section and after the
...
entry point of a function.
llvm-svn: 27494
2006-04-07 20:44:42 +00:00
Jim Laskey
b93bc75add
Foundation for call frame information.
...
llvm-svn: 27491
2006-04-07 16:34:46 +00:00
Chris Lattner
6ce700fbae
Make sure to consider alignment of variable sized objects.
...
This, along with the previous dag combiner fix, fixes
CodeGen/Alpha/2006-04-04-zextload.ll
llvm-svn: 27403
2006-04-04 17:39:56 +00:00
Chris Lattner
b46d7d9fc4
Keep track of max stack alignment as objects are added. Remove an obsolete method.
...
llvm-svn: 27378
2006-04-03 21:38:39 +00:00
Chris Lattner
99a3213376
simplify this method
...
llvm-svn: 27338
2006-04-02 02:28:52 +00:00
Chris Lattner
83ec289ebf
Add a new node
...
llvm-svn: 27230
2006-03-28 19:54:11 +00:00
Jim Laskey
4c2d4d1912
Refactor address attributes. Add base register to frame info.
...
llvm-svn: 27226
2006-03-28 14:58:32 +00:00
Evan Cheng
d10153ba72
getVectorTyppe(MVT::i64, 2) ==> MVT::v2i64.
...
llvm-svn: 27207
2006-03-28 01:59:17 +00:00
Chris Lattner
a0f80c3c3f
Tblgen doesn't like multiple SDNode<> definitions that map to the same
...
enum value. Split them into separate enums.
llvm-svn: 27199
2006-03-28 00:39:06 +00:00
Chris Lattner
fd3aa5f890
add a new iPTR ValueType for tblgen use
...
llvm-svn: 27187
2006-03-27 22:48:00 +00:00
Evan Cheng
4667bd17cb
Change isBuildVectorAllOnesInteger to isBuildVectorAllOnes. Also check for
...
floating point cases.
llvm-svn: 27165
2006-03-27 06:58:47 +00:00
Nate Begeman
3d518334b9
SelectionDAGISel can now natively handle Switch instructions, in the same
...
manner that the LowerSwitch LLVM to LLVM pass does: emitting a binary
search tree of basic blocks. The new approach has several advantages:
it is faster, it generates significantly smaller code in many cases, and
it paves the way for implementing dense switch tables as a jump table by
handling switches directly in the instruction selector.
This functionality is currently only enabled on x86, but should be safe for
every target. In anticipation of making it the default, the cfg is now
properly updated in the x86, ppc, and sparc select lowering code.
llvm-svn: 27156
2006-03-27 01:32:24 +00:00
Jim Laskey
278ca1e735
How to be dumb on $5/day. Need a tri-state to track valid debug descriptors.
...
llvm-svn: 27154
2006-03-26 22:45:20 +00:00
Evan Cheng
ef3b33b847
Add ISD::isBuildVectorAllZeros predicate
...
llvm-svn: 27147
2006-03-26 09:50:58 +00:00
Chris Lattner
91fe1d4b55
Add a predicate
...
llvm-svn: 27129
2006-03-25 22:56:35 +00:00
Chris Lattner
7c4160da23
add a new intrinsic node
...
llvm-svn: 27019
2006-03-24 01:03:55 +00:00
Jim Laskey
4ab13dc9be
Make sure types are allocated in the scope of their use.
...
llvm-svn: 27002
2006-03-23 23:02:34 +00:00
Jim Laskey
867301543c
Generate local variable and scope information and equivalent dwarf forms.
...
llvm-svn: 26989
2006-03-23 18:07:55 +00:00
Jim Laskey
36afd7b19d
Support for locating of debug items in frames.
...
llvm-svn: 26984
2006-03-23 18:01:12 +00:00
Chris Lattner
d4f04c4b6a
Fix comments
...
llvm-svn: 26960
2006-03-22 20:09:04 +00:00
Chris Lattner
b1bc1f88c0
add a new node
...
llvm-svn: 26958
2006-03-22 19:56:46 +00:00
Chris Lattner
9f8cfe5ab4
add some nodes for extractelement
...
llvm-svn: 26927
2006-03-21 20:43:08 +00:00
Chris Lattner
c0f029cf63
Add another helper
...
llvm-svn: 26881
2006-03-20 00:20:30 +00:00
Chris Lattner
0b7ec34646
add a node
...
llvm-svn: 26879
2006-03-19 23:42:51 +00:00
Chris Lattner
8e89272e96
Add a helper method
...
llvm-svn: 26878
2006-03-19 23:41:32 +00:00
Chris Lattner
bbbf21b37b
improve comments, add a new MVT::getVectorBaseType method.
...
llvm-svn: 26855
2006-03-19 05:26:45 +00:00
Chris Lattner
868679006d
Rename ConstantVec -> BUILD_VECTOR and VConstant -> VBUILD_VECTOR. Allow
...
*BUILD_VECTOR to take variable inputs.
llvm-svn: 26846
2006-03-19 00:52:25 +00:00
Chris Lattner
25feee0be9
Update comments.
...
llvm-svn: 26839
2006-03-18 01:43:28 +00:00
Chris Lattner
da6506a1f2
add a couple of enum values
...
llvm-svn: 26829
2006-03-17 19:53:41 +00:00
Nate Begeman
42736d46b2
Remove BRTWOWAY*
...
Make the PPC backend not dependent on BRTWOWAY_CC and make the branch
selector smarter about the code it generates, fixing a case in the
readme.
llvm-svn: 26814
2006-03-17 01:40:33 +00:00
Chris Lattner
c7aaa3cc89
Add markers for the first and last vector value type.
...
llvm-svn: 26796
2006-03-16 19:42:44 +00:00
Jim Laskey
f6494d753a
Expand subprogram and added block descriptor.
...
llvm-svn: 26782
2006-03-15 19:09:58 +00:00
Chris Lattner
f80c0a7188
remove ShouldEmitDebugFunctions, a hack to support llvm-db via the jit
...
llvm-svn: 26702
2006-03-10 22:49:05 +00:00
Chris Lattner
0a64d261e0
Move simple-selector-specific types to the simple selector.
...
llvm-svn: 26693
2006-03-10 07:51:18 +00:00
Chris Lattner
40b1b16c56
Simplify the interface to the schedulers, to not pass the selected heuristic
...
in.
llvm-svn: 26691
2006-03-10 07:48:52 +00:00
Chris Lattner
da5f77e3cf
Move some simple-sched-specific instance vars to the simple scheduler.
...
llvm-svn: 26690
2006-03-10 07:42:02 +00:00
Chris Lattner
808cc02983
move some simple scheduler methods into the simple scheduler
...
llvm-svn: 26688
2006-03-10 07:35:21 +00:00