diff options
author | Sverker Eriksson <[email protected]> | 2018-02-26 20:40:51 +0100 |
---|---|---|
committer | Sverker Eriksson <[email protected]> | 2018-03-02 19:16:48 +0100 |
commit | 7fb3ed7d2731050186eb5224fe8e6050e4909341 (patch) | |
tree | ad655e7b9c7d5480065d7cd1579307baa08fcac4 /erts/emulator/beam | |
parent | 2709c93ede0be977ac13543d0fabe8ff3c27f4cc (diff) | |
download | otp-7fb3ed7d2731050186eb5224fe8e6050e4909341.tar.gz otp-7fb3ed7d2731050186eb5224fe8e6050e4909341.tar.bz2 otp-7fb3ed7d2731050186eb5224fe8e6050e4909341.zip |
erts,kernel: Add dist_util:strict_order_flags/0
to replace DFLAGS_STRICT_ORDER_DELIVERY
and remove that compile time dependency.
Diffstat (limited to 'erts/emulator/beam')
-rw-r--r-- | erts/emulator/beam/dist.c | 12 | ||||
-rw-r--r-- | erts/emulator/beam/dist.h | 2 |
2 files changed, 9 insertions, 5 deletions
diff --git a/erts/emulator/beam/dist.c b/erts/emulator/beam/dist.c index 6f122273dc..c08a8ec832 100644 --- a/erts/emulator/beam/dist.c +++ b/erts/emulator/beam/dist.c @@ -644,7 +644,8 @@ trap_function(Eterm func, int arity) /* * Sync with dist_util.erl: * - * -record(erts_dflags, {default, mandatory, addable, rejectable}). + * -record(erts_dflags, + * {default, mandatory, addable, rejectable, strict_order}). */ static Eterm erts_dflags_record; @@ -665,13 +666,14 @@ void init_dist(void) am_dist_ctrl_put_data, 2); { - Eterm* hp = erts_alloc(ERTS_ALC_T_LITERAL, (1+5)*sizeof(Eterm)); - erts_dflags_record = TUPLE5(hp, am_erts_dflags, + Eterm* hp = erts_alloc(ERTS_ALC_T_LITERAL, (1+6)*sizeof(Eterm)); + erts_dflags_record = TUPLE6(hp, am_erts_dflags, make_small(DFLAG_DIST_DEFAULT), make_small(DFLAG_DIST_MANDATORY), make_small(DFLAG_DIST_ADDABLE), - make_small(DFLAG_DIST_REJECTABLE)); - erts_set_literal_tag(&erts_dflags_record, hp, (1+5)); + make_small(DFLAG_DIST_REJECTABLE), + make_small(DFLAG_DIST_STRICT_ORDER)); + erts_set_literal_tag(&erts_dflags_record, hp, (1+6)); } } diff --git a/erts/emulator/beam/dist.h b/erts/emulator/beam/dist.h index 202457bb3b..e8dcdb669d 100644 --- a/erts/emulator/beam/dist.h +++ b/erts/emulator/beam/dist.h @@ -84,6 +84,8 @@ | DFLAG_HIDDEN_ATOM_CACHE \ | DFLAG_ATOM_CACHE) +/* Flags for all features needing strict order delivery */ +#define DFLAG_DIST_STRICT_ORDER DFLAG_DIST_HDR_ATOM_CACHE /* All flags that should be enabled when term_to_binary/1 is used. */ #define TERM_TO_BINARY_DFLAGS (DFLAG_EXTENDED_REFERENCES \ |