Bump version to 19.1.0-rc3
[llvm-project.git] / llvm / test / Transforms / StructurizeCFG / switch.ll
blob91818850a36308bc32b904f6c3533f86c74a173b
1 ; RUN: opt -S -passes='lower-switch,structurizecfg' %s -o - | FileCheck %s
3 ; The structurizecfg pass cannot handle switch instructions, so we need to
4 ; make sure the lower switch pass is always run before structurizecfg.
6 ; CHECK-LABEL: @switch
7 define void @switch(ptr addrspace(1) %out, i32 %cond) nounwind {
8 entry:
9 ; CHECK: icmp
10   switch i32 %cond, label %done [ i32 0, label %zero]
12 ; CHECK: zero:
13 zero:
14 ; CHECK: store i32 7, ptr addrspace(1) %out
15   store i32 7, ptr addrspace(1) %out
16 ; CHECK: br label %done
17   br label %done
19 ; CHECK: done:
20 done:
21 ; CHECK: ret void
22   ret void