1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 19:23:23 +01:00

SIGN_EXTEND_INREG requires one extra operand, a ValueType node.

llvm-svn: 35350
This commit is contained in:
Evan Cheng 2007-03-26 07:12:51 +00:00
parent e2ada5822c
commit 5b1c21d27b

View File

@ -2327,8 +2327,12 @@ SDOperand DAGCombiner::ReduceLoadWidth(SDNode *N) {
CombineTo(N->getOperand(0).Val, Load); CombineTo(N->getOperand(0).Val, Load);
} else } else
CombineTo(N0.Val, Load, Load.getValue(1)); CombineTo(N0.Val, Load, Load.getValue(1));
if (ShAmt) if (ShAmt) {
return DAG.getNode(N->getOpcode(), VT, Load); if (Opc == ISD::SIGN_EXTEND_INREG)
return DAG.getNode(Opc, VT, Load, N->getOperand(1));
else
return DAG.getNode(Opc, VT, Load);
}
return SDOperand(N, 0); // Return N so it doesn't get rechecked! return SDOperand(N, 0); // Return N so it doesn't get rechecked!
} }