; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 3
; RUN: opt -assume-default-is-flat-addrspace -S -passes=infer-address-spaces < %s 2>&1 | FileCheck %s
@g = addrspace(1) global i32 0, align 4
define ptr @f2() {
; CHECK-LABEL: define ptr @f2() {
; CHECK-NEXT: entry:
; CHECK-NEXT: [[X2:%.*]] = addrspacecast ptr addrspace(1) @g to ptr
; CHECK-NEXT: ret ptr [[X2]]
;
entry:
%x1 = addrspacecast ptr addrspacecast (ptr addrspace(1) @g to ptr) to ptr addrspace(1)
%x2 = addrspacecast ptr addrspace(1) %x1 to ptr
ret ptr %x2
}
define ptr @f3() #0 {
; CHECK-LABEL: define ptr @f3(
; CHECK-SAME: ) #[[ATTR0:[0-9]+]] {
; CHECK-NEXT: entry:
; CHECK-NEXT: [[X1:%.*]] = addrspacecast ptr addrspacecast (ptr addrspace(1) @g to ptr) to ptr addrspace(1)
; CHECK-NEXT: [[X2:%.*]] = addrspacecast ptr addrspace(1) [[X1]] to ptr
; CHECK-NEXT: ret ptr [[X2]]
;
entry:
%x1 = addrspacecast ptr addrspacecast (ptr addrspace(1) @g to ptr) to ptr addrspace(1)
%x2 = addrspacecast ptr addrspace(1) %x1 to ptr
ret ptr %x2
}
attributes #0 = { noinline optnone }