mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-11-05 13:09:10 +00:00
Oops. Bad typo. Without the check of N1.hasOneUse() bad things can happen.
Suppose the TokenFactor can reach the Op: [Load chain] ^ | [Load] ^ ^ | | / \- / | / [Op] / ^ ^ | .. | | / | [TokenFactor] | ^ | | | \ / \ / [Store] If we move the Load below the TokenFactor, we would have created a cycle in the DAG. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30040 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
aca36b9329
commit
1453de5aa9
@ -308,8 +308,8 @@ void X86DAGToDAGISel::InstructionSelectPreprocess(SelectionDAG &DAG) {
|
||||
|
||||
SDOperand N1 = I->getOperand(1);
|
||||
SDOperand N2 = I->getOperand(2);
|
||||
if (MVT::isFloatingPoint(N1.getValueType()) &&
|
||||
MVT::isVector(N1.getValueType()) &&
|
||||
if (MVT::isFloatingPoint(N1.getValueType()) ||
|
||||
MVT::isVector(N1.getValueType()) ||
|
||||
!N1.hasOneUse())
|
||||
continue;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user