|
|
@@ -30,40 +30,40 @@ |
|
|
|
#endif |
|
|
|
|
|
|
|
#if (WORD_BITS == 64) |
|
|
|
typedef uint32_t hword_t; |
|
|
|
typedef uint64_t word_t; |
|
|
|
typedef __uint128_t dword_t; |
|
|
|
typedef int32_t hsword_t; |
|
|
|
typedef int64_t sword_t; |
|
|
|
typedef __int128_t dsword_t; |
|
|
|
#define PRIxWORD PRIx64 |
|
|
|
#define PRIxWORDfull "%016" PRIx64 |
|
|
|
#define PRIxWORD56 "%014" PRIx64 |
|
|
|
#define PRIxWORD60 "%015" PRIx60 |
|
|
|
#define U64LE(x) x##ull |
|
|
|
#define U58LE(x) x##ull |
|
|
|
#define U56LE(x) x##ull |
|
|
|
#define U60LE(x) x##ull |
|
|
|
#define letohWORD letoh64 |
|
|
|
#define GOLDI_BITS 64 |
|
|
|
#define SC_LIMB(x) (x##ull) |
|
|
|
typedef uint32_t hword_t; |
|
|
|
typedef uint64_t word_t; |
|
|
|
typedef __uint128_t dword_t; |
|
|
|
typedef int32_t hsword_t; |
|
|
|
typedef int64_t sword_t; |
|
|
|
typedef __int128_t dsword_t; |
|
|
|
|
|
|
|
#define PRIxWORD PRIx64 |
|
|
|
#define PRIxWORDfull "%016" PRIx64 |
|
|
|
#define PRIxWORD56 "%014" PRIx64 |
|
|
|
#define PRIxWORD60 "%015" PRIx60 |
|
|
|
#define U64LE(x) x##ull |
|
|
|
#define U58LE(x) x##ull |
|
|
|
#define U56LE(x) x##ull |
|
|
|
#define U60LE(x) x##ull |
|
|
|
#define letohWORD letoh64 |
|
|
|
#define SC_LIMB(x) (x##ull) |
|
|
|
#elif (WORD_BITS == 32) |
|
|
|
typedef uint16_t hword_t; |
|
|
|
typedef uint32_t word_t; |
|
|
|
typedef uint64_t dword_t; |
|
|
|
typedef int16_t hsword_t; |
|
|
|
typedef int32_t sword_t; |
|
|
|
typedef int64_t dsword_t; |
|
|
|
#define PRIxWORD PRIx32 |
|
|
|
#define PRIxWORDfull "%08" PRIx32 |
|
|
|
#define PRIxWORD56 "%07" PRIx32 |
|
|
|
#define U64LE(x) (x##ull)&((1ull<<32)-1), (x##ull)>>32 |
|
|
|
#define U58LE(x) (x##ull)&((1ull<<29)-1), (x##ull)>>29 |
|
|
|
#define U56LE(x) (x##ull)&((1ull<<28)-1), (x##ull)>>28 |
|
|
|
#define U60LE(x) (x##ull)&((1ull<<30)-1), (x##ull)>>30 |
|
|
|
#define letohWORD letoh32 |
|
|
|
#define GOLDI_BITS 32 |
|
|
|
#define SC_LIMB(x) (x##ull) |
|
|
|
typedef uint16_t hword_t; |
|
|
|
typedef uint32_t word_t; |
|
|
|
typedef uint64_t dword_t; |
|
|
|
typedef int16_t hsword_t; |
|
|
|
typedef int32_t sword_t; |
|
|
|
typedef int64_t dsword_t; |
|
|
|
|
|
|
|
#define PRIxWORD PRIx32 |
|
|
|
#define PRIxWORDfull "%08" PRIx32 |
|
|
|
#define PRIxWORD56 "%07" PRIx32 |
|
|
|
#define U64LE(x) (x##ull)&((1ull<<32)-1), (x##ull)>>32 |
|
|
|
#define U58LE(x) (x##ull)&((1ull<<29)-1), (x##ull)>>29 |
|
|
|
#define U56LE(x) (x##ull)&((1ull<<28)-1), (x##ull)>>28 |
|
|
|
#define U60LE(x) (x##ull)&((1ull<<30)-1), (x##ull)>>30 |
|
|
|
#define letohWORD letoh32 |
|
|
|
#define SC_LIMB(x) (x##ull) |
|
|
|
#else |
|
|
|
#error "For now, libdecaf only supports 32- and 64-bit architectures." |
|
|
|
#endif |
|
|
|