mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2026-04-25 05:22:04 +00:00
eliminate an old SelectionDAG::getTruncStore method, propagating
MachinePointerInfo around more. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114452 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -512,18 +512,17 @@ LowerSTORE(SDValue Op, SelectionDAG &DAG) const
|
||||
DebugLoc dl = Op.getDebugLoc();
|
||||
|
||||
if (ST->getAlignment() == 2) {
|
||||
int SVOffset = ST->getSrcValueOffset();
|
||||
SDValue Low = Value;
|
||||
SDValue High = DAG.getNode(ISD::SRL, dl, MVT::i32, Value,
|
||||
DAG.getConstant(16, MVT::i32));
|
||||
SDValue StoreLow = DAG.getTruncStore(Chain, dl, Low, BasePtr,
|
||||
ST->getSrcValue(), SVOffset, MVT::i16,
|
||||
ST->getPointerInfo(), MVT::i16,
|
||||
ST->isVolatile(), ST->isNonTemporal(),
|
||||
2);
|
||||
SDValue HighAddr = DAG.getNode(ISD::ADD, dl, MVT::i32, BasePtr,
|
||||
DAG.getConstant(2, MVT::i32));
|
||||
SDValue StoreHigh = DAG.getTruncStore(Chain, dl, High, HighAddr,
|
||||
ST->getSrcValue(), SVOffset + 2,
|
||||
ST->getPointerInfo().getWithOffset(2),
|
||||
MVT::i16, ST->isVolatile(),
|
||||
ST->isNonTemporal(), 2);
|
||||
return DAG.getNode(ISD::TokenFactor, dl, MVT::Other, StoreLow, StoreHigh);
|
||||
|
||||
Reference in New Issue
Block a user