[WebAssembly] Suffix output operands with '='.
[oota-llvm.git] / test / CodeGen / WebAssembly / load-store-i1.ll
index cb89e2c1772e7f6d69b483f9e499739a7c9351e4..baaff019a5e6e2f6de776be45e153f1c15a2c02e 100644 (file)
@@ -6,9 +6,8 @@ target datalayout = "e-p:32:32-i64:64-n32:64-S128"
 target triple = "wasm32-unknown-unknown"
 
 ; CHECK-LABEL: load_u_i1_i32:
-; CHECK:      i32.load8_u push, (get_local 1){{$}}
-; CHECK-NEXT: set_local 2, pop{{$}}
-; CHECK-NEXT: return (get_local 2){{$}}
+; CHECK:      i32.load8_u $[[NUM0:[0-9]+]]=, $0{{$}}
+; CHECK-NEXT: return $[[NUM0]]{{$}}
 define i32 @load_u_i1_i32(i1* %p) {
   %v = load i1, i1* %p
   %e = zext i1 %v to i32
@@ -16,15 +15,11 @@ define i32 @load_u_i1_i32(i1* %p) {
 }
 
 ; CHECK-LABEL: load_s_i1_i32:
-; CHECK:      i32.load8_u push, (get_local 1){{$}}
-; CHECK-NEXT: set_local 2, pop{{$}}
-; CHECK-NEXT: i32.const push, 31{{$}}
-; CHECK-NEXT: set_local 3, pop{{$}}
-; CHECK-NEXT: shl push, (get_local 2), (get_local 3){{$}}
-; CHECK-NEXT: set_local 4, pop{{$}}
-; CHECK-NEXT: shr_s push, (get_local 4), (get_local 3){{$}}
-; CHECK-NEXT: set_local 5, pop{{$}}
-; CHECK-NEXT: return (get_local 5){{$}}
+; CHECK:      i32.load8_u $[[NUM0:[0-9]+]]=, $0{{$}}
+; CHECK-NEXT: i32.const $[[NUM1:[0-9]+]]=, 31{{$}}
+; CHECK-NEXT: shl $push[[NUM2:[0-9]+]]=, $[[NUM0]], $[[NUM1]]{{$}}
+; CHECK-NEXT: shr_s $push[[NUM3:[0-9]+]]=, $pop[[NUM2]], $[[NUM1]]{{$}}
+; CHECK-NEXT: return $pop[[NUM3]]{{$}}
 define i32 @load_s_i1_i32(i1* %p) {
   %v = load i1, i1* %p
   %e = sext i1 %v to i32
@@ -32,9 +27,8 @@ define i32 @load_s_i1_i32(i1* %p) {
 }
 
 ; CHECK-LABEL: load_u_i1_i64:
-; CHECK:      i64.load8_u push, (get_local 1){{$}}
-; CHECK-NEXT: set_local 2, pop{{$}}
-; CHECK-NEXT: return (get_local 2){{$}}
+; CHECK:      i64.load8_u $[[NUM0:[0-9]+]]=, $0{{$}}
+; CHECK-NEXT: return $[[NUM0]]{{$}}
 define i64 @load_u_i1_i64(i1* %p) {
   %v = load i1, i1* %p
   %e = zext i1 %v to i64
@@ -42,15 +36,11 @@ define i64 @load_u_i1_i64(i1* %p) {
 }
 
 ; CHECK-LABEL: load_s_i1_i64:
-; CHECK:      i64.load8_u push, (get_local 1){{$}}
-; CHECK-NEXT: set_local 2, pop{{$}}
-; CHECK-NEXT: i64.const push, 63{{$}}
-; CHECK-NEXT: set_local 3, pop{{$}}
-; CHECK-NEXT: shl push, (get_local 2), (get_local 3){{$}}
-; CHECK-NEXT: set_local 4, pop{{$}}
-; CHECK-NEXT: shr_s push, (get_local 4), (get_local 3){{$}}
-; CHECK-NEXT: set_local 5, pop{{$}}
-; CHECK-NEXT: return (get_local 5){{$}}
+; CHECK:      i64.load8_u $[[NUM0:[0-9]+]]=, $0{{$}}
+; CHECK-NEXT: i64.const $[[NUM1:[0-9]+]]=, 63{{$}}
+; CHECK-NEXT: shl $push[[NUM2:[0-9]+]]=, $[[NUM0]], $[[NUM1]]{{$}}
+; CHECK-NEXT: shr_s $push[[NUM3:[0-9]+]]=, $pop[[NUM2]], $[[NUM1]]{{$}}
+; CHECK-NEXT: return $pop[[NUM3]]{{$}}
 define i64 @load_s_i1_i64(i1* %p) {
   %v = load i1, i1* %p
   %e = sext i1 %v to i64
@@ -58,11 +48,9 @@ define i64 @load_s_i1_i64(i1* %p) {
 }
 
 ; CHECK-LABEL: store_i32_i1:
-; CHECK:      i32.const push, 1{{$}}
-; CHECK-NEXT: set_local 4, pop{{$}}
-; CHECK-NEXT: i32.and push, (get_local 3), (get_local 4){{$}}
-; CHECK-NEXT: set_local 5, pop{{$}}
-; CHECK-NEXT: i32.store8 (get_local 2), (get_local 5){{$}}
+; CHECK:      i32.const $push[[NUM0:[0-9]+]]=, 1{{$}}
+; CHECK-NEXT: i32.and $push[[NUM1:[0-9]+]]=, $1, $pop[[NUM0]]{{$}}
+; CHECK-NEXT: i32.store8 $discard=, $0, $pop[[NUM1]]{{$}}
 define void @store_i32_i1(i1* %p, i32 %v) {
   %t = trunc i32 %v to i1
   store i1 %t, i1* %p
@@ -70,11 +58,9 @@ define void @store_i32_i1(i1* %p, i32 %v) {
 }
 
 ; CHECK-LABEL: store_i64_i1:
-; CHECK:      i64.const push, 1{{$}}
-; CHECK-NEXT: set_local 4, pop{{$}}
-; CHECK-NEXT: i64.and push, (get_local 3), (get_local 4){{$}}
-; CHECK-NEXT: set_local 5, pop{{$}}
-; CHECK-NEXT: i64.store8 (get_local 2), (get_local 5){{$}}
+; CHECK:      i64.const $push[[NUM0:[0-9]+]]=, 1{{$}}
+; CHECK-NEXT: i64.and $push[[NUM1:[0-9]+]]=, $1, $pop[[NUM0]]{{$}}
+; CHECK-NEXT: i64.store8 $discard=, $0, $pop[[NUM1]]{{$}}
 define void @store_i64_i1(i1* %p, i64 %v) {
   %t = trunc i64 %v to i1
   store i1 %t, i1* %p