aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/external.c
diff options
context:
space:
mode:
authorFredrik Gustafsson <[email protected]>2013-07-11 14:39:25 +0200
committerFredrik Gustafsson <[email protected]>2013-07-11 14:39:25 +0200
commit193639fde33e135cc390f1df13076e5632fdd43c (patch)
treeff96600d3421002a8754875b9fd1d6b55a25f290 /erts/emulator/beam/external.c
parent15874f5848bb4686b1ab1986adc2e8c366492a4d (diff)
parent9e45648698862905561baa533831afd4dd23a02a (diff)
downloadotp-193639fde33e135cc390f1df13076e5632fdd43c.tar.gz
otp-193639fde33e135cc390f1df13076e5632fdd43c.tar.bz2
otp-193639fde33e135cc390f1df13076e5632fdd43c.zip
Merge branch 'jw/fix-float-middle-endian/OTP-11201' into maint
* jw/fix-float-middle-endian/OTP-11201: Fix binary construction on floating point middle-endian machines Fix binary matching on floating point middle-endian machines Fix erlang:phash2() on floating point middle-endian machines Fix external term format BIFs on floating point middle-endian machines
Diffstat (limited to 'erts/emulator/beam/external.c')
-rw-r--r--erts/emulator/beam/external.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/erts/emulator/beam/external.c b/erts/emulator/beam/external.c
index 249b1e0923..1c88765381 100644
--- a/erts/emulator/beam/external.c
+++ b/erts/emulator/beam/external.c
@@ -2325,7 +2325,7 @@ enc_term_int(Process *p,ErtsAtomCacheMap *acmp, Eterm obj, byte* ep, Uint32 dfla
GET_DOUBLE(obj, f);
if (dflags & DFLAG_NEW_FLOATS) {
*ep++ = NEW_FLOAT_EXT;
-#ifdef WORDS_BIGENDIAN
+#if defined(WORDS_BIGENDIAN) || defined(DOUBLE_MIDDLE_ENDIAN)
put_int32(f.fw[0], ep);
ep += 4;
put_int32(f.fw[1], ep);
@@ -2804,7 +2804,7 @@ dec_term_atom_common:
volatile unsigned long *fpexnp = erts_get_current_fp_exception();
#endif
-#ifdef WORDS_BIGENDIAN
+#if defined(WORDS_BIGENDIAN) || defined(DOUBLE_MIDDLE_ENDIAN)
ff.fw[0] = get_int32(ep);
ep += 4;
ff.fw[1] = get_int32(ep);