diff options
| author | Eli Friedman <efriedma@codeaurora.org> | 2018-10-31 21:45:48 +0000 |
|---|---|---|
| committer | Eli Friedman <efriedma@codeaurora.org> | 2018-10-31 21:45:48 +0000 |
| commit | 063fd98bcc06e49009df8cbd18484a81a612aeb6 (patch) | |
| tree | c47b4a57cf874087af9d78caa3af67ccb3e9202e /llvm/test/CodeGen/Thumb | |
| parent | e5f13519d4a6e196d5b714b6233b9fc875cbee9b (diff) | |
| download | bcm5719-llvm-063fd98bcc06e49009df8cbd18484a81a612aeb6.tar.gz bcm5719-llvm-063fd98bcc06e49009df8cbd18484a81a612aeb6.zip | |
[ARM] Add missing pseudo-instruction for Thumb1 RSBS.
Shows up rarely for 64-bit arithmetic, more frequently for the compare
patterns added in r325323.
Differential Revision: https://reviews.llvm.org/D53848
llvm-svn: 345782
Diffstat (limited to 'llvm/test/CodeGen/Thumb')
| -rw-r--r-- | llvm/test/CodeGen/Thumb/branchless-cmp.ll | 9 | ||||
| -rw-r--r-- | llvm/test/CodeGen/Thumb/long-setcc.ll | 3 |
2 files changed, 4 insertions, 8 deletions
diff --git a/llvm/test/CodeGen/Thumb/branchless-cmp.ll b/llvm/test/CodeGen/Thumb/branchless-cmp.ll index 8435529d681..ed34d630733 100644 --- a/llvm/test/CodeGen/Thumb/branchless-cmp.ll +++ b/llvm/test/CodeGen/Thumb/branchless-cmp.ll @@ -20,8 +20,7 @@ entry: ; CHECK-LABEL: test1b: ; CHECK-NOT: b{{(ne)|(eq)}} ; CHECK: subs r1, r0, r1 -; CHECK-NEXT: movs r0, #0 -; CHECK-NEXT: subs r0, r0, r1 +; CHECK-NEXT: rsbs r0, r1, #0 ; CHECK-NEXT: adcs r0, r1 } @@ -33,8 +32,7 @@ entry: ; CHECK-LABEL: test2a: ; CHECK-NOT: b{{(ne)|(eq)}} ; CHECK: subs r1, r0, r1 -; CHECK-NEXT: movs r0, #0 -; CHECK-NEXT: subs r0, r0, r1 +; CHECK-NEXT: rsbs r0, r1, #0 ; CHECK-NEXT: adcs r0, r1 } @@ -71,8 +69,7 @@ entry: ; CHECK-LABEL: test3b: ; CHECK-NOT: b{{(ne)|(eq)}} ; CHECK: subs r0, r0, r1 -; CHECK-NEXT: movs r1, #0 -; CHECK-NEXT: subs r1, r1, r0 +; CHECK-NEXT: rsbs r1, r0, #0 ; CHECK-NEXT: adcs r1, r0 ; CHECK-NEXT: lsls r0, r1, #2 } diff --git a/llvm/test/CodeGen/Thumb/long-setcc.ll b/llvm/test/CodeGen/Thumb/long-setcc.ll index f077d0e4cf4..b8b9cff7b36 100644 --- a/llvm/test/CodeGen/Thumb/long-setcc.ll +++ b/llvm/test/CodeGen/Thumb/long-setcc.ll @@ -9,8 +9,7 @@ define i1 @t1(i64 %x) { define i1 @t2(i64 %x) { ; CHECK-LABEL: t2: -; CHECK: movs r0, #0 -; CHECK: subs r0, r0, r1 +; CHECK: rsbs r0, r1, #0 ; CHECK: adcs r0, r1 %tmp = icmp ult i64 %x, 4294967296 ret i1 %tmp |

