summaryrefslogtreecommitdiff
path: root/lib/Target/ARM/ARMFastISel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Target/ARM/ARMFastISel.cpp')
-rw-r--r--lib/Target/ARM/ARMFastISel.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/Target/ARM/ARMFastISel.cpp b/lib/Target/ARM/ARMFastISel.cpp
index 4c47ff9cdf..6b2c1f32d2 100644
--- a/lib/Target/ARM/ARMFastISel.cpp
+++ b/lib/Target/ARM/ARMFastISel.cpp
@@ -852,7 +852,8 @@ void ARMFastISel::ARMSimplifyAddress(Address &Addr, EVT VT) {
needsLowering = ((Addr.Offset & 0xfff) != Addr.Offset);
else
// ARM i16 integer loads/stores handle +/-imm8 offsets.
- if (Addr.Offset > 255 || Addr.Offset < -255)
+ // FIXME: Negative offsets require special handling.
+ if (Addr.Offset > 255 || Addr.Offset < 0)
needsLowering = true;
break;
case MVT::i1: