diff options
| author | Andrew Lenharth <andrewl@lenharth.org> | 2005-11-30 07:19:56 +0000 |
|---|---|---|
| committer | Andrew Lenharth <andrewl@lenharth.org> | 2005-11-30 07:19:56 +0000 |
| commit | 6db615df14968c297f80c2a099867e84b25ba7df (patch) | |
| tree | 0a576c0e3f6aa45fdee0c6a7af72c9376c60acbb /llvm/lib/Target/Alpha/AlphaISelPattern.cpp | |
| parent | 8d17c701719960de9d14338fa93a4318ace0e167 (diff) | |
| download | bcm5719-llvm-6db615df14968c297f80c2a099867e84b25ba7df.tar.gz bcm5719-llvm-6db615df14968c297f80c2a099867e84b25ba7df.zip | |
All sorts of stuff.
Getting in on the custom lowering thing, yay
evilness with fp setcc, yuck
trivial int select, hmmm
in memory args for functions, yay
DIV and REM, always handy. They should be custom lowered though.
Lots more stuff compiles now (go go single source!). Of course, none of it
probably works, but that is what the nightly tester can find out :)
llvm-svn: 24533
Diffstat (limited to 'llvm/lib/Target/Alpha/AlphaISelPattern.cpp')
| -rw-r--r-- | llvm/lib/Target/Alpha/AlphaISelPattern.cpp | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/llvm/lib/Target/Alpha/AlphaISelPattern.cpp b/llvm/lib/Target/Alpha/AlphaISelPattern.cpp index 6c2e3a6f53d..05ed61f8cf5 100644 --- a/llvm/lib/Target/Alpha/AlphaISelPattern.cpp +++ b/llvm/lib/Target/Alpha/AlphaISelPattern.cpp @@ -1559,17 +1559,17 @@ unsigned AlphaISel::SelectExpr(SDOperand N) { } return Result; - case ISD::SINT_TO_FP: - { - assert (N.getOperand(0).getValueType() == MVT::i64 - && "only quads can be loaded from"); - Tmp1 = SelectExpr(N.getOperand(0)); // Get the operand register - Tmp2 = MakeReg(MVT::f64); - MoveInt2FP(Tmp1, Tmp2, true); - Opc = DestType == MVT::f64 ? Alpha::CVTQT : Alpha::CVTQS; - BuildMI(BB, Opc, 1, Result).addReg(Tmp2); - return Result; - } + case AlphaISD::CVTQT_: + BuildMI(BB, Alpha::CVTQT, 1, Result).addReg(SelectExpr(N.getOperand(0))); + return Result; + + case AlphaISD::CVTQS_: + BuildMI(BB, Alpha::CVTQS, 1, Result).addReg(SelectExpr(N.getOperand(0))); + return Result; + + case AlphaISD::ITOFT_: + BuildMI(BB, Alpha::ITOFT, 1, Result).addReg(SelectExpr(N.getOperand(0))); + return Result; case ISD::AssertSext: case ISD::AssertZext: |

