| ; 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 | 
 | } |