1 // RUN: %clang_cc1 -Werror -triple powerpc-unknown-unknown -emit-llvm -o - %s | \ 2 // RUN: FileCheck %s --check-prefixes=PPC,PPC32 3 // RUN: %clang_cc1 -Werror -triple powerpc64le-unknown-linux -emit-llvm -o - %s | \ 4 // RUN: FileCheck %s --check-prefixes=PPC,PPC64 5 // RUN: %clang_cc1 -Werror -triple powerpc64le-unknown-linux -emit-llvm -o - %s \ 6 // RUN: -target-cpu pwr8 | FileCheck %s --check-prefixes=PPC,PPC64 7 // RUN: %clang_cc1 -Werror -triple powerpc64-unknown-aix -emit-llvm -o - %s | \ 8 // RUN: FileCheck %s --check-prefixes=PPC,AIX64 9 // RUN: %clang_cc1 -Werror -triple powerpc64-unknown-aix -emit-llvm -o - %s \ 10 // RUN: -target-cpu pwr8 | FileCheck %s --check-prefixes=PPC,AIX64 11 12 // PPC: @c = global i8 0, align 1{{$}} 13 _Atomic(char) c; 14 15 // PPC: @s = global i16 0, align 2{{$}} 16 _Atomic(short) s; 17 18 // PPC: @i = global i32 0, align 4{{$}} 19 _Atomic(int) i; 20 21 // PPC32: @l = global i32 0, align 4{{$}} 22 // PPC64: @l = global i64 0, align 8{{$}} 23 // AIX64: @l = global i64 0, align 8{{$}} 24 _Atomic(long) l; 25 26 // PPC: @ll = global i64 0, align 8{{$}} 27 _Atomic(long long) ll; 28 29 typedef struct { 30 char x[8]; 31 } O; 32 33 // PPC32: @o = global %struct.O zeroinitializer, align 1{{$}} 34 // PPC64: @o = global %struct.O zeroinitializer, align 8{{$}} 35 // AIX64: @o = global %struct.O zeroinitializer, align 8{{$}} 36 _Atomic(O) o; 37 38 typedef struct { 39 char x[16]; 40 } Q; 41 42 // PPC32: @q = global %struct.Q zeroinitializer, align 1{{$}} 43 // PPC64: @q = global %struct.Q zeroinitializer, align 16{{$}} 44 // AIX64: @q = global %struct.Q zeroinitializer, align 16{{$}} 45 _Atomic(Q) q; 46