diff options
author | Bruno Haible <bruno@clisp.org> | 2007-02-25 01:57:58 +0000 |
---|---|---|
committer | Bruno Haible <bruno@clisp.org> | 2007-02-25 01:57:58 +0000 |
commit | ce30cc7716b6d57bcfd7fe2f7485baa0df99b091 (patch) | |
tree | 8933b53e1bb6fcd65d7be42112e8ceb9061aa680 /m4/isnan.m4 | |
parent | 8ef21c84cb967cac464a1b4adf78828971eac188 (diff) | |
download | gnulib-ce30cc7716b6d57bcfd7fe2f7485baa0df99b091.tar.gz |
Correct handling of ARM when cross-compiling.
Diffstat (limited to 'm4/isnan.m4')
-rw-r--r-- | m4/isnan.m4 | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/m4/isnan.m4 b/m4/isnan.m4 index f065a5010a..5bb133d0dc 100644 --- a/m4/isnan.m4 +++ b/m4/isnan.m4 @@ -92,14 +92,17 @@ int main () [gl_cv_cc_double_expbit0=`cat conftest.out`], [gl_cv_cc_double_expbit0="unknown"], [ - dnl On ARM, integer types are stored in little-endian byte order, - dnl but floats are stored in big-endian word order. + dnl On ARM, there are two 'double' floating-point formats, used by + dnl different sets of instructions: The older FPA instructions assume + dnl that they are stored in big-endian word order, while the words + dnl (like integer types) are stored in little-endian byte order. + dnl The newer VFP instructions assume little-endian order consistenly. AC_EGREP_CPP([mixed_endianness], [ #if defined arm || defined __arm || defined __arm__ mixed_endianness #endif ], - [gl_cv_cc_double_expbit0="word 0 bit 20"], + [gl_cv_cc_double_expbit0="unknown"], [ AC_C_BIGENDIAN( [gl_cv_cc_double_expbit0="word 0 bit 20"], |