; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
; RUN: opt < %s -passes=rewrite-statepoints-for-gc -S 2>&1 | FileCheck %s

; derived %next.i64 base %base_obj

define void @test(ptr addrspace(1) %base_obj) gc "statepoint-example" {
; CHECK-LABEL: @test(
; CHECK-NEXT:  entry:
; CHECK-NEXT:    [[OBJ:%.*]] = getelementptr i64, ptr addrspace(1) [[BASE_OBJ:%.*]], i32 1
; CHECK-NEXT:    br label [[LOOP:%.*]]
; CHECK:       loop:
; CHECK-NEXT:    [[DOT0:%.*]] = phi ptr addrspace(1) [ [[BASE_OBJ]], [[ENTRY:%.*]] ], [ [[BASE_OBJ_RELOCATED:%.*]], [[LOOP]] ]
; CHECK-NEXT:    [[CURRENT:%.*]] = phi ptr addrspace(1) [ [[OBJ]], [[ENTRY]] ], [ [[NEXT_I64_RELOCATED:%.*]], [[LOOP]] ]
; CHECK-NEXT:    [[CURRENT_I32:%.*]] = bitcast ptr addrspace(1) [[CURRENT]] to ptr addrspace(1)
; CHECK-NEXT:    [[NEXT_I32:%.*]] = getelementptr i32, ptr addrspace(1) [[CURRENT_I32]], i32 1
; CHECK-NEXT:    [[NEXT_I64:%.*]] = bitcast ptr addrspace(1) [[NEXT_I32]] to ptr addrspace(1)
; CHECK-NEXT:    [[STATEPOINT_TOKEN:%.*]] = call token (i64, i32, ptr, i32, i32, ...) @llvm.experimental.gc.statepoint.p0(i64 2882400000, i32 0, ptr elementtype(void ()) @do_safepoint, i32 0, i32 0, i32 0, i32 0) [ "deopt"(i32 0, i32 -1, i32 0, i32 0, i32 0), "gc-live"(ptr addrspace(1) [[NEXT_I64]], ptr addrspace(1) [[DOT0]]) ]
; CHECK-NEXT:    [[NEXT_I64_RELOCATED]] = call coldcc ptr addrspace(1) @llvm.experimental.gc.relocate.p1(token [[STATEPOINT_TOKEN]], i32 1, i32 0)
; CHECK-NEXT:    [[BASE_OBJ_RELOCATED]] = call coldcc ptr addrspace(1) @llvm.experimental.gc.relocate.p1(token [[STATEPOINT_TOKEN]], i32 1, i32 1)
; CHECK-NEXT:    br label [[LOOP]]
;
entry:
  %obj = getelementptr i64, ptr addrspace(1) %base_obj, i32 1
  br label %loop

loop:                                             ; preds = %loop, %entry
  %current = phi ptr addrspace(1) [ %obj, %entry ], [ %next.i64, %loop ]
  %current.i32 = bitcast ptr addrspace(1) %current to ptr addrspace(1)
  %next.i32 = getelementptr i32, ptr addrspace(1) %current.i32, i32 1
  %next.i64 = bitcast ptr addrspace(1) %next.i32 to ptr addrspace(1)
  call void @do_safepoint() [ "deopt"(i32 0, i32 -1, i32 0, i32 0, i32 0) ]
  br label %loop
}

declare void @do_safepoint()
