search for: instfoo

Displaying 5 results from an estimated 5 matches for "instfoo".

Did you mean: instalo
2012 May 24
2
[LLVMdev] [TableGen] How to specify multiple types to one register class.
...tern. Here is an example: // Definition of the register class def RegCRF : RegisterClass<"Foo", [i32], 32, (sequence "R%u", 0, 255)>; // Tablegen: error: In FADD: Type inference contradiction found // no floating point types found def FADD : InstFoo<(outs RegCRF:$d), (ins RegCRF:$a, RegCRF:$b), "FADD\t$d, $a, $b", [(set RegCRF:$d, (fadd RegCRF:$a, RegCRF:$b))]>; I also tried to type RegCRF as [i32, f32], but then the type inference error appears in my load/st...
2015 Dec 02
4
lower 64 bits constant
Hi, All, I want to lower 64 Bits constant such as 'long' and 'double'. So I define them like this: def CONSTI64 : InstFOO<(outs GRWideRegs:$dst), (ins i64imm:$src), "const-long $dst, $src", [(set (i64 GRWideRegs:$dst), imm:$src)]>{ let isMoveImm = 1; } def CONSTF64 : InstFOO<(outs GRWideRegs:$dst), (ins f6...
2015 Nov 25
2
need help for customized backend LowerFormalArguments
...;s source registers should belong to GRRegs or GRRegsAdditional. I define 'move' and 'add' instructions like this: def MoveRRTy : SDTypeProfile<1, 1, [SDTCisSameAs<0, 1>, SDTCisInt<0>]>; def moverr : SDNode<"FOOISD::MOVERR", MoveRRTy>; def MOVE : InstFOO<(outs GRRegsAdditional:$dst), (ins PRegs:$src), "move $dst, $src",[(set i32:$dst, (moverr i32:$src))]>; def ADDINT: InstFOO<(outs GRRegsAdditional:$dst), (ins GRRegsAdditional:$src1, GRRegsAdditional:$src2),...
2012 May 24
0
[LLVMdev] [TableGen] How to specify multiple types to one register class.
...; // Definition of the register class > def RegCRF : RegisterClass<"Foo", [i32], 32, (sequence "R%u", 0, 255)>; > > // Tablegen: error: In FADD: Type inference contradiction found > // no floating point types found > def FADD : InstFoo<(outs RegCRF:$d), > (ins RegCRF:$a, RegCRF:$b), > "FADD\t$d, $a, $b", > [(set RegCRF:$d, (fadd RegCRF:$a, RegCRF:$b))]>; > > I also tried to type RegCRF as [i32, f32], but then the type inference er...
2016 Feb 01
2
TableGen customized node with mayStore attribute is deleted if there is no use
...k in theory or it's because my implementation is wrong. def MoveTy : SDTypeProfile<1, 1, []>; def MoveFlag : SDNode<"FOOISD::MOVE_FLAG", MoveTy, [SDNPHasChain, SDNPSideEffect, SDNPMayStore, SDNPMayLoad]>; let hasSideEffects = 1, mayStore = 1, mayLoad = 1 in { def MOVE : InstFOO<(outs ARegs:$dst), (ins BRegs:$src), "move $dst, $src", [(set i32:$dst, (MoveFlag i32:$src))]>; For example, I add this node into SDAG when I want to move the formal argument from the specific register class to other register class. I implem...