forked from OSchip/llvm-project
Fix an undefined behavior introduces in r247234
llvm-svn: 247296
This commit is contained in:
parent
9361d35525
commit
e3b1f2b765
|
@ -646,7 +646,7 @@ bool AArch64DAGToDAGISel::SelectAddrModeIndexed7S(SDValue N, unsigned Size,
|
||||||
if (ConstantSDNode *RHS = dyn_cast<ConstantSDNode>(N.getOperand(1))) {
|
if (ConstantSDNode *RHS = dyn_cast<ConstantSDNode>(N.getOperand(1))) {
|
||||||
int64_t RHSC = RHS->getSExtValue();
|
int64_t RHSC = RHS->getSExtValue();
|
||||||
unsigned Scale = Log2_32(Size);
|
unsigned Scale = Log2_32(Size);
|
||||||
if ((RHSC & (Size - 1)) == 0 && RHSC >= (-0x40 << Scale) &&
|
if ((RHSC & (Size - 1)) == 0 && RHSC >= -(0x40 << Scale) &&
|
||||||
RHSC < (0x40 << Scale)) {
|
RHSC < (0x40 << Scale)) {
|
||||||
Base = N.getOperand(0);
|
Base = N.getOperand(0);
|
||||||
if (Base.getOpcode() == ISD::FrameIndex) {
|
if (Base.getOpcode() == ISD::FrameIndex) {
|
||||||
|
|
Loading…
Reference in New Issue