Skip to content

Commit

Permalink
Generalize target.h to support more targets automatically.
Browse files Browse the repository at this point in the history
  • Loading branch information
briansmith committed May 28, 2024
1 parent 0bbf293 commit ed5b2a8
Showing 1 changed file with 4 additions and 17 deletions.
21 changes: 4 additions & 17 deletions include/ring-core/target.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,6 @@
#elif defined(__ARMEL__) || defined(_M_ARM)
#define OPENSSL_32_BIT
#define OPENSSL_ARM
#elif defined(__loongarch_lp64)
#define OPENSSL_64_BIT
#elif defined(__riscv) && __SIZEOF_POINTER__ == 8
#define OPENSSL_64_BIT
#elif defined(__wasm__)
#define OPENSSL_32_BIT
// All of following architectures are only supported when `__BYTE_ORDER__` can be used to detect
// endianness (in crypto/internal.h).
#elif !defined(__BYTE_ORDER__)
Expand All @@ -48,20 +42,13 @@
#elif !(defined(__ORDER_LITTLE_ENDIAN__) && (__BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__)) && \
!(defined(__ORDER_BIG_ENDIAN__) && (__BYTE_ORDER__ == __ORDER_BIG_ENDIAN__))
#error "Unsupported endianness"
#elif defined(__MIPSEL__) && !defined(__LP64__)
#define OPENSSL_32_BIT
#elif defined(__MIPSEL__) && defined(__LP64__)
#elif defined(__LP64__)
#define OPENSSL_64_BIT
#elif defined(__MIPSEB__) && !defined(__LP64__)
#elif defined(__ILP32__)
#define OPENSSL_32_BIT
#elif defined(__PPC64__) || defined(__powerpc64__)
#define OPENSSL_64_BIT
#elif (defined(__PPC__) || defined(__powerpc__)) && defined(_BIG_ENDIAN)
// Versions of GCC before 10.0 didn't define `__ILP32__` for all 32-bit targets.
#elif defined(__MIPSEL__) || defined(__MIPSEB__) || defined(__PPC__) || defined(__powerpc__)
#define OPENSSL_32_BIT
#elif defined(__s390x__)
#define OPENSSL_64_BIT
#elif defined(__sparc_v9__) && defined(__LP64__)
#define OPENSSL_64_BIT
#else
#error "Unknown target CPU"
#endif
Expand Down

0 comments on commit ed5b2a8

Please sign in to comment.