| ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 2 | 
 | ; RUN: opt < %s -passes=instsimplify -S | FileCheck %s | 
 |  | 
 | @gv = global i64 zeroinitializer, align 16 | 
 |  | 
 | define i1 @cmp_gv_alloca() { | 
 | ; CHECK-LABEL: define i1 @cmp_gv_alloca() { | 
 | ; CHECK-NEXT:    ret i1 false | 
 | ; | 
 |   %alloca = alloca i64, align 8 | 
 |   %cmp = icmp eq ptr %alloca, @gv | 
 |   ret i1 %cmp | 
 | } | 
 |  | 
 | @gv_externally_init = externally_initialized global i64 zeroinitializer, align 16 | 
 |  | 
 | define i1 @cmp_gv_alloca_extern_init() { | 
 | ; CHECK-LABEL: define i1 @cmp_gv_alloca_extern_init() { | 
 | ; CHECK-NEXT:    ret i1 false | 
 | ; | 
 |   %alloca = alloca i64, align 8 | 
 |   %cmp = icmp eq ptr %alloca, @gv_externally_init | 
 |   ret i1 %cmp | 
 | } | 
 |  | 
 | @const_gv = protected addrspace(4) externally_initialized global [4096 x i64] zeroinitializer, align 16 | 
 | define i1 @cmp_gv_alloca_cast() { | 
 | ; CHECK-LABEL: define i1 @cmp_gv_alloca_cast() { | 
 | ; CHECK-NEXT:    ret i1 false | 
 | ; | 
 |   %alloca = alloca i64, align 8, addrspace(5) | 
 |   %cast.alloca = addrspacecast ptr addrspace(5) %alloca to ptr | 
 |   %cmp = icmp eq ptr %cast.alloca, addrspacecast (ptr addrspace(4) @const_gv to ptr) | 
 |   ret i1 %cmp | 
 | } | 
 |  | 
 | @gv_weak = weak global i64 zeroinitializer, align 16 | 
 |  | 
 | define i1 @cmp_gv_weak_alloca() { | 
 | ; CHECK-LABEL: define i1 @cmp_gv_weak_alloca() { | 
 | ; CHECK-NEXT:    ret i1 false | 
 | ; | 
 |   %alloca = alloca i64, align 8 | 
 |   %cmp = icmp eq ptr %alloca, @gv_weak | 
 |   ret i1 %cmp | 
 | } | 
 |  | 
 | %opaque = type opaque | 
 | @gv_unsized = external global %opaque, align 16 | 
 |  | 
 | define i1 @cmp_gv_unsized_alloca() { | 
 | ; CHECK-LABEL: define i1 @cmp_gv_unsized_alloca() { | 
 | ; CHECK-NEXT:    [[ALLOCA:%.*]] = alloca i64, align 8 | 
 | ; CHECK-NEXT:    [[CMP:%.*]] = icmp eq ptr [[ALLOCA]], @gv_unsized | 
 | ; CHECK-NEXT:    ret i1 [[CMP]] | 
 | ; | 
 |   %alloca = alloca i64, align 8 | 
 |   %cmp = icmp eq ptr %alloca, @gv_unsized | 
 |   ret i1 %cmp | 
 | } |