[WebAssembly] Fix legalization of shift operators on large integer types.
[oota-llvm.git] / test / CodeGen / WebAssembly / phi.ll
index f06d9673de522f05e261d7fdab237b8a658252a9..bae8a7c9e3b85b6d663ab4f72478367a0553d7d1 100644 (file)
@@ -1,7 +1,4 @@
-; RUN: llc < %s -asm-verbose=false | FileCheck %s
-
-; This test depends on branching support, which is not yet checked in.
-; XFAIL: *
+; RUN: llc < %s -asm-verbose=false -verify-machineinstrs | FileCheck %s
 
 ; Test that phis are lowered.
 
@@ -10,10 +7,9 @@ target triple = "wasm32-unknown-unknown"
 
 ; Basic phi triangle.
 
-; CHECK-LABEL: test0
-; CHECK: (setlocal [[REG:@.*]] (argument 0))
-; CHECK: (setlocal [[REG]] (sdiv [[REG]] {{.*}}))
-; CHECK: (return [[REG]])
+; CHECK-LABEL: test0:
+; CHECK: div_s $[[NUM0:[0-9]+]]=, $0, $pop[[NUM1:[0-9]+]]{{$}}
+; CHECK: return $[[NUM0]]{{$}}
 define i32 @test0(i32 %p) {
 entry:
   %t = icmp slt i32 %p, 0
@@ -28,11 +24,11 @@ done:
 
 ; Swap phis.
 
-; CHECK-LABEL: test1
-; CHECK: BB0_1:
-; CHECK: (setlocal [[REG0:@.*]] [[REG1:@.*]])
-; CHECK: (setlocal [[REG1]] [[REG2:@.*]])
-; CHECK: (setlocal [[REG2]] [[REG0]])
+; CHECK-LABEL: test1:
+; CHECK: BB1_1:
+; CHECK: copy_local $[[NUM0:[0-9]+]]=, $[[NUM1:[0-9]+]]{{$}}
+; CHECK: copy_local $[[NUM1]]=, $[[NUM2:[0-9]+]]{{$}}
+; CHECK: copy_local $[[NUM2]]=, $[[NUM0]]{{$}}
 define i32 @test1(i32 %n) {
 entry:
   br label %loop