2014-10-03 08:31:35 +08:00
|
|
|
/*===---- __stddef_max_align_t.h - Definition of max_align_t for modules ---===
|
|
|
|
*
|
2019-04-09 04:51:30 +08:00
|
|
|
* Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
|
|
* See https://llvm.org/LICENSE.txt for license information.
|
|
|
|
* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
2014-10-03 08:31:35 +08:00
|
|
|
*
|
|
|
|
*===-----------------------------------------------------------------------===
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef __CLANG_MAX_ALIGN_T_DEFINED
|
|
|
|
#define __CLANG_MAX_ALIGN_T_DEFINED
|
|
|
|
|
2015-02-24 09:06:22 +08:00
|
|
|
#if defined(_MSC_VER)
|
|
|
|
typedef double max_align_t;
|
|
|
|
#elif defined(__APPLE__)
|
|
|
|
typedef long double max_align_t;
|
|
|
|
#else
|
|
|
|
// Define 'max_align_t' to match the GCC definition.
|
2014-10-03 08:31:35 +08:00
|
|
|
typedef struct {
|
|
|
|
long long __clang_max_align_nonce1
|
|
|
|
__attribute__((__aligned__(__alignof__(long long))));
|
|
|
|
long double __clang_max_align_nonce2
|
|
|
|
__attribute__((__aligned__(__alignof__(long double))));
|
|
|
|
} max_align_t;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif
|