; RUN: opt < %s -instcombine -simplifycfg -S |\
; RUN:    not grep {call void @abort}

@b_rec.0 = external global i32          ; <i32*> [#uses=2]

define void @_Z12h000007_testv(i32* %P) {
entry:
        %tmp.2 = load i32* @b_rec.0             ; <i32> [#uses=1]
        %tmp.9 = or i32 %tmp.2, -989855744              ; <i32> [#uses=2]
        %tmp.16 = and i32 %tmp.9, -805306369            ; <i32> [#uses=2]
        %tmp.17 = and i32 %tmp.9, -973078529            ; <i32> [#uses=1]
        store i32 %tmp.17, i32* @b_rec.0
        %tmp.17.shrunk = bitcast i32 %tmp.16 to i32             ; <i32> [#uses=1]
        %tmp.22 = and i32 %tmp.17.shrunk, -1073741824           ; <i32> [#uses=1]
        %tmp.23 = icmp eq i32 %tmp.22, -1073741824              ; <i1> [#uses=1]
        br i1 %tmp.23, label %endif.0, label %then.0

then.0:         ; preds = %entry
        tail call void @abort( )
        unreachable

endif.0:                ; preds = %entry
        %tmp.17.shrunk2 = bitcast i32 %tmp.16 to i32            ; <i32> [#uses=1]
        %tmp.27.mask = and i32 %tmp.17.shrunk2, 100663295               ; <i32> [#uses=1]
        store i32 %tmp.27.mask, i32* %P
        ret void
}

declare void @abort()

