diff options
author | Sverker Eriksson <[email protected]> | 2018-05-04 20:13:29 +0200 |
---|---|---|
committer | Sverker Eriksson <[email protected]> | 2018-05-08 14:38:43 +0200 |
commit | 0657a616adc74bf71342053539c807031fa9d162 (patch) | |
tree | ffbd81852f7a60a267d1a2fdc6524d85e7f03371 /erts/emulator/beam/erl_db_hash.h | |
parent | 7c7c10014f8c77f66a805def5ac52bb06402aeb4 (diff) | |
download | otp-0657a616adc74bf71342053539c807031fa9d162.tar.gz otp-0657a616adc74bf71342053539c807031fa9d162.tar.bz2 otp-0657a616adc74bf71342053539c807031fa9d162.zip |
erts: Optimize ets delete all in fixed table
by only allocating one FixedDeletion with the new "all" flag
instead of one FixedDeletion per slot.
Diffstat (limited to 'erts/emulator/beam/erl_db_hash.h')
-rw-r--r-- | erts/emulator/beam/erl_db_hash.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/erts/emulator/beam/erl_db_hash.h b/erts/emulator/beam/erl_db_hash.h index 127512e1fe..d48343378d 100644 --- a/erts/emulator/beam/erl_db_hash.h +++ b/erts/emulator/beam/erl_db_hash.h @@ -24,7 +24,8 @@ #include "erl_db_util.h" /* DbTerm & DbTableCommon */ typedef struct fixed_deletion { - int slot; + UWord slot : sizeof(UWord)*8 - 1; + UWord all : 1; struct fixed_deletion *next; } FixedDeletion; |