# RUN: llc  -run-pass implicit-null-checks -mtriple=x86_64-apple-macosx -o - %s | FileCheck %s

# CHECK-NOT: FAULTING_OP

--- |
  target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
  target triple = "x86_64-unknown-linux-gnu"
  
  @global = external global i8*
  @global.1 = external global i8*
  
  declare i8* @ham(i8*, i8**)
  
  define void @eggs(i8* %arg) gc "statepoint-example" {
  bb:
    %tmp = call i8* undef(i8* undef, i8** undef)
    %tmp1 = icmp eq i8* %tmp, null
    br i1 %tmp1, label %bb2, label %bb3, !make.implicit !0
  
  bb2:                                              ; preds = %bb
    br i1 undef, label %bb51, label %bb59
  
  bb3:                                              ; preds = %bb
    %tmp4 = getelementptr inbounds i8, i8* %tmp, i64 16
    %tmp5 = bitcast i8* %tmp4 to i64*
    br label %bb7
  
  bb7:                                              ; preds = %bb37, %bb3
    %tmp8 = phi i64* [ %tmp5, %bb3 ], [ %tmp18, %bb37 ]
    %tmp10 = phi i32 [ undef, %bb3 ], [ %tmp48, %bb37 ]
    %tmp12 = phi i32 [ 0, %bb3 ], [ 6, %bb37 ]
    %tmp13 = phi double [ 0.000000e+00, %bb3 ], [ 2.000000e+00, %bb37 ]
    %tmp14 = zext i32 %tmp10 to i64
    br i1 undef, label %bb26, label %bb15
  
  bb15:                                             ; preds = %bb7
    %tmp16 = call token (i64, i32, void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf(i64 2882400000, i32 0, void ()* nonnull @wibble, i32 0, i32 0, i32 0, i32 30, i32 1, i32 0, i32 99, i32 0, i32 12, i32 0, i32 10, i32 %tmp10, i32 10, i32 0, i32 10, i32 %tmp12, i32 10, i32 undef, i32 6, float undef, i32 7, double %tmp13, i32 99, i8* null, i32 7, double undef, i32 99, i8* null, i32 13, i8* %tmp, i32 7, double undef, i32 99, i8* null, i8* undef)
    br label %bb26
  
  bb26:                                             ; preds = %bb15, %bb7
    %tmp18 = phi i64* [ %tmp8, %bb7 ], [ undef, %bb15 ]
    %tmp20 = sub i32 0, 0
    %tmp21 = select i1 undef, i32 0, i32 %tmp20
    %tmp22 = sext i32 %tmp21 to i64
    %tmp23 = load i8*, i8** @global.1, align 8
    %tmp24 = icmp eq i8* %tmp23, null
    %tmp25 = select i1 %tmp24, i8* null, i8* undef
    %tmp27 = load i32, i32* undef, align 4
    %sunkaddr = mul i64 %tmp14, 8
    %tmp2 = bitcast i64* %tmp18 to i8*
    %sunkaddr1 = getelementptr i8, i8* %tmp2, i64 %sunkaddr
    %tmp3 = bitcast i8* %sunkaddr1 to i64*
    %tmp28 = load i64, i64* %tmp3, align 8
    %tmp29 = add i64 %tmp28, 1
    store i64 %tmp29, i64* %tmp3, align 8
    %tmp30 = trunc i64 %tmp28 to i32
    %tmp31 = sub i32 %tmp27, %tmp30
    store i32 %tmp31, i32* undef, align 4
    %tmp32 = getelementptr inbounds i8, i8* %tmp25, i64 768
    %tmp33 = bitcast i8* %tmp32 to i64*
    %tmp34 = load i64, i64* %tmp33, align 8
    br i1 undef, label %bb37, label %bb35
  
  bb35:                                             ; preds = %bb26
    %tmp36 = call i8* @ham(i8* undef, i8** nonnull @global)
    br label %bb37
  
  bb37:                                             ; preds = %bb35, %bb26
    %tmp38 = phi i8* [ %tmp36, %bb35 ], [ undef, %bb26 ]
    %tmp39 = getelementptr inbounds i8, i8* %tmp38, i64 760
    %tmp40 = bitcast i8* %tmp39 to i64*
    %tmp41 = load i64, i64* %tmp40, align 8
    %tmp42 = icmp slt i64 %tmp34, %tmp41
    %tmp43 = select i1 %tmp42, i64 %tmp41, i64 %tmp34
    %tmp44 = and i64 %tmp43, 63
    %tmp45 = ashr i64 %tmp29, %tmp44
    %sunkaddr2 = mul i64 %tmp14, 8
    %tmp6 = bitcast i64* %tmp18 to i8*
    %sunkaddr3 = getelementptr i8, i8* %tmp6, i64 %sunkaddr2
    %tmp7 = bitcast i8* %sunkaddr3 to i64*
    store i64 %tmp45, i64* %tmp7, align 8
    %tmp46 = sub i64 0, %tmp22
    store i64 %tmp46, i64* undef, align 8
    %tmp47 = add nsw i32 %tmp12, 1
    %tmp48 = add i32 %tmp10, 1
    %tmp49 = icmp sgt i32 %tmp48, 15140
    br i1 %tmp49, label %bb51.loopexit, label %bb7
  
  bb51.loopexit:                                    ; preds = %bb37
    %tmp9 = add i32 %tmp10, 1
    br label %bb51
  
  bb51:                                             ; preds = %bb51.loopexit, %bb2
    %tmp52 = phi i32 [ %tmp47, %bb51.loopexit ], [ 0, %bb2 ]
    %tmp53 = phi double [ 2.000000e+00, %bb51.loopexit ], [ 0.000000e+00, %bb2 ]
    %tmp54 = phi i32 [ %tmp9, %bb51.loopexit ], [ undef, %bb2 ]
    %tmp56 = add i32 %tmp54, 0
    %tmp57 = call token (i64, i32, void (i32)*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidi32f(i64 2882400000, i32 0, void (i32)* nonnull @wobble, i32 1, i32 0, i32 -121, i32 0, i32 38, i32 1, i32 0, i32 270, i32 4, i32 12, i32 0, i32 11, i64 undef, i32 99, i8* null, i32 10, i32 %tmp56, i32 6, float undef, i32 99, i8* null, i32 99, i8* null, i32 10, i32 %tmp52, i32 10, i32 undef, i32 99, i8* null, i32 7, double %tmp53, i32 99, i8* null, i32 7, double undef, i32 99, i8* null, i32 13, i8* undef, i32 99, i8* null, i32 99, i8* null, i8* undef)
    unreachable
  
  bb59:                                             ; preds = %bb2
    %tmp61 = call token (i64, i32, void (i32)*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidi32f(i64 2882400000, i32 0, void (i32)* nonnull @wobble, i32 1, i32 0, i32 8, i32 0, i32 38, i32 1, i32 0, i32 123, i32 4, i32 12, i32 0, i32 13, i8* null, i32 99, i32 undef, i32 13, i8* null, i32 10, i32 undef, i32 99, i32 undef, i32 99, i32 undef, i32 99, i32 undef, i32 99, i8* null, i32 99, float undef, i32 99, double undef, i32 99, i8* null, i32 99, double undef, i32 99, i8* null, i32 13, i8* null, i32 99, double undef, i32 99, i8* null)
    unreachable
  }
  
  declare void @wibble()
  
  declare void @wobble(i32)
  
  declare token @llvm.experimental.gc.statepoint.p0f_isVoidi32f(i64, i32, void (i32)*, i32, i32, ...)
  
  declare token @llvm.experimental.gc.statepoint.p0f_isVoidf(i64, i32, void ()*, i32, i32, ...)
  
  ; Function Attrs: nounwind
  declare void @llvm.stackprotector(i8*, i8**) #0
  
  attributes #0 = { nounwind }
  
  !0 = !{}
...
---
name:            eggs
alignment:       4
tracksRegLiveness: true
fixedStack:      
  - { id: 0, type: spill-slot, offset: -56, size: 8, alignment: 8, callee-saved-register: '$rbx' }
  - { id: 1, type: spill-slot, offset: -48, size: 8, alignment: 16, callee-saved-register: '$r12' }
  - { id: 2, type: spill-slot, offset: -40, size: 8, alignment: 8, callee-saved-register: '$r13' }
  - { id: 3, type: spill-slot, offset: -32, size: 8, alignment: 16, callee-saved-register: '$r14' }
  - { id: 4, type: spill-slot, offset: -24, size: 8, alignment: 8, callee-saved-register: '$r15' }
  - { id: 5, type: spill-slot, offset: -16, size: 8, alignment: 16, callee-saved-register: '$rbp' }
stack:           
  - { id: 0, offset: -88, size: 8, alignment: 8 }
  - { id: 1, offset: -96, size: 8, alignment: 8 }
  - { id: 2, offset: -104, size: 8, alignment: 8 }
  - { id: 3, offset: -64, size: 8, alignment: 8 }
  - { id: 4, type: spill-slot, offset: -72, size: 8, alignment: 8 }
  - { id: 5, type: spill-slot, offset: -80, size: 8, alignment: 8 }
constants:       
  - id:              0
    value:           'double 2.000000e+00'
    alignment:       8
body:             |
  bb.0.bb:
    successors: %bb.1.bb2(0x00000800), %bb.3.bb3(0x7ffff800)
    liveins: $rbp, $r15, $r14, $r13, $r12, $rbx
  
    frame-setup PUSH64r killed $rbp, implicit-def $rsp, implicit $rsp
    frame-setup PUSH64r killed $r15, implicit-def $rsp, implicit $rsp
    frame-setup PUSH64r killed $r14, implicit-def $rsp, implicit $rsp
    frame-setup PUSH64r killed $r13, implicit-def $rsp, implicit $rsp
    frame-setup PUSH64r killed $r12, implicit-def $rsp, implicit $rsp
    frame-setup PUSH64r killed $rbx, implicit-def $rsp, implicit $rsp
    $rsp = frame-setup SUB64ri8 $rsp, 56, implicit-def dead $eflags
    CALL64r undef $rax, csr_64, implicit $rsp, implicit undef $rdi, implicit undef $rsi, implicit-def $rsp, implicit-def $rax
    TEST64rr $rax, $rax, implicit-def $eflags
    JNE_1 %bb.3.bb3, implicit killed $eflags
  
  bb.1.bb2:
    successors: %bb.2(0x40000000), %bb.13.bb59(0x40000000)
  
    $ebp = XOR32rr undef $ebp, undef $ebp, implicit-def dead $eflags
    TEST8rr $bpl, $bpl, implicit-def $eflags
    JE_1 %bb.13.bb59, implicit killed $eflags
  
  bb.2:
    successors: %bb.12.bb51(0x80000000)
    liveins: $ebp
  
    $xmm0 = XORPSrr undef $xmm0, undef $xmm0
    $ebx = IMPLICIT_DEF implicit-def $rbx
    JMP_1 %bb.12.bb51
  
  bb.3.bb3:
    successors: %bb.4.bb7(0x80000000)
    liveins: $rax
  
    MOV64mr $rsp, 1, $noreg, 32, $noreg, $rax :: (store 8 into %stack.5)
    $r12 = MOV64rr killed $rax
    $r12 = ADD64ri8 killed $r12, 16, implicit-def dead $eflags
    $xmm0 = XORPSrr undef $xmm0, undef $xmm0
    $esi = XOR32rr undef $esi, undef $esi, implicit-def dead $eflags
    $rax = MOV64ri %const.0
    $xmm1 = MOVSDrm killed $rax, 1, $noreg, 0, $noreg :: (load 8 from constant-pool)
    MOVSDmr $rsp, 1, $noreg, 40, $noreg, killed $xmm1 :: (store 8 into %stack.4)
    $eax = IMPLICIT_DEF
    $ecx = XOR32rr undef $ecx, undef $ecx, implicit-def dead $eflags
  
  bb.4.bb7:
    successors: %bb.6.bb26(0x40000000), %bb.5.bb15(0x40000000)
    liveins: $eax, $ecx, $esi, $r12, $xmm0
  
    $ebp = MOV32rr killed $ecx
    $ebx = MOV32rr killed $eax, implicit-def $rbx
    $r14d = MOV32rr $ebx, implicit-def $r14
    TEST8rr $sil, $sil, implicit-def $eflags
    JNE_1 %bb.6.bb26, implicit $eflags
  
  bb.5.bb15:
    successors: %bb.6.bb26(0x80000000)
    liveins: $ebp, $rbx, $r14, $xmm0
  
    MOV32mr $rsp, 1, $noreg, 24, $noreg, $ebx :: (store 4 into %stack.0, align 8)
    MOV32mr $rsp, 1, $noreg, 16, $noreg, $ebp :: (store 4 into %stack.1, align 8)
    MOVSDmr $rsp, 1, $noreg, 8, $noreg, killed $xmm0 :: (store 8 into %stack.2)
    $rax = MOV64rm $rsp, 1, $noreg, 32, $noreg :: (load 8 from %stack.5)
    MOV64mr $rsp, 1, $noreg, 48, $noreg, killed $rax :: (store 8 into %stack.3)
    $rax = MOV64ri @wibble
    STATEPOINT 2882400000, 0, 0, killed $rax, 2, 0, 2, 0, 2, 30, 2, 1, 2, 0, 2, 99, 2, 0, 2, 12, 2, 0, 2, 10, 1, 8, $rsp, 24, 2, 10, 2, 0, 2, 10, 1, 8, $rsp, 16, 2, 10, 2, 4278124286, 2, 6, 2, 4278124286, 2, 7, 1, 8, $rsp, 8, 2, 99, 2, 0, 2, 7, 2, 4278124286, 2, 99, 2, 0, 2, 13, 1, 8, $rsp, 48, 2, 7, 2, 4278124286, 2, 99, 2, 0, csr_64, implicit-def $rsp :: (volatile load 8 from %stack.0), (volatile load 8 from %stack.1), (volatile load 8 from %stack.2), (volatile load 8 from %stack.3)
    $esi = XOR32rr undef $esi, undef $esi, implicit-def dead $eflags
    $r12 = IMPLICIT_DEF
  
  bb.6.bb26:
    successors: %bb.8.bb37(0x40000000), %bb.7.bb35(0x40000000)
    liveins: $ebp, $esi, $rbx, $r12, $r14
  
    $rax = MOV64ri @global.1
    $rax = MOV64rm killed $rax, 1, $noreg, 0, $noreg :: (dereferenceable load 8 from @global.1)
    TEST64rr $rax, $rax, implicit-def $eflags
    $rax = CMOVE64rr undef $rax, killed $rax, implicit killed $eflags
    $ecx = MOV32rm undef $rax, 1, $noreg, 0, $noreg :: (load 4 from `i32* undef`)
    $rdx = MOV64rm $r12, 8, $r14, 0, $noreg :: (load 8 from %ir.tmp3)
    $r15 = LEA64r $rdx, 1, $noreg, 1, _
    MOV64mr $r12, 8, $r14, 0, $noreg, $r15 :: (store 8 into %ir.tmp3)
    $ecx = SUB32rr killed $ecx, $edx, implicit-def dead $eflags, implicit killed $rdx
    MOV32mr undef $rax, 1, $noreg, 0, $noreg, killed $ecx :: (store 4 into `i32* undef`)
    $r13 = MOV64rm killed $rax, 1, $noreg, 768, $noreg :: (load 8 from %ir.tmp33)
    TEST8rr $sil, $sil, implicit-def $eflags
    $rax = IMPLICIT_DEF
    JNE_1 %bb.8.bb37, implicit $eflags
  
  bb.7.bb35:
    successors: %bb.8.bb37(0x80000000)
    liveins: $ebp, $rbx, $r12, $r13, $r14, $r15
  
    $rsi = MOV64ri @global
    $rax = MOV64ri @ham
    CALL64r killed $rax, csr_64, implicit $rsp, implicit undef $rdi, implicit $rsi, implicit-def $rsp, implicit-def $rax
    $esi = XOR32rr undef $esi, undef $esi, implicit-def dead $eflags
  
  bb.8.bb37:
    successors: %bb.9.bb37(0x40000000), %bb.10.bb37(0x40000000)
    liveins: $ebp, $esi, $rax, $rbx, $r12, $r13, $r14, $r15
  
    $rcx = MOV64rm killed $rax, 1, $noreg, 760, $noreg :: (load 8 from %ir.tmp40)
    CMP64rr $r13, $rcx, implicit-def $eflags
    JL_1 %bb.10.bb37, implicit $eflags
  
  bb.9.bb37:
    successors: %bb.10.bb37(0x80000000)
    liveins: $ebp, $esi, $rbx, $r12, $r13, $r14, $r15
  
    $cl = MOV8rr $r13b, implicit killed $r13, implicit-def $rcx
  
  bb.10.bb37:
    successors: %bb.11.bb51.loopexit(0x00000800), %bb.4.bb7(0x7ffff800)
    liveins: $ebp, $esi, $rbx, $rcx, $r12, $r14, $r15
  
    $cl = KILL $cl, implicit killed $rcx
    $r15 = SAR64rCL killed $r15, implicit-def dead $eflags, implicit $cl
    MOV64mr $r12, 8, killed $r14, 0, $noreg, killed $r15 :: (store 8 into %ir.tmp7)
    MOV64mi32 undef $rax, 1, $noreg, 0, $noreg, 0 :: (store 8 into `i64* undef`)
    $eax = LEA64_32r $rbx, 1, $noreg, 1, _
    $ecx = MOV32ri 6
    CMP32ri $eax, 15141, implicit-def $eflags
    $xmm0 = MOVSDrm $rsp, 1, $noreg, 40, $noreg :: (load 8 from %stack.4)
    JL_1 %bb.4.bb7, implicit $eflags
  
  bb.11.bb51.loopexit:
    successors: %bb.12.bb51(0x80000000)
    liveins: $ebp, $rbx
  
    $ebp = INC32r killed $ebp, implicit-def dead $eflags
    $ebx = INC32r $ebx, implicit-def dead $eflags, implicit killed $rbx, implicit-def $rbx
    $rax = MOV64ri %const.0
    $xmm0 = MOVSDrm killed $rax, 1, $noreg, 0, $noreg :: (load 8 from constant-pool)
  
  bb.12.bb51:
    liveins: $ebp, $rbx, $xmm0
  
    MOV32mr $rsp, 1, $noreg, 24, $noreg, $ebx, implicit killed $rbx :: (store 4 into %stack.0, align 8)
    MOV32mr $rsp, 1, $noreg, 16, $noreg, killed $ebp :: (store 4 into %stack.1, align 8)
    MOVSDmr $rsp, 1, $noreg, 8, $noreg, killed $xmm0 :: (store 8 into %stack.2)
    $rax = MOV64ri @wobble
    $edi = MOV32ri -121
    STATEPOINT 2882400000, 0, 1, killed $rax, $edi, 2, 0, 2, 0, 2, 38, 2, 1, 2, 0, 2, 270, 2, 4, 2, 12, 2, 0, 2, 11, 2, 4278124286, 2, 99, 2, 0, 2, 10, 1, 8, $rsp, 24, 2, 6, 2, 4278124286, 2, 99, 2, 0, 2, 99, 2, 0, 2, 10, 1, 8, $rsp, 16, 2, 10, 2, 4278124286, 2, 99, 2, 0, 2, 7, 1, 8, $rsp, 8, 2, 99, 2, 0, 2, 7, 2, 4278124286, 2, 99, 2, 0, 2, 13, 2, 4278124286, 2, 99, 2, 0, 2, 99, 2, 0, csr_64, implicit-def $rsp :: (volatile load 8 from %stack.0), (volatile load 8 from %stack.1), (volatile load 8 from %stack.2)
  
  bb.13.bb59:
    $rax = MOV64ri @wobble
    $edi = MOV32ri 8
    STATEPOINT 2882400000, 0, 1, killed $rax, $edi, 2, 0, 2, 0, 2, 38, 2, 1, 2, 0, 2, 123, 2, 4, 2, 12, 2, 0, 2, 13, 2, 0, 2, 99, 2, 4278124286, 2, 13, 2, 0, 2, 10, 2, 4278124286, 2, 99, 2, 4278124286, 2, 99, 2, 4278124286, 2, 99, 2, 4278124286, 2, 99, 2, 0, 2, 99, 2, 4278124286, 2, 99, 2, 4278124286, 2, 99, 2, 0, 2, 99, 2, 4278124286, 2, 99, 2, 0, 2, 13, 2, 0, 2, 99, 2, 4278124286, 2, 99, 2, 0, csr_64, implicit-def $rsp

...
