1 ; Tests that we name unnamed global addresses. 2 3 ; Check that Subzero's bitcode reader handles renaming correctly. 4 ; RUN: %p2i --no-local-syms -i %s --insts | FileCheck %s 5 ; RUN: %l2i --no-local-syms -i %s --insts | %ifl FileCheck %s 6 7 ; RUN: %l2i --no-local-syms -i %s --insts --args --exit-success \ 8 ; RUN: -default-function-prefix=h -default-global-prefix=g \ 9 ; RUN: | %ifl FileCheck --check-prefix=BAD %s 10 11 ; RUN: %p2i --no-local-syms -i %s --insts --args --exit-success \ 12 ; RUN: -default-function-prefix=h -default-global-prefix=g \ 13 ; RUN: | FileCheck --check-prefix=BAD %s 14 15 ; RUN: %p2i -i %s --args -notranslate -timing | \ 16 ; RUN: FileCheck --check-prefix=NOIR %s 17 18 ; TODO(kschimpf) Check global variable declarations, once generated. 19 20 @0 = internal global [4 x i8] zeroinitializer, align 4 21 @1 = internal constant [10 x i8] c"Some stuff", align 1 22 @g = internal global [4 x i8] zeroinitializer, align 4 23 24 define internal i32 @2(i32 %v) { 25 ret i32 %v 26 } 27 28 ; CHECK: define internal i32 @Function(i32 %__0) { 29 ; CHECK-NEXT: __0: 30 ; CHECK-NEXT: ret i32 %__0 31 ; CHECK-NEXT: } 32 33 define internal void @hg() { 34 ret void 35 } 36 37 38 ; CHECK-NEXT: define internal void @hg() { 39 ; CHECK-NEXT: __0: 40 ; CHECK-NEXT: ret void 41 ; CHECK-NEXT: } 42 43 define internal void @3() { 44 ret void 45 } 46 47 ; CHECK-NEXT: define internal void @Function1() { 48 ; CHECK-NEXT: __0: 49 ; CHECK-NEXT: ret void 50 ; CHECK-NEXT: } 51 52 define internal void @h5() { 53 ret void 54 } 55 56 ; CHECK-NEXT: define internal void @h5() { 57 ; CHECK-NEXT: __0: 58 ; CHECK-NEXT: ret void 59 ; CHECK-NEXT: } 60 61 ; BAD: Warning : Default global prefix 'g' potentially conflicts with name 'g'. 62 ; BAD: Warning : Default function prefix 'h' potentially conflicts with name 'h5'. 63 64 ; NOIR: Total across all functions 65