mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-24 20:29:53 +00:00
a72297881f
Globals in address spaces other than one may have 0 as a valid address, so we should not assume that they can be null. Reviewed by Philip Reames. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@246137 91177308-0d34-0410-b5e6-96231b3b80d8
20 lines
524 B
LLVM
20 lines
524 B
LLVM
; RUN: opt < %s -instcombine -S | FileCheck %s
|
|
|
|
; This test makes sure that we do not assume globals in address spaces other
|
|
; than 0 are able to be null.
|
|
|
|
@as0 = external global i32
|
|
@as1 = external addrspace(1) global i32
|
|
|
|
declare void @addrspace0(i32*)
|
|
declare void @addrspace1(i32 addrspace(1)*)
|
|
|
|
; CHECK: call void @addrspace0(i32* nonnull @as0)
|
|
; CHECK: call void @addrspace1(i32 addrspace(1)* @as1)
|
|
|
|
define void @test() {
|
|
call void @addrspace0(i32* @as0)
|
|
call void @addrspace1(i32 addrspace(1)* @as1)
|
|
ret void
|
|
}
|