; RUN: opt -S -codegenprepare -mtriple=amdgcn--amdhsa < %s | FileCheck %s

; CHECK-LABEL: @no_sink_local_to_flat(
; CHECK: addrspacecast
; CHECK: br
; CHECK-NOT: addrspacecast
define i64 @no_sink_local_to_flat(i1 %pred, i64 addrspace(3)* %ptr) {
  %ptr_cast = addrspacecast i64 addrspace(3)* %ptr to i64 addrspace(4)*
  br i1 %pred, label %l1, label %l2

l1:
  %v1 = load i64, i64 addrspace(3)* %ptr
  ret i64 %v1

l2:
  %v2 = load i64, i64 addrspace(4)* %ptr_cast
  ret i64 %v2
}

; CHECK-LABEL: @no_sink_private_to_flat(
; CHECK: addrspacecast
; CHECK: br
; CHECK-NOT: addrspacecast
define i64 @no_sink_private_to_flat(i1 %pred, i64* %ptr) {
  %ptr_cast = addrspacecast i64* %ptr to i64 addrspace(4)*
  br i1 %pred, label %l1, label %l2

l1:
  %v1 = load i64, i64* %ptr
  ret i64 %v1

l2:
  %v2 = load i64, i64 addrspace(4)* %ptr_cast
  ret i64 %v2
}


; CHECK-LABEL: @sink_global_to_flat(
; CHECK-NOT: addrspacecast
; CHECK: br
; CHECK: addrspacecast
define i64 @sink_global_to_flat(i1 %pred, i64 addrspace(1)* %ptr) {
  %ptr_cast = addrspacecast i64 addrspace(1)* %ptr to i64 addrspace(4)*
  br i1 %pred, label %l1, label %l2

l1:
  %v1 = load i64, i64 addrspace(1)* %ptr
  ret i64 %v1

l2:
  %v2 = load i64, i64 addrspace(4)* %ptr_cast
  ret i64 %v2
}

; CHECK-LABEL: @sink_flat_to_global(
; CHECK-NOT: addrspacecast
; CHECK: br
; CHECK: addrspacecast
define i64 @sink_flat_to_global(i1 %pred, i64 addrspace(4)* %ptr) {
  %ptr_cast = addrspacecast i64 addrspace(4)* %ptr to i64 addrspace(1)*
  br i1 %pred, label %l1, label %l2

l1:
  %v1 = load i64, i64 addrspace(4)* %ptr
  ret i64 %v1

l2:
  %v2 = load i64, i64 addrspace(1)* %ptr_cast
  ret i64 %v2
}

; CHECK-LABEL: @sink_flat_to_constant(
; CHECK-NOT: addrspacecast
; CHECK: br
; CHECK: addrspacecast
define i64 @sink_flat_to_constant(i1 %pred, i64 addrspace(4)* %ptr) {
  %ptr_cast = addrspacecast i64 addrspace(4)* %ptr to i64 addrspace(2)*
  br i1 %pred, label %l1, label %l2

l1:
  %v1 = load i64, i64 addrspace(4)* %ptr
  ret i64 %v1

l2:
  %v2 = load i64, i64 addrspace(2)* %ptr_cast
  ret i64 %v2
}

; CHECK-LABEL: @sink_flat_to_local(
; CHECK-NOT: addrspacecast
; CHECK: br
; CHECK: addrspacecast
define i64 @sink_flat_to_local(i1 %pred, i64 addrspace(4)* %ptr) {
  %ptr_cast = addrspacecast i64 addrspace(4)* %ptr to i64 addrspace(3)*
  br i1 %pred, label %l1, label %l2

l1:
  %v1 = load i64, i64 addrspace(4)* %ptr
  ret i64 %v1

l2:
  %v2 = load i64, i64 addrspace(3)* %ptr_cast
  ret i64 %v2
}

; CHECK-LABEL: @sink_flat_to_private(
; CHECK-NOT: addrspacecast
; CHECK: br
; CHECK: addrspacecast
define i64 @sink_flat_to_private(i1 %pred, i64 addrspace(4)* %ptr) {
  %ptr_cast = addrspacecast i64 addrspace(4)* %ptr to i64*
  br i1 %pred, label %l1, label %l2

l1:
  %v1 = load i64, i64 addrspace(4)* %ptr
  ret i64 %v1

l2:
  %v2 = load i64, i64* %ptr_cast
  ret i64 %v2
}
