aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/erl_bif_lists.c
diff options
context:
space:
mode:
authorSverker Eriksson <[email protected]>2015-03-30 21:45:42 +0200
committerSverker Eriksson <[email protected]>2015-03-30 21:45:42 +0200
commit450e5b610ac2de4817606c2966d9fb5a9850887a (patch)
treec4b53ab33c91a0da50f1f44248a6e15132a128dd /erts/emulator/beam/erl_bif_lists.c
parente4da94bee94bdd7e0dbb2e5021ab4cc5f89f8256 (diff)
downloadotp-450e5b610ac2de4817606c2966d9fb5a9850887a.tar.gz
otp-450e5b610ac2de4817606c2966d9fb5a9850887a.tar.bz2
otp-450e5b610ac2de4817606c2966d9fb5a9850887a.zip
erts: Optimize == and /= for unequal big maps
Bail out as soon as we find a diff between maps if we are not interested in term order.
Diffstat (limited to 'erts/emulator/beam/erl_bif_lists.c')
-rw-r--r--erts/emulator/beam/erl_bif_lists.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/erts/emulator/beam/erl_bif_lists.c b/erts/emulator/beam/erl_bif_lists.c
index 820ed2385d..e006d57124 100644
--- a/erts/emulator/beam/erl_bif_lists.c
+++ b/erts/emulator/beam/erl_bif_lists.c
@@ -390,7 +390,7 @@ keyfind(int Bif, Process* p, Eterm Key, Eterm Pos, Eterm List)
Eterm *tuple_ptr = tuple_val(term);
if (pos <= arityval(*tuple_ptr)) {
Eterm element = tuple_ptr[pos];
- if (CMP(Key, element) == 0) {
+ if (CMP_EQ(Key, element)) {
return term;
}
}