brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.7 KiB · 76ebf29 Raw
54 lines · cpp
1// RUN: %clang_cc1 -fkeep-persistent-storage-variables -emit-llvm %s -o - -triple=x86_64-unknown-linux-gnu | FileCheck %s2// RUN: %clang_cc1 -fkeep-persistent-storage-variables -emit-llvm %s -o - -triple=powerpc64-ibm-aix-xcoff | FileCheck %s3 4// CHECK: @_ZL2g1 = internal global i32 0, align 45// CHECK: @_ZL2g2 = internal global i32 1, align 46// CHECK: @tl1 = thread_local global i32 0, align 47// CHECK: @tl2 = thread_local global i32 3, align 48// CHECK: @_ZL3tl3 = internal thread_local global i32 0, align 49// CHECK: @_ZL3tl4 = internal thread_local global i32 4, align 410// CHECK: @g5 = global i32 0, align 411// CHECK: @g6 = global i32 6, align 412// CHECK: @_ZZ5test3vE2s3 = internal global i32 0, align 413// CHECK: @_ZN12_GLOBAL__N_12s4E = internal global i32 42, align 414// CHECK: @_ZZ5test5vE3tl5 = internal thread_local global i32 1, align 415// CHECK: @_ZN2ST2s6E = global i32 7, align 416// CHECK: @_Z2v7 = internal global %union.anon zeroinitializer, align 417// CHECK: @_ZDC2v8E = global %struct.ST8 zeroinitializer, align 418// CHECK: @llvm{{(\.compiler)?}}.used = appending global [14 x ptr] [ptr @_ZL2g1, ptr @_ZL2g2, ptr @tl1, ptr @tl2, ptr @_ZL3tl3, ptr @_ZL3tl4, ptr @g5, ptr @g6, ptr @_ZZ5test3vE2s3, ptr @_ZN12_GLOBAL__N_12s4E, ptr @_ZZ5test5vE3tl5, ptr @_ZN2ST2s6E, ptr @_Z2v7, ptr @_ZDC2v8E], section "llvm.metadata"19 20static int g1;21static int g2 = 1;22__thread int tl1;23__thread int tl2 = 3;24static __thread int tl3;25static __thread int tl4 = 4;26int g5;27int g6 = 6;28 29int test3() {30  static int s3 = 0;31  ++s3;32  return s3;33}34 35namespace {36  int s4 = 42;37}38 39int test5() {40  static __thread int tl5 = 1;41  ++tl5;42  return tl5;43}44 45struct ST {46  static int s6;47};48int ST::s6 = 7;49 50static union { int v7; };51 52struct ST8 { int v8; };53auto [v8] = ST8{0};54