Home | History | Annotate | Download | only in reader_tests
      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