1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
2; RUN: opt -S -structurizecfg %s | FileCheck %s
3
4define void @invert_condition(i1 %arg) {
5; CHECK-LABEL: @invert_condition(
6; CHECK-NEXT:  bb:
7; CHECK-NEXT:    [[TMP:%.*]] = load volatile float, float addrspace(1)* undef
8; CHECK-NEXT:    [[TMP1:%.*]] = load volatile float, float addrspace(1)* undef
9; CHECK-NEXT:    br label [[BB2:%.*]]
10; CHECK:       bb2:
11; CHECK-NEXT:    [[TMP3:%.*]] = fcmp oge float [[TMP]], [[TMP1]]
12; CHECK-NEXT:    [[TMP4:%.*]] = xor i1 [[ARG:%.*]], [[TMP3]]
13; CHECK-NEXT:    [[TMP0:%.*]] = xor i1 [[TMP4]], true
14; CHECK-NEXT:    br i1 [[TMP0]], label [[BB5:%.*]], label [[BB2]]
15; CHECK:       bb5:
16; CHECK-NEXT:    ret void
17;
18bb:
19  %tmp = load volatile float, float addrspace(1)* undef
20  %tmp1 = load volatile float, float addrspace(1)* undef
21  br label %bb2
22
23bb2:                                              ; preds = %bb2, %bb
24  %tmp3 = fcmp oge float %tmp, %tmp1
25  %tmp4 = xor i1 %arg, %tmp3
26  br i1 %tmp4, label %bb2, label %bb5
27
28bb5:                                              ; preds = %bb2
29  ret void
30}
31