Displaying 3 results from an estimated 3 matches for "newvaluetobestored".
2015 Apr 02
2
[LLVMdev] How to enable use of 64bit load/store for 32bit architecture
...DAG.getNode(ISD::EXTRACT_ELEMENT, dl, MVT::i32, ValueToBeStored, DAG.getConstant(0, MVT::i32)),
DAG.getTargetConstant(SP ::sub0, MVT::i32),
DAG.getNode(ISD::EXTRACT_ELEMENT, dl, MVT::i32, ValueToBeStored, DAG.getConstant(1, MVT::i32)),
DAG.getTargetConstant(SP ::sub1, MVT::i32)
};
SDValue NewValueToBeStored = DAG.getMachineNode(TargetOpcode::REG_SEQUENCE, dl, MVT::Untyped, SeqOps);
return DAG.getStore(…, NewValueToBeStored, …)
The legalizer won’t touch Untyped operands, so once you’ve changed the store operand to this, you won’t have the legalize complain later. But this is very target specific and...
2015 Apr 03
2
[LLVMdev] How to enable use of 64bit load/store for 32bit architecture
...ValueToBeStored, DAG.getConstant(0, MVT::i32)),
>> DAG.getTargetConstant(SP ::sub0, MVT::i32),
>> DAG.getNode(ISD::EXTRACT_ELEMENT, dl, MVT::i32, ValueToBeStored, DAG.getConstant(1, MVT::i32)),
>> DAG.getTargetConstant(SP ::sub1, MVT::i32)
>> };
>>
>> SDValue NewValueToBeStored = DAG.getMachineNode(TargetOpcode::REG_SEQUENCE, dl, MVT::Untyped, SeqOps);
>>
>> return DAG.getStore(…, NewValueToBeStored, …)
>>
>> The legalizer won’t touch Untyped operands, so once you’ve changed the store operand to this, you won’t have the legalize complain later....
2015 Apr 02
2
[LLVMdev] How to enable use of 64bit load/store for 32bit architecture
In http://reviews.llvm.org/D8713, I added the 64bit integer store ("std")
and load ("ldd") instructions for 32bit sparc. But now I need codegen to
know how to emit them, and am not sure the best way to go about teaching
the backend that 64bit integers can be used natively, but only for loads
and stores.
(I originally wrote an earlier draft of question in the review but it