mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-14 16:33:28 +00:00
Added missing comment about new custom lowering of DEC64
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144811 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
c3aa7c5c5a
commit
cd75e44173
@ -2217,6 +2217,18 @@ SDNode *X86DAGToDAGISel::Select(SDNode *Node) {
|
||||
break;
|
||||
}
|
||||
case ISD::STORE: {
|
||||
// The DEC64m tablegen pattern is currently not able to match the case where
|
||||
// the EFLAGS on the original DEC are used.
|
||||
// we'll need to improve tablegen to allow flags to be transferred from a
|
||||
// node in the pattern to the result node. probably with a new keyword
|
||||
// for example, we have this
|
||||
// def DEC64m : RI<0xFF, MRM1m, (outs), (ins i64mem:$dst), "dec{q}\t$dst",
|
||||
// [(store (add (loadi64 addr:$dst), -1), addr:$dst),
|
||||
// (implicit EFLAGS)]>;
|
||||
// but maybe need something like this
|
||||
// def DEC64m : RI<0xFF, MRM1m, (outs), (ins i64mem:$dst), "dec{q}\t$dst",
|
||||
// [(store (add (loadi64 addr:$dst), -1), addr:$dst),
|
||||
// (transferrable EFLAGS)]>;
|
||||
StoreSDNode *StoreNode = cast<StoreSDNode>(Node);
|
||||
SDValue Chain = StoreNode->getOperand(0);
|
||||
SDValue StoredVal = StoreNode->getOperand(1);
|
||||
|
Loading…
x
Reference in New Issue
Block a user