51 lines · c
1// RUN: %clang_cc1 %s -triple powerpc-ibm-aix-xcoff -mtocdata=f,g,h,i,j,k,l,m,n,o,p -emit-llvm -o - 2>&1 | FileCheck %s -check-prefixes=COMMON,CHECK32 --match-full-lines2// RUN: %clang_cc1 %s -triple powerpc-ibm-aix-xcoff -mtocdata -emit-llvm -o - 2>&1 | FileCheck %s -check-prefixes=COMMON,CHECK32 --match-full-lines3 4// RUN: %clang_cc1 %s -triple powerpc64-ibm-aix-xcoff -mtocdata=f,g,h,i,j,k,l,m,n,o,p -emit-llvm -o - 2>&1 | FileCheck %s -check-prefixes=COMMON,CHECK64 --match-full-lines5// RUN: %clang_cc1 %s -triple powerpc64-ibm-aix-xcoff -mtocdata -emit-llvm -o - 2>&1 | FileCheck %s -check-prefixes=COMMON,CHECK64 --match-full-lines6 7extern int f;8long long g = 5;9const char *h = "h";10int *i;11int __attribute__((aligned(128))) j = 0;12float k = 100.00;13double l = 2.5;14int m __attribute__((section("foo"))) = 10;15__thread int n;16 17extern int p[];18 19struct SomeStruct;20extern struct SomeStruct o;21 22static int func_a() {23 return g+(int)h[0]+*i+j+k+l+m+n+p[0];24}25 26int func_b() {27 f = 1;28 return func_a();29}30 31struct SomeStruct* getAddress(void) {32 return &o;33}34 35// CHECK32: @g = global i64 5, align 836// CHECK64: @g = global i64 5, align 8 #037// COMMON: {{.*}} = private unnamed_addr constant [2 x i8] c"h\00", align 138// COMMON: @h = global {{...*}} #039// COMMON: @j = global i32 0, align 12840// COMMON: @k = global float 1.000000e+02, align 4 #041// CHECK32: @l = global double 2.500000e+00, align 842// CHECK64: @l = global double 2.500000e+00, align 8 #043// COMMON: @m = global i32 10, section "foo", align 444// COMMON: @f = external global i32, align 4 #045// COMMON: @o = external global %struct.SomeStruct, align 146// CHECK32: @i = global ptr null, align 4 #047// CHECK64: @i = global ptr null, align 8 #048// COMMON: @n = thread_local global i32 0, align 449// COMMON: @p = external global [0 x i32], align 450// COMMON: attributes #0 = { "toc-data" }51