search for: armfmmrd

Displaying 3 results from an estimated 3 matches for "armfmmrd".

2006 Oct 03
1
[LLVMdev] returning a double in two registers
...ow to write the custom > matching code, but it's not for the faint of heart. I will have a look at it. > Extending tblgen to support instructions with multiple results is on the > long term todo list, but we probably won't get to it in the near future. > > You defined your armfmmrd node as taking three inputs: two integer and one > double. Shouldn't it produce two outputs and take one input? If so, you > need to write custom c++ matching code. Alternatively, you can avoid this > by doing the two pieces separately, as you describe in 1). It should. I have cheat...
2006 Oct 02
0
[LLVMdev] returning a double in two registers
...e fmrrd as > defining its two integer arguments. Currently this is only used during > returns and the function is marked as defining R0 and R1, so this > shouldn't be a problem, > > How can I fix the declaration of fmrrd so that it can be used in other contexts? You defined your armfmmrd node as taking three inputs: two integer and one double. Shouldn't it produce two outputs and take one input? If so, you need to write custom c++ matching code. Alternatively, you can avoid this by doing the two pieces separately, as you describe in 1). -Chris -- http://nondot.org/sabr...
2006 Oct 02
2
[LLVMdev] returning a double in two registers
I have started to add support for FP in the ARM backend. According to the ABI, 32 bit floating point numbers should be returned in R0 and 64bit ones in R0/R1. I have solved the 32 bit case by inserting bit_converts in LowerRET. For the 64bit case I considered two options: 1) Creating two nodes. fp_lo and fp_hi. I could then select fmrdh and fmrdl with (set IntRegs:$dst (bitconvert (fp_hi