- Mar 01, 2010
-
-
Chris Lattner authored
to a scope where every child starts with a CheckOpcode, but executes more efficiently. Enhance DAGISelMatcherOpt to form it. This also fixes a bug in CheckOpcode: apparently the SDNodeInfo objects are not pointer comparable, we have to compare the enum name. llvm-svn: 97438
-
Chris Lattner authored
slot they're recording into, no functionality change. llvm-svn: 97433
-
Chris Lattner authored
dispatcher method. This eliminates the dependence of the new isel's generated code on the old isel's predicates, however some random hand written isel code still uses them. llvm-svn: 97431
-
Chris Lattner authored
the vtlist for emitnode. llvm-svn: 97429
-
- Feb 28, 2010
-
-
Chris Lattner authored
warnings in release-assert builds if there were no cases. llvm-svn: 97428
-
Chris Lattner authored
immediate sizes into the opcode. llvm-svn: 97423
-
Chris Lattner authored
specifies whether there is an output flag or not. Use this instead of redundantly encoding the chain/flag results in the output vtlist. llvm-svn: 97419
-
Chris Lattner authored
is just a silly wrapper around MorphNodeTo. llvm-svn: 97416
-
Chris Lattner authored
even some the old isel didn't. There are several parts of this that make me feel dirty, but it's no worse than the old isel. I'll clean up the parts I can do without ripping out the old one next. llvm-svn: 97415
-
Chris Lattner authored
it will populate. llvm-svn: 97363
-
Chris Lattner authored
because I have to go on another detour first. llvm-svn: 97362
-
- Feb 27, 2010
-
-
Chris Lattner authored
the opcode name. This gives the optimizer more semantic info. llvm-svn: 97346
-
- Feb 26, 2010
-
-
Chris Lattner authored
llvm-svn: 97219
-
- Feb 25, 2010
-
-
Chris Lattner authored
instead of to have a chained series of scope nodes. This makes the generated table smaller, improves the efficiency of the interpreter, and make the factoring optimization much more reasonable to implement. llvm-svn: 97160
-
Chris Lattner authored
llvm-svn: 97097
-
Chris Lattner authored
llvm-svn: 97096
-
Chris Lattner authored
reflect what it does. Switch the sense of the Next and the Check arms to be more logical. No functionality change. llvm-svn: 97093
-
- Feb 24, 2010
-
-
Chris Lattner authored
x86 table by 1200 bytes. llvm-svn: 97053
-
Chris Lattner authored
llvm-svn: 97047
-
Chris Lattner authored
the old one around for comparative purposes: have the ENABLE_NEW_ISEL #define (which is not enabled on mainline) stop emitting the old isel at all, yay for build time win. llvm-svn: 97033
-
Chris Lattner authored
the new isel: fold movechild+record+moveparent into a single recordchild N node. This shrinks the X86 table from 125443 to 117502 bytes. llvm-svn: 97031
-
Chris Lattner authored
internal nodes with flag results. Record these with a new OPC_MarkFlagResults opcode and use this to update the interior nodes' flag results properly. This fixes CodeGen/X86/i256-add.ll with the new isel. llvm-svn: 97021
-
- Feb 23, 2010
-
-
Chris Lattner authored
llvm-svn: 96845
-
Chris Lattner authored
VBR encoding for the insanity being perpetrated by the spu backend. llvm-svn: 96843
-
Chris Lattner authored
ridiculously ginormous patterns and need more than one byte of displacement for encodings. This fixes CellSPU/fdiv.ll. SPU is still doing something else ridiculous though. llvm-svn: 96833
-
- Feb 22, 2010
-
-
Chris Lattner authored
has one of the list of acceptable opcodes for a complex pattern. This fixes 4 regtest failures. llvm-svn: 96814
-
- Feb 21, 2010
-
-
Chris Lattner authored
llvm-svn: 96730
-
Chris Lattner authored
With this, the matcher actually works reasonably well, but crashes on larger examples in the scheduler. llvm-svn: 96727
-
Chris Lattner authored
body before the push. llvm-svn: 96726
-
Chris Lattner authored
of the matched pattern to use the newly created node results. Onto the "making it actually work" phase! llvm-svn: 96724
-
Chris Lattner authored
the point where it is to the 95% feature complete mark, it just needs result updating to be done (then testing, optimization etc). More specificallly, this adds support for chain and flag handling on the result nodes, support for sdnodexforms, support for variadic nodes, memrefs, pinned physreg inputs, and probably lots of other stuff. In the old DAGISelEmitter, this deletes the dead code related to OperatorMap, cleans up a variety of dead stuff handling "implicit remapping" from things like globaladdr -> targetglobaladdr (which is no longer used because globaladdr always needs to be legalized), and some minor formatting fixes. llvm-svn: 96716
-
- Feb 19, 2010
-
-
Chris Lattner authored
llvm-svn: 96663
-
- Feb 18, 2010
-
-
Chris Lattner authored
building the tree to represent them but not emitting table entries for them yet. llvm-svn: 96617
-
Chris Lattner authored
Nothing real here yet. llvm-svn: 96575
-
Chris Lattner authored
relationship, this is a linear list relationship. llvm-svn: 96561
-
Chris Lattner authored
field to MatcherNode. llvm-svn: 96560
-
- Feb 17, 2010
-
-
Chris Lattner authored
llvm-svn: 96464
-
Chris Lattner authored
I'd like to eventually rip it out, but for now producing the same selections as the old matcher is more important. llvm-svn: 96458
-
Chris Lattner authored
llvm-svn: 96433
-
Chris Lattner authored
llvm-svn: 96422
-