[LLVMdev] floating point immediate problem
Heikki Kultala
hkultala at cs.tut.fi
Mon Mar 19 07:41:08 PDT 2012
I tried to generate pattern for instruction which transports floating
point immediate to a floating point register.
def MOVF32fk : InstTCE<(outs F32Regs:$dst), (ins f32imm:$val),
"$val -> $dst;",
[(set F32Regs:$dst, (f32 imm:$val))]>;
This causes an type contradiction:
/home/hkultala26/src/devel/tce/src/applibs/LLVMBackend/plugin//TCEInstrInfo.td:109:1:
error: In MOVF32fk: Type inference contradiction found, 'f32' needs to
be integer
def MOVF32fk : InstTCE<(outs F32Regs:$dst), (ins f32imm:$val),
why? Why does llvm assume floating point immediate needs to be integer?
More information about the llvm-dev
mailing list