Displaying 1 result from an estimated 1 matches for "cpu74isd".
Did you mean:
cpu4ist
2019 Jun 11
3
How to tell LLVM to treat Commutable library calls as such, for example multiplication?
...later on this requires an intermediate register to swap them.
SelectionDAG has 9 nodes:
t0: ch = EntryToken
t4: i16,ch = CopyFromReg t0, Register:i16 %1
t2: i16,ch = CopyFromReg t0, Register:i16 %0
t5: i16 = mul t4, t2
t7: ch,glue = CopyToReg t0, Register:i16 $r0, t5
t8: ch = CPU74ISD::RET_FLAG t7, Register:i16 $r0, t7:1
Given the commutative nature of multiplication, the arguments could be passed in the same order they are received (a,b) so that they would not need to be swapped before the __mulhi3 call
What am I missing?,
Thanks,
John Lluch.
-------------- next part ---...