mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-10-26 18:20:39 +00:00
Revert r140463; The patch assumes that <4 x i1> is saved to memory as 4 x i8,
while the decision is to bit-pack small values. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140601 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -1180,10 +1180,6 @@ SDValue SelectionDAGLegalize::LegalizeOp(SDValue Op) {
|
|||||||
// bytes. For example, promote EXTLOAD:i20 -> EXTLOAD:i24.
|
// bytes. For example, promote EXTLOAD:i20 -> EXTLOAD:i24.
|
||||||
unsigned NewWidth = SrcVT.getStoreSizeInBits();
|
unsigned NewWidth = SrcVT.getStoreSizeInBits();
|
||||||
EVT NVT = EVT::getIntegerVT(*DAG.getContext(), NewWidth);
|
EVT NVT = EVT::getIntegerVT(*DAG.getContext(), NewWidth);
|
||||||
if (SrcVT.isVector()) {
|
|
||||||
NVT = EVT::getVectorVT(*DAG.getContext(), NVT,
|
|
||||||
SrcVT.getVectorNumElements());
|
|
||||||
}
|
|
||||||
SDValue Ch;
|
SDValue Ch;
|
||||||
|
|
||||||
// The extra bits are guaranteed to be zero, since we stored them that
|
// The extra bits are guaranteed to be zero, since we stored them that
|
||||||
@@ -1525,12 +1521,7 @@ SDValue SelectionDAGLegalize::LegalizeOp(SDValue Op) {
|
|||||||
// TRUNCSTORE:i1 X -> TRUNCSTORE:i8 (and X, 1)
|
// TRUNCSTORE:i1 X -> TRUNCSTORE:i8 (and X, 1)
|
||||||
EVT NVT = EVT::getIntegerVT(*DAG.getContext(),
|
EVT NVT = EVT::getIntegerVT(*DAG.getContext(),
|
||||||
StVT.getStoreSizeInBits());
|
StVT.getStoreSizeInBits());
|
||||||
if (StVT.isVector()) {
|
Tmp3 = DAG.getZeroExtendInReg(Tmp3, dl, StVT);
|
||||||
NVT = EVT::getVectorVT(*DAG.getContext(), NVT,
|
|
||||||
StVT.getVectorNumElements());
|
|
||||||
}
|
|
||||||
|
|
||||||
Tmp3 = DAG.getZeroExtendInReg(Tmp3, dl, StVT.getScalarType());
|
|
||||||
Result = DAG.getTruncStore(Tmp1, dl, Tmp3, Tmp2, ST->getPointerInfo(),
|
Result = DAG.getTruncStore(Tmp1, dl, Tmp3, Tmp2, ST->getPointerInfo(),
|
||||||
NVT, isVolatile, isNonTemporal, Alignment);
|
NVT, isVolatile, isNonTemporal, Alignment);
|
||||||
} else if (StWidth & (StWidth - 1)) {
|
} else if (StWidth & (StWidth - 1)) {
|
||||||
|
|||||||
Reference in New Issue
Block a user