sim types.h: A workaround for macOS MODULECC
This commit is contained in:
parent
a863fa30f9
commit
123d882027
@ -44,7 +44,7 @@
|
||||
* Pre-processor Definitions
|
||||
****************************************************************************/
|
||||
|
||||
#if defined(CONFIG_HOST_MACOS)
|
||||
#if defined(__APPLE_CC__) || !defined(_LP64)
|
||||
# define _PRI64PREFIX "ll"
|
||||
# define _SCN64PREFIX "ll"
|
||||
# define INT64_C(x) x ## ll
|
||||
|
@ -75,9 +75,16 @@ typedef unsigned int _uint32_t;
|
||||
/* Note about host OS types:
|
||||
* - int64_t is long long for 64-bit macOS
|
||||
* - int64_t is long for Ubuntu x86-64
|
||||
*
|
||||
* Note for sim/macOS modules:
|
||||
* For sim/macOS, usually x86_64-elf-gcc from homebrew is used
|
||||
* as MODULECC. It seems to be configured as __INT64_TYPE__ == long int.
|
||||
* The __APPLE_CC__ check below is to workaround it.
|
||||
* (The host cc defines __APPLE_CC__, while x86_64-elf-gcc doesn't.)
|
||||
* XXX It is a problem if you need C++ symbols in symtabs for modules.
|
||||
*/
|
||||
|
||||
#if defined(CONFIG_HOST_MACOS) || !defined(_LP64)
|
||||
#if defined(__APPLE_CC__) || !defined(_LP64)
|
||||
typedef signed long long _int64_t;
|
||||
typedef unsigned long long _uint64_t;
|
||||
#else
|
||||
|
Loading…
Reference in New Issue
Block a user