diff options
author | Derek Schuff <dschuff@google.com> | 2016-10-20 00:10:34 +0000 |
---|---|---|
committer | Derek Schuff <dschuff@google.com> | 2016-10-20 00:10:34 +0000 |
commit | 7edf93bc5b2bbed4ff9b34ac5126eb210fbbff3c (patch) | |
tree | c0c677d6163a55bbfd9610ed2e305bc163b25742 | |
parent | 8da7aa0894e96694523c19a24bca7a424963c17b (diff) | |
download | bcm5719-llvm-7edf93bc5b2bbed4ff9b34ac5126eb210fbbff3c.tar.gz bcm5719-llvm-7edf93bc5b2bbed4ff9b34ac5126eb210fbbff3c.zip |
[WebAssembly] Update extending load test for new i1 behavior
r284611 changed the behavior of the DAG legalizer for sign-extending i1
values. Update the wasm extending load test to match.
llvm-svn: 284677
-rw-r--r-- | llvm/test/CodeGen/WebAssembly/load-store-i1.ll | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/llvm/test/CodeGen/WebAssembly/load-store-i1.ll b/llvm/test/CodeGen/WebAssembly/load-store-i1.ll index 4921a739ea0..ea0ec717c7a 100644 --- a/llvm/test/CodeGen/WebAssembly/load-store-i1.ll +++ b/llvm/test/CodeGen/WebAssembly/load-store-i1.ll @@ -15,12 +15,12 @@ define i32 @load_u_i1_i32(i1* %p) { } ; CHECK-LABEL: load_s_i1_i32: -; CHECK: i32.load8_u $push[[NUM0:[0-9]+]]=, 0($0){{$}} -; CHECK-NEXT: i32.const $push[[NUM1:[0-9]+]]=, 31{{$}} -; CHECK-NEXT: shl $push[[NUM2:[0-9]+]]=, $pop[[NUM0]], $pop[[NUM1]]{{$}} -; CHECK-NEXT: i32.const $push[[NUM4:[0-9]+]]=, 31{{$}} -; CHECK-NEXT: shr_s $push[[NUM3:[0-9]+]]=, $pop[[NUM2]], $pop[[NUM4]]{{$}} -; CHECK-NEXT: return $pop[[NUM3]]{{$}} +; CHECK: i32.const $push[[NUM3:[0-9]+]]=, 0{{$}} +; CHECK-NEXT: i32.load8_u $push[[NUM0:[0-9]+]]=, 0($0){{$}} +; CHECK-NEXT: i32.const $push[[NUM1:[0-9]+]]=, 1{{$}} +; CHECK-NEXT: i32.and $push[[NUM2:[0-9]+]]=, $pop[[NUM0]], $pop[[NUM1]]{{$}} +; CHECK-NEXT: i32.sub $push[[NUM4:[0-9]+]]=, $pop[[NUM3]], $pop[[NUM2]]{{$}} +; CHECK-NEXT: return $pop[[NUM4]]{{$}} define i32 @load_s_i1_i32(i1* %p) { %v = load i1, i1* %p %e = sext i1 %v to i32 @@ -37,12 +37,12 @@ define i64 @load_u_i1_i64(i1* %p) { } ; CHECK-LABEL: load_s_i1_i64: -; CHECK: i64.load8_u $push[[NUM0:[0-9]+]]=, 0($0){{$}} -; CHECK-NEXT: i64.const $push[[NUM1:[0-9]+]]=, 63{{$}} -; CHECK-NEXT: shl $push[[NUM2:[0-9]+]]=, $pop[[NUM0]], $pop[[NUM1]]{{$}} -; CHECK-NEXT: i64.const $push[[NUM4:[0-9]+]]=, 63{{$}} -; CHECK-NEXT: shr_s $push[[NUM3:[0-9]+]]=, $pop[[NUM2]], $pop[[NUM4]]{{$}} -; CHECK-NEXT: return $pop[[NUM3]]{{$}} +; CHECK: i64.const $push[[NUM3:[0-9]+]]=, 0{{$}} +; CHECK-NEXT: i64.load8_u $push[[NUM0:[0-9]+]]=, 0($0){{$}} +; CHECK-NEXT: i64.const $push[[NUM1:[0-9]+]]=, 1{{$}} +; CHECK-NEXT: i64.and $push[[NUM2:[0-9]+]]=, $pop[[NUM0]], $pop[[NUM1]]{{$}} +; CHECK-NEXT: i64.sub $push[[NUM4:[0-9]+]]=, $pop[[NUM3]], $pop[[NUM2]]{{$}} +; CHECK-NEXT: return $pop[[NUM4]]{{$}} define i64 @load_s_i1_i64(i1* %p) { %v = load i1, i1* %p %e = sext i1 %v to i64 |