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 | 7f0db91f86cfbd7c7268f945385d7a3056150bc7 (patch) | |
tree | fc9093aa36519877c692d98601ff6df31c384aaf /lib/Target/Alpha/AlphaISelPattern.cpp | |
parent | 5b5b8c27556e5dc8792e37436e4ddd7ab157192d (diff) |
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 :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24533 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/Alpha/AlphaISelPattern.cpp')
-rw-r--r-- | lib/Target/Alpha/AlphaISelPattern.cpp | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/lib/Target/Alpha/AlphaISelPattern.cpp b/lib/Target/Alpha/AlphaISelPattern.cpp index 6c2e3a6f53..05ed61f8cf 100644 --- a/lib/Target/Alpha/AlphaISelPattern.cpp +++ b/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: |