diff options
author | Eddie Hung <eddie@fpgeh.com> | 2019-06-14 12:40:51 -0700 |
---|---|---|
committer | Eddie Hung <eddie@fpgeh.com> | 2019-06-14 12:40:51 -0700 |
commit | 7876b5b8bef1ff8460e48232e68bb5136f04e7b5 (patch) | |
tree | c8ee8551e6a9f50e8bad1cac6f1d75233987abd1 /frontends/aiger | |
parent | a632799d5b3e4d458f256203678e546474425556 (diff) | |
download | yosys-7876b5b8bef1ff8460e48232e68bb5136f04e7b5.tar.gz yosys-7876b5b8bef1ff8460e48232e68bb5136f04e7b5.tar.bz2 yosys-7876b5b8bef1ff8460e48232e68bb5136f04e7b5.zip |
Cover __APPLE__ too for little to big endian
Diffstat (limited to 'frontends/aiger')
-rw-r--r-- | frontends/aiger/aigerparse.cc | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/frontends/aiger/aigerparse.cc b/frontends/aiger/aigerparse.cc index 7d156fe03..d378a07b7 100644 --- a/frontends/aiger/aigerparse.cc +++ b/frontends/aiger/aigerparse.cc @@ -24,7 +24,14 @@ #ifdef _WIN32 #include <libgen.h> +#endif +// https://stackoverflow.com/a/46137633 +#ifdef _MSC_VER #include <stdlib.h> +#define __builtin_bswap32 _byteswap_ulong +#elif defined(__APPLE__) +#include <libkern/OSByteOrder.h> +#define __builtin_bswap32 OSSwapInt32 #endif #include <inttypes.h> @@ -37,11 +44,7 @@ YOSYS_NAMESPACE_BEGIN inline int32_t from_big_endian(int32_t i32) { #if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ -#ifdef _WIN32 - return _byteswap_ulong(i32); -#else return __builtin_bswap32(i32); -#endif #elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ return i32; #else |