- Feb 17, 2010
-
-
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
resolving a fixme. llvm-svn: 96457
-
Chris Lattner authored
'ischaincompatible' when a pattern has more than one input chain. Need to do some commenting and cleanup now that I understand how this works. llvm-svn: 96443
-
Chris Lattner authored
llvm-svn: 96437
-
Chris Lattner authored
variables. Use the fancy OpNo variable instead of i, which has the right index including chains. llvm-svn: 96436
-
Chris Lattner authored
llvm-svn: 96433
-
Chris Lattner authored
for evaluating complex patterns. Some cleanup has to happen before this can be used though. llvm-svn: 96419
-
Chris Lattner authored
llvm-svn: 96416
-
Chris Lattner authored
record all their results. llvm-svn: 96412
-
- Feb 16, 2010
-
-
rdar://7653908Chris Lattner authored
into a roundss intrinsic, producing a cyclic dag. The root cause of this is badness handling ComplexPattern nodes in the old dagisel that I noticed through inspection. Eliminate a copy of the of the code that handled ComplexPatterns by making EmitChildMatchCode call into EmitMatchCode. llvm-svn: 96408
-
Chris Lattner authored
need to scan the entire subtree of the pattern anymore. llvm-svn: 96369
-
Chris Lattner authored
use and only call IsProfitableToFold/IsLegalToFold on the load being folded, like the old dagiselemitter does. This substantially simplifies the code and improves opportunities for sharing. llvm-svn: 96368
-
Chris Lattner authored
llvm-svn: 96333
-
Chris Lattner authored
(isprofitable|islegal)tofold checks. llvm-svn: 96331
-
- Feb 15, 2010
-
-
Chris Lattner authored
produce a table based matcher instead of gobs of C++ Code. Though it's not done yet, the shrinkage seems promising, the table for the X86 ISel is 75K and still has a lot of optimization to come (compare to the ~1.5M of .o generated the old way, much of which will go away). The code is currently disabled by default (the #if 0 in DAGISelEmitter.cpp). When enabled it generates a dead SelectCode2 function in the DAGISel Header which will eventually replace SelectCode. There is still a lot of stuff left to do, which are documented with a trail of FIXMEs. llvm-svn: 96215
-