30 lines · plain
1; RUN: llc -verify-machineinstrs -O0 -mtriple=spirv32-unknown-unknown %s -o - | FileCheck %s2 3; CHECK-DAG: [[I32:%.+]] = OpTypeInt 324; CHECK-DAG: [[BOOL:%.+]] = OpTypeBool5; CHECK-DAG: [[TRUE:%.+]] = OpConstantTrue6; CHECK-DAG: [[FALSE:%.+]] = OpConstantFalse7 8define i1 @test_if(i32 %a, i32 %b) {9entry:10 %cond = icmp eq i32 %a, %b11 br i1 %cond, label %true_label, label %false_label12true_label:13 ret i1 true14false_label:15 ret i1 false16}17 18; CHECK: OpFunction19; CHECK: [[A:%.+]] = OpFunctionParameter [[I32]]20; CHECK: [[B:%.+]] = OpFunctionParameter [[I32]]21; CHECK: [[ENTRY:%.+]] = OpLabel22; CHECK: [[COND:%.+]] = OpIEqual [[BOOL]] [[A]] [[B]]23; CHECK: OpBranchConditional [[COND]] [[TRUE_LABEL:%.+]] [[FALSE_LABEL:%.+]]24 25; CHECK: [[FALSE_LABEL]] = OpLabel26; CHECK: OpReturnValue [[FALSE]]27 28; CHECK: [[TRUE_LABEL]] = OpLabel29; CHECK: OpReturnValue [[TRUE]]30