diff options
| author | Dan Gohman <dan433584@gmail.com> | 2015-09-14 21:56:37 +0000 |
|---|---|---|
| committer | Dan Gohman <dan433584@gmail.com> | 2015-09-14 21:56:37 +0000 |
| commit | f1c34e6731ce472598c9096efad666af90d1eeba (patch) | |
| tree | 7f13388cc59b2ae6ae761aa21f1d7598b94960ca /clang/test/Preprocessor | |
| parent | 15707de865ccf66e68646af54706849a8ec5dd12 (diff) | |
| download | bcm5719-llvm-f1c34e6731ce472598c9096efad666af90d1eeba.tar.gz bcm5719-llvm-f1c34e6731ce472598c9096efad666af90d1eeba.zip | |
[WebAssembly] Define the atomic type sizes
WebAssembly's spec has now been updated to specify some guarantees
about lock free atomic accesses. Update clang to match.
This also updates sig_atomic_t to be 64-bit on wasm64. WebAssembly
does not presently have asynchronous interrupts, but this change is
within the spirit of how they will work if they are added.
Differential Revision: http://reviews.llvm.org/D12862
llvm-svn: 247624
Diffstat (limited to 'clang/test/Preprocessor')
| -rw-r--r-- | clang/test/Preprocessor/init.c | 44 |
1 files changed, 22 insertions, 22 deletions
diff --git a/clang/test/Preprocessor/init.c b/clang/test/Preprocessor/init.c index 615dd1ca957..bb5de5484d9 100644 --- a/clang/test/Preprocessor/init.c +++ b/clang/test/Preprocessor/init.c @@ -8472,17 +8472,17 @@ // WEBASSEMBLY32-NEXT:#define __FLT_MIN_EXP__ (-125){{$}} // WEBASSEMBLY32-NEXT:#define __FLT_MIN__ 1.17549435e-38F{{$}} // WEBASSEMBLY32-NEXT:#define __FLT_RADIX__ 2{{$}} -// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 1{{$}} -// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1{{$}} -// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1{{$}} -// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 1{{$}} -// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 1{{$}} +// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2{{$}} +// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2{{$}} +// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2{{$}} +// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2{{$}} +// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2{{$}} // WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1{{$}} -// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 1{{$}} -// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 1{{$}} -// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 1{{$}} +// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2{{$}} +// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2{{$}} +// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2{{$}} // WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1{{$}} -// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1{{$}} +// WEBASSEMBLY32-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2{{$}} // WEBASSEMBLY32-NEXT:#define __GNUC_MINOR__ {{.}} // WEBASSEMBLY32-NEXT:#define __GNUC_PATCHLEVEL__ {{.}} // WEBASSEMBLY32-NEXT:#define __GNUC_STDC_INLINE__ 1{{$}} @@ -8586,7 +8586,7 @@ // WEBASSEMBLY32-NOT:#define __REGISTER_PREFIX__ // WEBASSEMBLY32-NEXT:#define __SCHAR_MAX__ 127{{$}} // WEBASSEMBLY32-NEXT:#define __SHRT_MAX__ 32767{{$}} -// WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_MAX__ 2147483647{{$}} +// WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_MAX__ 2147483647L{{$}} // WEBASSEMBLY32-NEXT:#define __SIG_ATOMIC_WIDTH__ 32{{$}} // WEBASSEMBLY32-NEXT:#define __SIZEOF_DOUBLE__ 8{{$}} // WEBASSEMBLY32-NEXT:#define __SIZEOF_FLOAT__ 4{{$}} @@ -8788,17 +8788,17 @@ // WEBASSEMBLY64-NEXT:#define __FLT_MIN_EXP__ (-125){{$}} // WEBASSEMBLY64-NEXT:#define __FLT_MIN__ 1.17549435e-38F{{$}} // WEBASSEMBLY64-NEXT:#define __FLT_RADIX__ 2{{$}} -// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 1{{$}} -// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 1{{$}} -// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 1{{$}} -// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 1{{$}} -// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 1{{$}} -// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 1{{$}} -// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 1{{$}} -// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 1{{$}} -// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 1{{$}} +// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_BOOL_LOCK_FREE 2{{$}} +// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2{{$}} +// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2{{$}} +// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_CHAR_LOCK_FREE 2{{$}} +// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_INT_LOCK_FREE 2{{$}} +// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_LLONG_LOCK_FREE 2{{$}} +// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_LONG_LOCK_FREE 2{{$}} +// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_POINTER_LOCK_FREE 2{{$}} +// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_SHORT_LOCK_FREE 2{{$}} // WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1{{$}} -// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 1{{$}} +// WEBASSEMBLY64-NEXT:#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2{{$}} // WEBASSEMBLY64-NEXT:#define __GNUC_MINOR__ {{.}} // WEBASSEMBLY64-NEXT:#define __GNUC_PATCHLEVEL__ {{.}} // WEBASSEMBLY64-NEXT:#define __GNUC_STDC_INLINE__ 1{{$}} @@ -8902,8 +8902,8 @@ // WEBASSEMBLY64-NOT:#define __REGISTER_PREFIX__ // WEBASSEMBLY64-NEXT:#define __SCHAR_MAX__ 127{{$}} // WEBASSEMBLY64-NEXT:#define __SHRT_MAX__ 32767{{$}} -// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_MAX__ 2147483647{{$}} -// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_WIDTH__ 32{{$}} +// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_MAX__ 9223372036854775807L{{$}} +// WEBASSEMBLY64-NEXT:#define __SIG_ATOMIC_WIDTH__ 64{{$}} // WEBASSEMBLY64-NEXT:#define __SIZEOF_DOUBLE__ 8{{$}} // WEBASSEMBLY64-NEXT:#define __SIZEOF_FLOAT__ 4{{$}} // WEBASSEMBLY64-NEXT:#define __SIZEOF_INT128__ 16{{$}} |

