- Feb 15, 2008
-
-
Evan Cheng authored
register defs and uses after each successful coalescing. - Also removed a number of hacks and fixed some subtle kill information bugs. llvm-svn: 47167
-
Evan Cheng authored
machine instr will change its definition register. llvm-svn: 47166
-
Evan Cheng authored
llvm-svn: 47164
-
Dan Gohman authored
with a hard-coded operand number. llvm-svn: 47163
-
Dale Johannesen authored
that doesn't support it. Per Chris. llvm-svn: 47162
-
Lauro Ramos Venancio authored
llvm-svn: 47161
-
Devang Patel authored
llvm-svn: 47150
-
Dale Johannesen authored
llvm-svn: 47149
-
Chris Lattner authored
llvm-svn: 47148
-
Dale Johannesen authored
it follows the order of the enum, not alphabetical. The motivation is to make -mattr=+ssse3,+sse41 select SSE41 as it ought to. Added "ignored" enum values of 0 to PPC and SPU to avoid compiler warnings. llvm-svn: 47143
-
Devang Patel authored
Fixes PR 2030. llvm-svn: 47141
-
- Feb 14, 2008
-
-
Dan Gohman authored
being consistent with the rest of the APInt implementation. llvm-svn: 47138
-
Chris Lattner authored
llvm-svn: 47129
-
Chris Lattner authored
llvm-svn: 47128
-
Nate Begeman authored
which allows us to kill a target-specific node. llvm-svn: 47127
-
Duncan Sands authored
the return value is zero-extended if it isn't sign-extended. It may also be any-extended. Also, if a floating point value was returned in a larger floating point type, pass 1 as the second operand to FP_ROUND, which tells it that all the precision is in the original type. I think this is right but I could be wrong. Finally, when doing libcalls, set isZExt on a parameter if it is "unsigned". Currently isSExt is set when signed, and nothing is set otherwise. This should be right for all calls to standard library routines. llvm-svn: 47122
-
Nate Begeman authored
1) ConstantFP is now expand by default 2) ConstantFP is not turned into TargetConstantFP during Legalize if it is legal. This allows ConstantFP to be handled like Constant, allowing for targets that can encode FP immediates as MachineOperands. As a bonus, fix up Itanium FP constants, which now correctly match, and match more constants! Hooray. llvm-svn: 47121
-
Nate Begeman authored
FP Immediates, crazily enough llvm-svn: 47117
-
Chris Lattner authored
llvm-svn: 47116
-
Nate Begeman authored
llvm-svn: 47115
-
Nick Lewycky authored
llvm-svn: 47111
-
Chris Lattner authored
llvm-svn: 47109
-
Chris Lattner authored
llvm-svn: 47108
-
Chris Lattner authored
llvm-svn: 47107
-
Chris Lattner authored
llvm-svn: 47106
-
Dan Gohman authored
llvm-svn: 47101
-
Dan Gohman authored
size. Initialize these APInts to properly-sized zero values. llvm-svn: 47099
-
- Feb 13, 2008
-
-
Dan Gohman authored
llvm-svn: 47098
-
Dan Gohman authored
to pass the mask APInt by value, not by reference. llvm-svn: 47096
-
Devang Patel authored
llvm-svn: 47093
-
Dan Gohman authored
actually does. llvm-svn: 47090
-
Devang Patel authored
llvm-svn: 47089
-
Dan Gohman authored
llvm-svn: 47086
-
Devang Patel authored
llvm-svn: 47082
-
Nicolas Geoffray authored
llvm-svn: 47079
-
Duncan Sands authored
CTTZ and CTPOP. The expansion code differs from that in LegalizeDAG in that it chooses to take the CTLZ/CTTZ count from the Hi/Lo part depending on whether the Hi/Lo value is zero, not on whether CTLZ/CTTZ of Hi/Lo returned 32 (or whatever the width of the type is) for it. I made this change because the optimizers may well know that Hi/Lo is zero and exploit it. The promotion code for CTTZ also differs from that in LegalizeDAG: it uses an "or" to get the right result when the original value is zero, rather than using a compare and select. This also means the value doesn't need to be zero extended. llvm-svn: 47075
-
Chris Lattner authored
llvm-svn: 47067
-
Chris Lattner authored
llvm-svn: 47066
-
Devang Patel authored
llvm-svn: 47065
-
Wojciech Matyjewicz authored
llvm-svn: 47062
-