diff options
| author | Sunil Srivastava <sunil_srivastava@playstation.sony.com> | 2016-01-28 21:36:31 +0000 |
|---|---|---|
| committer | Sunil Srivastava <sunil_srivastava@playstation.sony.com> | 2016-01-28 21:36:31 +0000 |
| commit | e7f0058c39f7e066b9e3fefbd9294d985709321b (patch) | |
| tree | 30b444b6c5f1636c66f0543e4d71084541c1e617 /clang | |
| parent | 20de54bc94fa0986bb543af517fdb6b3934452d5 (diff) | |
| download | bcm5719-llvm-e7f0058c39f7e066b9e3fefbd9294d985709321b.tar.gz bcm5719-llvm-e7f0058c39f7e066b9e3fefbd9294d985709321b.zip | |
Implementation of PS4 ABI, Round 1
Added a test to safeguard linux ABI.
Differential Revision: http://reviews.llvm.org/D16607
llvm-svn: 259095
Diffstat (limited to 'clang')
| -rw-r--r-- | clang/test/Sema/bitfield-layout.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/clang/test/Sema/bitfield-layout.c b/clang/test/Sema/bitfield-layout.c index b96b3868641..3affa21a365 100644 --- a/clang/test/Sema/bitfield-layout.c +++ b/clang/test/Sema/bitfield-layout.c @@ -1,6 +1,7 @@ // RUN: %clang_cc1 %s -fsyntax-only -verify -triple=i686-apple-darwin9 // RUN: %clang_cc1 %s -fsyntax-only -verify -triple=arm-linux-gnueabihf // RUN: %clang_cc1 %s -fsyntax-only -verify -triple=aarch64-linux-gnu +// RUN: %clang_cc1 %s -fsyntax-only -verify -triple=x86_64-pc-linux-gnu // expected-no-diagnostics #include <stddef.h> @@ -190,7 +191,7 @@ struct g11 { __attribute__((aligned(1))) long long b : 62; char c; }; -#if defined(__arm__) || defined(__aarch64__) +#if defined(__arm__) || defined(__aarch64__) || defined(__x86_64__) CHECK_SIZE(struct, g11, 24); CHECK_ALIGN(struct, g11, 8); CHECK_OFFSET(struct, g11, c, 16); @@ -218,6 +219,10 @@ struct g13 { CHECK_SIZE(struct, g13, 16); CHECK_ALIGN(struct, g13, 8); CHECK_OFFSET(struct, g13, c, 8); +#elif (__x86_64__) +CHECK_SIZE(struct, g13, 9); +CHECK_ALIGN(struct, g13, 1); +CHECK_OFFSET(struct, g13, c, 8); #else CHECK_SIZE(struct, g13, 5); CHECK_ALIGN(struct, g13, 1); @@ -233,6 +238,10 @@ struct __attribute__((packed)) g14 { CHECK_SIZE(struct, g14, 16); CHECK_ALIGN(struct, g14, 8); CHECK_OFFSET(struct, g14, c, 8); +#elif (__x86_64__) +CHECK_SIZE(struct, g14, 9); +CHECK_ALIGN(struct, g14, 1); +CHECK_OFFSET(struct, g14, c, 8); #else CHECK_SIZE(struct, g14, 5); CHECK_ALIGN(struct, g14, 1); |

