mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-21 06:30:16 +00:00
Don't check TLI.getOperationAction. The FastISel way is to
just try to do the action and let the tablegen-generated code determine if there is target-support for an operation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55427 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
ad368ac2b5
commit
151ed61a2f
@ -458,10 +458,8 @@ unsigned FastISel::FastEmit_rri(MVT::SimpleValueType, MVT::SimpleValueType,
|
|||||||
unsigned FastISel::FastEmit_ri_(MVT::SimpleValueType VT, ISD::NodeType Opcode,
|
unsigned FastISel::FastEmit_ri_(MVT::SimpleValueType VT, ISD::NodeType Opcode,
|
||||||
unsigned Op0, uint64_t Imm,
|
unsigned Op0, uint64_t Imm,
|
||||||
MVT::SimpleValueType ImmType) {
|
MVT::SimpleValueType ImmType) {
|
||||||
unsigned ResultReg = 0;
|
|
||||||
// First check if immediate type is legal. If not, we can't use the ri form.
|
// First check if immediate type is legal. If not, we can't use the ri form.
|
||||||
if (TLI.getOperationAction(ISD::Constant, ImmType) == TargetLowering::Legal)
|
unsigned ResultReg = FastEmit_ri(VT, VT, Opcode, Op0, Imm);
|
||||||
ResultReg = FastEmit_ri(VT, VT, Opcode, Op0, Imm);
|
|
||||||
if (ResultReg != 0)
|
if (ResultReg != 0)
|
||||||
return ResultReg;
|
return ResultReg;
|
||||||
unsigned MaterialReg = FastEmit_i(ImmType, ImmType, ISD::Constant, Imm);
|
unsigned MaterialReg = FastEmit_i(ImmType, ImmType, ISD::Constant, Imm);
|
||||||
@ -477,10 +475,8 @@ unsigned FastISel::FastEmit_ri_(MVT::SimpleValueType VT, ISD::NodeType Opcode,
|
|||||||
unsigned FastISel::FastEmit_rf_(MVT::SimpleValueType VT, ISD::NodeType Opcode,
|
unsigned FastISel::FastEmit_rf_(MVT::SimpleValueType VT, ISD::NodeType Opcode,
|
||||||
unsigned Op0, ConstantFP *FPImm,
|
unsigned Op0, ConstantFP *FPImm,
|
||||||
MVT::SimpleValueType ImmType) {
|
MVT::SimpleValueType ImmType) {
|
||||||
unsigned ResultReg = 0;
|
|
||||||
// First check if immediate type is legal. If not, we can't use the rf form.
|
// First check if immediate type is legal. If not, we can't use the rf form.
|
||||||
if (TLI.getOperationAction(ISD::Constant, ImmType) == TargetLowering::Legal)
|
unsigned ResultReg = FastEmit_rf(VT, VT, Opcode, Op0, FPImm);
|
||||||
ResultReg = FastEmit_rf(VT, VT, Opcode, Op0, FPImm);
|
|
||||||
if (ResultReg != 0)
|
if (ResultReg != 0)
|
||||||
return ResultReg;
|
return ResultReg;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user