aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/external.c
diff options
context:
space:
mode:
authorLukas Larsson <[email protected]>2014-02-24 17:19:19 +0100
committerLukas Larsson <[email protected]>2014-02-24 17:19:19 +0100
commited5cb316a0a1bbc30f90e7bac27efed3818d4a16 (patch)
treea7242471f60a0f343e9839504b12212e71018193 /erts/emulator/beam/external.c
parent60b771c936b3d5c1bf3f8c223f789e5fc639dbab (diff)
parenta3af5f4a5c4568225ef91ee4493da6bf659f7161 (diff)
downloadotp-ed5cb316a0a1bbc30f90e7bac27efed3818d4a16.tar.gz
otp-ed5cb316a0a1bbc30f90e7bac27efed3818d4a16.tar.bz2
otp-ed5cb316a0a1bbc30f90e7bac27efed3818d4a16.zip
Merge branch 'lukas/erts/float_encoding/OTP-11738'
* lukas/erts/float_encoding/OTP-11738: erts: Set default external enc to use new float scheme
Diffstat (limited to 'erts/emulator/beam/external.c')
-rw-r--r--erts/emulator/beam/external.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/erts/emulator/beam/external.c b/erts/emulator/beam/external.c
index 9fb2dbd8bf..b8e6b3b072 100644
--- a/erts/emulator/beam/external.c
+++ b/erts/emulator/beam/external.c
@@ -529,7 +529,7 @@ Uint erts_encode_ext_size(Eterm term)
Uint erts_encode_ext_size_2(Eterm term, unsigned dflags)
{
- return encode_size_struct2(NULL, term, TERM_TO_BINARY_DFLAGS|dflags)
+ return encode_size_struct2(NULL, term, dflags)
+ 1 /* VERSION_MAGIC */;
}
@@ -1099,10 +1099,10 @@ BIF_RETTYPE term_to_binary_2(BIF_ALIST_2)
if (tp[1] == am_minor_version && is_small(tp[2])) {
switch (signed_val(tp[2])) {
case 0:
- flags = TERM_TO_BINARY_DFLAGS;
+ flags = TERM_TO_BINARY_DFLAGS & ~DFLAG_NEW_FLOATS;
break;
case 1:
- flags = TERM_TO_BINARY_DFLAGS|DFLAG_NEW_FLOATS;
+ flags = TERM_TO_BINARY_DFLAGS;
break;
default:
goto error;
@@ -1605,9 +1605,9 @@ external_size_2(BIF_ALIST_2)
if (tp[1] == am_minor_version && is_small(tp[2])) {
switch (signed_val(tp[2])) {
case 0:
+ flags &= ~DFLAG_NEW_FLOATS;
break;
case 1:
- flags |= DFLAG_NEW_FLOATS;
break;
default:
goto error;