1; RUN: llc < %s -fast-isel -O0 | FileCheck %s 2 3target triple = "wasm32-unknown-unknown" 4 5; CHECK-LABEL: gh_80053: # @gh_80053 6; CHECK-NEXT: .functype gh_80053 (i32) -> (i32) 7; CHECK-NEXT: .local i32, i32, i32, i32, i32, i32 8; CHECK: i32.const 0 9; CHECK-NEXT: local.set 1 10; CHECK-NEXT: local.get 0 11; CHECK-NEXT: local.get 1 12; CHECK-NEXT: i32.eq 13; CHECK-NEXT: local.set 2 14; CHECK-NEXT: i32.const 1 15; CHECK-NEXT: local.set 3 16; CHECK-NEXT: local.get 2 17; CHECK-NEXT: local.get 3 18; CHECK-NEXT: i32.and 19; CHECK-NEXT: local.set 4 20; CHECK-NEXT: block 21; CHECK-NEXT: local.get 4 22; CHECK-NEXT: i32.eqz 23; CHECK-NEXT: br_if 0 # 0: down to label0 24; CHECK: i32.const 0 25; CHECK-NEXT: local.set 5 26; CHECK-NEXT: local.get 5 27; CHECK-NEXT: return 28; CHECK-NEXT: .LBB0_2: # %BB03 29; CHECK-NEXT: end_block # label0: 30; CHECK-NEXT: i32.const 1 31; CHECK-NEXT: local.set 6 32; CHECK-NEXT: local.get 6 33; CHECK-NEXT: return 34; CHECK-NEXT: end_function 35define i1 @gh_80053(ptr) { 36BB01: 37 %eq = icmp eq ptr %0, null 38 br i1 %eq, label %BB02, label %BB03 39BB02: 40 ret i1 0 41BB03: 42 ret i1 1 43} 44