mpconfig.h: Add basic support for target endianness configuration.

A specific target can define either MP_ENDIANNESS_LITTLE or MP_ENDIANNESS_BIG
to 1. Default is MP_ENDIANNESS_LITTLE.

TODO: Autodetect based on compiler predefined macros?
This commit is contained in:
Paul Sokolovsky 2014-04-11 03:44:00 +03:00
parent 6582d64d01
commit 2da81fa80c
1 changed files with 5 additions and 0 deletions

View File

@ -169,6 +169,11 @@ typedef double mp_float_t;
// machine_int_t value with most significant bit set
#define WORD_MSBIT_HIGH (((machine_uint_t)1) << (BYTES_PER_WORD * 8 - 1))
#if !defined(MP_ENDIANNESS_LITTLE) && !defined(MP_ENDIANNESS_BIG)
// Just because most archs are such?
#define MP_ENDIANNESS_LITTLE (1)
#endif
// printf format spec to use for machine_int_t and friends
#ifndef INT_FMT
#ifdef __LP64__