- Jul 11, 2008
-
-
Dan Gohman authored
llvm-svn: 53471
-
Owen Anderson authored
llvm-svn: 53470
-
Duncan Sands authored
be no need to split the result of a vector RET node, since they are always already legal. llvm-svn: 53462
-
Duncan Sands authored
SINT_TO_FP libcall plus additional operations: it might as well be a direct UINT_TO_FP libcall. So only turn it into an SINT_TO_FP if the target has special handling for SINT_TO_FP. llvm-svn: 53461
-
Duncan Sands authored
llvm-svn: 53460
-
Duncan Sands authored
was presumably added after the rest of the code was copied to LegalizeTypes. llvm-svn: 53459
-
Duncan Sands authored
on 16 bit machines. llvm-svn: 53458
-
Nick Lewycky authored
llvm-svn: 53454
-
Duncan Sands authored
whitespace. llvm-svn: 53453
-
Nick Lewycky authored
llvm-svn: 53452
-
Nick Lewycky authored
similar. llvm-svn: 53451
-
Bill Wendling authored
llvm-svn: 53450
-
Chris Lattner authored
llvm-svn: 53449
-
Chris Lattner authored
llvm-svn: 53448
-
Chris Lattner authored
llvm-svn: 53447
-
Chris Lattner authored
the min/max values for an integer type, compare against the min/max values we can prove contain the input. This might be a tighter bound, so this is general goodness. llvm-svn: 53446
-
Chris Lattner authored
handle them in some code. llvm-svn: 53445
-
Chris Lattner authored
was using the algorithm for folding unsigned comparisons which is completely wrong. This has been broken since the signless types change. llvm-svn: 53444
-
Chris Lattner authored
This cause a regression in InstCombine/JavaCompare, which was doing the right thing on accident. To handle the missed case, generalize the comparisons based on masked bits a little bit to handle comparisons against the max value. For example, we can now xform (slt i32 (and X, 4), 4) -> (setne i32 (and X, 4), 4) llvm-svn: 53443
-
Chris Lattner authored
llvm-svn: 53440
-
Chris Lattner authored
llvm-svn: 53438
-
Chris Lattner authored
when working on legalizetypes. Both legalizetypes and legalizeops now produce hte same code for CodeGen/ARM/fcopysign.ll. llvm-svn: 53435
-
Chris Lattner authored
llvm-svn: 53434
-
- Jul 10, 2008
-
-
Dan Gohman authored
other passes. llvm-svn: 53415
-
Evan Cheng authored
llvm-svn: 53414
-
Chris Lattner authored
llvm-svn: 53411
-
Chris Lattner authored
his work on legalizetypes. llvm-svn: 53410
-
Duncan Sands authored
Lack of these caused a bootstrap failure with Fortran on x86-64 with LegalizeTypes turned on. While there, be nice to 16 bit machines and support expansion of i32 too. llvm-svn: 53408
-
Duncan Sands authored
Be nice to 16 bit machines by supporting FP_TO_XINT expansion for these. llvm-svn: 53407
-
Duncan Sands authored
llvm-svn: 53406
-
Duncan Sands authored
was doing there: FP_ROUND returns a float, not an integer. llvm-svn: 53405
-
Duncan Sands authored
in CreateStackStoreLoad is good enough for both the source and destination types. llvm-svn: 53404
-
Duncan Sands authored
llvm-svn: 53403
-
Duncan Sands authored
a ginormous value (eg: i128 -1). llvm-svn: 53402
-
Matthijs Kooijman authored
Rewrite the DeadArgumentElimination pass, to use a more explicit tracking of dependencies between return values and/or arguments. Also make the handling of arguments and return values the same. The pass now looks properly inside returned structs, but only at the first level (ie, not inside nested structs). This version fixed a few more bugs and was cleaned up a bit. It now passes all of LLVM's testing, and should still pass SPEC2006. There is still a minor bug with regard to returning nested structs. Since there is currently nothing that emits such IR, I will fix that in a seperate commit (partly because it requires a non-trivial fix). llvm-svn: 53400
-
Evan Cheng authored
- Change the horrible N^2 isRegReDefinedByTwoAddr. Now callers must supply the operand index of def machineoperand and at most one full scan of non-implicit operands is needed. - Change local register allocator to use the new isRegReDefinedByTwoAddr instead of reinventing the wheel. llvm-svn: 53394
-
Nick Lewycky authored
llvm-svn: 53393
-
Owen Anderson authored
Use DenseMap instead of std::map in local register allocation. This improves the time on instcombine from .31s to .22s llvm-svn: 53390
-
Owen Anderson authored
llvm-svn: 53389
-
Owen Anderson authored
llvm-svn: 53388
-