diff options
author | Evan Cheng <evan.cheng@apple.com> | 2009-09-09 06:05:16 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2009-09-09 06:05:16 +0000 |
commit | 28d63b169938fa95cf481b64ef6e4bc1849dabef (patch) | |
tree | 9767908e74d84007815ab04c4daa179182a05cdd | |
parent | 4a38930a4595d94b1f379d6955c531c48e5c2aa0 (diff) |
Cast MO.getImm() to unsigned before comparing with an unsigned limit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81318 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Target/ARM/Thumb2SizeReduction.cpp | 2 | ||||
-rw-r--r-- | test/CodeGen/Thumb2/thumb2-cmp.ll | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/lib/Target/ARM/Thumb2SizeReduction.cpp b/lib/Target/ARM/Thumb2SizeReduction.cpp index 0784fbed88..e1fb3585f7 100644 --- a/lib/Target/ARM/Thumb2SizeReduction.cpp +++ b/lib/Target/ARM/Thumb2SizeReduction.cpp @@ -504,7 +504,7 @@ Thumb2SizeReduce::ReduceToNarrow(MachineBasicBlock &MBB, MachineInstr *MI, return false; } else if (MO.isImm() && !TID.OpInfo[i].isPredicate()) { - if (MO.getImm() > Limit || (MO.getImm() & (Scale-1)) != 0) + if (((unsigned)MO.getImm()) > Limit || (MO.getImm() & (Scale-1)) != 0) return false; } } diff --git a/test/CodeGen/Thumb2/thumb2-cmp.ll b/test/CodeGen/Thumb2/thumb2-cmp.ll index 86fc542f25..d4773bb580 100644 --- a/test/CodeGen/Thumb2/thumb2-cmp.ll +++ b/test/CodeGen/Thumb2/thumb2-cmp.ll @@ -19,7 +19,7 @@ define i1 @f2(i32 %a) { ; 0xcc00cc00 = 3422604288 define i1 @f3(i32 %a) { ; CHECK: f3: -; CHECK: cmp r0, #-872363008 +; CHECK: cmp.w r0, #-872363008 %tmp = icmp ne i32 %a, 3422604288 ret i1 %tmp } @@ -27,7 +27,7 @@ define i1 @f3(i32 %a) { ; 0xdddddddd = 3722304989 define i1 @f4(i32 %a) { ; CHECK: f4: -; CHECK: cmp r0, #-572662307 +; CHECK: cmp.w r0, #-572662307 %tmp = icmp ne i32 %a, 3722304989 ret i1 %tmp } |