search for: r32c

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

Did you mean: r32
2007 Jan 09
3
[LLVMdev] Pattern matching questions
...info w/o tblgen bitching up a storm about the "$" or the extra "bi" operands? - Immediates in a pattern: To move one register to another involves using the 3-operand OR instruction, but how do I encode an immediate w/o a type inference contradiction? def : Pat<(set R32C:$rDest, R32C:$rSrc), (ORIr32 R32C:$rSrc, 0)>; Thanks for the clue!
2007 Jan 09
0
[LLVMdev] Pattern matching questions
...!strconcat("bi ", !strconcat("$", "lr")). > > - Immediates in a pattern: To move one register to another involves > using the 3-operand OR instruction, but how do I encode an immediate > w/o a type inference contradiction? > > def : Pat<(set R32C:$rDest, R32C:$rSrc), > (ORIr32 R32C:$rSrc, 0)>; I am not sure what you mean. By 3-operand, you mean 2 source operand and 1 destination. I don't think the error you are seeing have anything to do with the immediate. For a def : Pat pattern, you don't need to specify...
2007 Feb 10
2
[LLVMdev] variant generation question
I've got an instruction that has the following pattern (R32C is the 32-bit register class): (set R32C:$rT, (or (and R32C:$rA, R32C:$rC), (and R32C:$rB, (not R32C:$rC)))) tblgen generates the following variants (I've dropped the R32C for brevity): (or (and $rA, $rC), (and $rB, (not $rC))) # original (or (and $rA, $rC), (and (no...
2007 Jan 09
2
[LLVMdev] Pattern matching questions
...t("$", "lr")). Yep, $$ should work. >> - Immediates in a pattern: To move one register to another involves >> using the 3-operand OR instruction, but how do I encode an immediate >> w/o a type inference contradiction? >> >> def : Pat<(set R32C:$rDest, R32C:$rSrc), >> (ORIr32 R32C:$rSrc, 0)>; You current cannot specify move patterns in the .td file. You specify them with XXXRegisterInfo::copyRegToReg and XXXInstrInfo::isMoveInstr. See the PPC or Sparc backend for some simple examples. -Chris -- http://nondot.or...
2016 Jun 08
2
Instruction Itineraries: question about operand latencies
I overrode getInstrLatency and did some printing to see what is available there. It looks like the registers are still virtual at that point when getInstrLatency is called - is that correct? (we needed to make some decisions based on actual registers that have been assigned since some registers are reserved as address space pointers and we could vary the latency based on which address space