mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-14 00:32:55 +00:00
Autogen a few new ppc-specific nodes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23985 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
8ecedbe2c3
commit
e6115b370a
@ -903,18 +903,6 @@ SDOperand PPCDAGToDAGISel::Select(SDOperand Op) {
|
||||
Select(N->getOperand(1)), Select(N->getOperand(2)));
|
||||
return SDOperand(N, 0);
|
||||
}
|
||||
case PPCISD::FCFID:
|
||||
CurDAG->SelectNodeTo(N, PPC::FCFID, N->getValueType(0),
|
||||
Select(N->getOperand(0)));
|
||||
return SDOperand(N, 0);
|
||||
case PPCISD::FCTIDZ:
|
||||
CurDAG->SelectNodeTo(N, PPC::FCTIDZ, N->getValueType(0),
|
||||
Select(N->getOperand(0)));
|
||||
return SDOperand(N, 0);
|
||||
case PPCISD::FCTIWZ:
|
||||
CurDAG->SelectNodeTo(N, PPC::FCTIWZ, N->getValueType(0),
|
||||
Select(N->getOperand(0)));
|
||||
return SDOperand(N, 0);
|
||||
case ISD::FADD: {
|
||||
MVT::ValueType Ty = N->getValueType(0);
|
||||
if (!NoExcessFPPrecision) { // Match FMA ops
|
||||
|
@ -14,6 +14,14 @@
|
||||
|
||||
include "PPCInstrFormats.td"
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// PowerPC specific DAG Nodes.
|
||||
//
|
||||
|
||||
def PPCfcfid : SDNode<"PPCISD::FCFID" , SDTFPUnaryOp, []>;
|
||||
def PPCfctidz : SDNode<"PPCISD::FCTIDZ", SDTFPUnaryOp, []>;
|
||||
def PPCfctiwz : SDNode<"PPCISD::FCTIWZ", SDTFPUnaryOp, []>;
|
||||
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
// PowerPC specific transformation functions and pattern fragments.
|
||||
@ -449,13 +457,13 @@ def LFDX : XForm_25<31, 599, (ops F8RC:$dst, GPRC:$base, GPRC:$index),
|
||||
}
|
||||
def FCFID : XForm_26<63, 846, (ops F8RC:$frD, F8RC:$frB),
|
||||
"fcfid $frD, $frB", FPGeneral,
|
||||
[]>, isPPC64;
|
||||
[(set F8RC:$frD, (PPCfcfid F8RC:$frB))]>, isPPC64;
|
||||
def FCTIDZ : XForm_26<63, 815, (ops F8RC:$frD, F8RC:$frB),
|
||||
"fctidz $frD, $frB", FPGeneral,
|
||||
[]>, isPPC64;
|
||||
[(set F8RC:$frD, (PPCfctidz F8RC:$frB))]>, isPPC64;
|
||||
def FCTIWZ : XForm_26<63, 15, (ops F8RC:$frD, F8RC:$frB),
|
||||
"fctiwz $frD, $frB", FPGeneral,
|
||||
[]>;
|
||||
[(set F8RC:$frD, (PPCfctiwz F8RC:$frB))]>;
|
||||
def FRSP : XForm_26<63, 12, (ops F4RC:$frD, F8RC:$frB),
|
||||
"frsp $frD, $frB", FPGeneral,
|
||||
[(set F4RC:$frD, (fround F8RC:$frB))]>;
|
||||
|
Loading…
x
Reference in New Issue
Block a user