mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-03-04 05:31:51 +00:00
Update comments and remove unnecessary isVolatile() check.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154336 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
31ba59afad
commit
96b66d65c2
@ -7338,15 +7338,15 @@ static SDValue PerformVMOVDRRCombine(SDNode *N, SelectionDAG &DAG) {
|
|||||||
/// ISD::STORE.
|
/// ISD::STORE.
|
||||||
static SDValue PerformSTORECombine(SDNode *N,
|
static SDValue PerformSTORECombine(SDNode *N,
|
||||||
TargetLowering::DAGCombinerInfo &DCI) {
|
TargetLowering::DAGCombinerInfo &DCI) {
|
||||||
// Bitcast an i64 store extracted from a vector to f64.
|
|
||||||
// Otherwise, the i64 value will be legalized to a pair of i32 values.
|
|
||||||
StoreSDNode *St = cast<StoreSDNode>(N);
|
StoreSDNode *St = cast<StoreSDNode>(N);
|
||||||
SDValue StVal = St->getValue();
|
SDValue StVal = St->getValue();
|
||||||
if (!ISD::isNormalStore(St) || St->isVolatile())
|
if (!ISD::isNormalStore(St) || St->isVolatile())
|
||||||
return SDValue();
|
return SDValue();
|
||||||
|
|
||||||
|
// Split a store of a VMOVDRR into two integer stores to avoid mixing NEON and
|
||||||
|
// ARM stores of arguments in the same cache line.
|
||||||
if (StVal.getNode()->getOpcode() == ARMISD::VMOVDRR &&
|
if (StVal.getNode()->getOpcode() == ARMISD::VMOVDRR &&
|
||||||
StVal.getNode()->hasOneUse() && !St->isVolatile()) {
|
StVal.getNode()->hasOneUse()) {
|
||||||
SelectionDAG &DAG = DCI.DAG;
|
SelectionDAG &DAG = DCI.DAG;
|
||||||
DebugLoc DL = St->getDebugLoc();
|
DebugLoc DL = St->getDebugLoc();
|
||||||
SDValue BasePtr = St->getBasePtr();
|
SDValue BasePtr = St->getBasePtr();
|
||||||
@ -7367,6 +7367,8 @@ static SDValue PerformSTORECombine(SDNode *N,
|
|||||||
StVal.getNode()->getOpcode() != ISD::EXTRACT_VECTOR_ELT)
|
StVal.getNode()->getOpcode() != ISD::EXTRACT_VECTOR_ELT)
|
||||||
return SDValue();
|
return SDValue();
|
||||||
|
|
||||||
|
// Bitcast an i64 store extracted from a vector to f64.
|
||||||
|
// Otherwise, the i64 value will be legalized to a pair of i32 values.
|
||||||
SelectionDAG &DAG = DCI.DAG;
|
SelectionDAG &DAG = DCI.DAG;
|
||||||
DebugLoc dl = StVal.getDebugLoc();
|
DebugLoc dl = StVal.getDebugLoc();
|
||||||
SDValue IntVec = StVal.getOperand(0);
|
SDValue IntVec = StVal.getOperand(0);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user