36 lines · cpp
1// RUN: %clang_cc1 %s -triple powerpc-unknown-aix -target-cpu pwr8 -emit-llvm -o - | FileCheck %s -check-prefix=CHECK-GD2// RUN: %clang_cc1 %s -triple powerpc-unknown-aix -target-cpu pwr8 -ftls-model=global-dynamic -emit-llvm -o - | FileCheck %s -check-prefix=CHECK-GD3// RUN: %clang_cc1 %s -triple powerpc-unknown-aix -target-cpu pwr8 -ftls-model=local-dynamic -emit-llvm -o - | FileCheck %s -check-prefix=CHECK-LD4// RUN: %clang_cc1 %s -triple powerpc-unknown-aix -target-cpu pwr8 -ftls-model=initial-exec -emit-llvm -o - | FileCheck %s -check-prefix=CHECK-IE5// RUN: %clang_cc1 %s -triple powerpc-unknown-aix -target-cpu pwr8 -ftls-model=local-exec -emit-llvm -o - | FileCheck %s -check-prefix=CHECK-LE6// RUN: %clang_cc1 %s -triple powerpc64-unknown-aix -target-cpu pwr8 -emit-llvm -o - | FileCheck %s -check-prefix=CHECK-GD7// RUN: %clang_cc1 %s -triple powerpc64-unknown-aix -target-cpu pwr8 -ftls-model=global-dynamic -emit-llvm -o - | FileCheck %s -check-prefix=CHECK-GD8// RUN: %clang_cc1 %s -triple powerpc64-unknown-aix -target-cpu pwr8 -ftls-model=local-dynamic -emit-llvm -o - | FileCheck %s -check-prefix=CHECK-LD9// RUN: %clang_cc1 %s -triple powerpc64-unknown-aix -target-cpu pwr8 -ftls-model=initial-exec -emit-llvm -o - | FileCheck %s -check-prefix=CHECK-IE10// RUN: %clang_cc1 %s -triple powerpc64-unknown-aix -target-cpu pwr8 -ftls-model=local-exec -emit-llvm -o - | FileCheck %s -check-prefix=CHECK-LE11 12int z1 = 0;13int z2;14int __thread x;15int f() {16 static int __thread y;17 return y++;18}19 20// CHECK-GD: @z1 ={{.*}} global i32 021// CHECK-GD: @z2 ={{.*}} global i32 022// CHECK-GD: @x ={{.*}} thread_local global i32 023// CHECK-GD: @_ZZ1fvE1y = internal thread_local global i32 024// CHECK-LD: @z1 ={{.*}} global i32 025// CHECK-LD: @z2 ={{.*}} global i32 026// CHECK-LD: @x ={{.*}} thread_local(localdynamic) global i32 027// CHECK-LD: @_ZZ1fvE1y = internal thread_local(localdynamic) global i32 028// CHECK-IE: @z1 ={{.*}} global i32 029// CHECK-IE: @z2 ={{.*}} global i32 030// CHECK-IE: @x ={{.*}} thread_local(initialexec) global i32 031// CHECK-IE: @_ZZ1fvE1y = internal thread_local(initialexec) global i32 032// CHECK-LE: @z1 ={{.*}} global i32 033// CHECK-LE: @z2 ={{.*}} global i32 034// CHECK-LE: @x ={{.*}} thread_local(localexec) global i32 035// CHECK-LE: @_ZZ1fvE1y = internal thread_local(localexec) global i32 036