mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-28 21:34:23 +00:00
Make sure SEXTLOAD of the specific type is supported on the target.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35289 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
aa04035229
commit
e177e307fc
@ -2272,9 +2272,13 @@ SDOperand DAGCombiner::ReduceLoadWidth(SDNode *N) {
|
||||
MVT::ValueType VT = N->getValueType(0);
|
||||
MVT::ValueType EVT = N->getValueType(0);
|
||||
|
||||
// Special case: SIGN_EXTEND_INREG is basically truncating to EVT then
|
||||
// extended to VT.
|
||||
if (Opc == ISD::SIGN_EXTEND_INREG) {
|
||||
ExtType = ISD::SEXTLOAD;
|
||||
EVT = cast<VTSDNode>(N->getOperand(1))->getVT();
|
||||
if (AfterLegalize && !TLI.isLoadXLegal(ISD::SEXTLOAD, EVT))
|
||||
return SDOperand();
|
||||
}
|
||||
|
||||
unsigned EVTBits = MVT::getSizeInBits(EVT);
|
||||
|
Loading…
x
Reference in New Issue
Block a user