diff options
author | Sverker Eriksson <sverker@erlang.org> | 2023-04-03 20:00:25 +0200 |
---|---|---|
committer | Sverker Eriksson <sverker@erlang.org> | 2023-04-26 18:22:20 +0200 |
commit | 2912a1899deaaa032f128bda11b8277f59b1930e (patch) | |
tree | f6c9c4426ed991733e27338c978bc5b89ec02d12 | |
parent | 7564cebb068d68d2bc0f241f84e94b993b2a8fdd (diff) | |
download | erlang-2912a1899deaaa032f128bda11b8277f59b1930e.tar.gz |
erts: Fix/optimize macro arityval
Macro 'arityval' asserts tuple header in debug.
No point calling macro '_unchecked_header_arity'
which also allows map headers.
-rw-r--r-- | erts/emulator/beam/erl_term.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/erts/emulator/beam/erl_term.h b/erts/emulator/beam/erl_term.h index 490fe1f1d1..c23876aa5d 100644 --- a/erts/emulator/beam/erl_term.h +++ b/erts/emulator/beam/erl_term.h @@ -319,7 +319,7 @@ _ET_DECLARE_CHECKED(Uint,header_arity,Eterm) #define is_sane_arity_value(x) ((((x) & _TAG_HEADER_MASK) == _TAG_HEADER_ARITYVAL) && \ (((x) >> _HEADER_ARITY_OFFS) <= MAX_ARITYVAL)) #define is_not_arity_value(x) (!is_arity_value((x))) -#define _unchecked_arityval(x) _unchecked_header_arity((x)) +#define _unchecked_arityval(x) ((x) >> _HEADER_ARITY_OFFS) _ET_DECLARE_CHECKED(Uint,arityval,Eterm) #define arityval(x) _ET_APPLY(arityval,(x)) |