diff options
author | John Högberg <john@erlang.org> | 2022-02-07 23:05:19 +0100 |
---|---|---|
committer | John Högberg <john@erlang.org> | 2022-02-17 12:50:43 +0100 |
commit | 48643c2ee9c9d74b2e642dbd6d6802fda502e370 (patch) | |
tree | 3da6eb2b02d1a18c98cab9a51a3c4e0944308413 /erts/emulator/beam/jit/arm/beam_asm.hpp | |
parent | df9d0cb725f83b498bd620555f62962b9c0f1df5 (diff) | |
download | erlang-48643c2ee9c9d74b2e642dbd6d6802fda502e370.tar.gz |
jit: Optimize map lookups
Diffstat (limited to 'erts/emulator/beam/jit/arm/beam_asm.hpp')
-rw-r--r-- | erts/emulator/beam/jit/arm/beam_asm.hpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/erts/emulator/beam/jit/arm/beam_asm.hpp b/erts/emulator/beam/jit/arm/beam_asm.hpp index a29f6953a9..4a1125d998 100644 --- a/erts/emulator/beam/jit/arm/beam_asm.hpp +++ b/erts/emulator/beam/jit/arm/beam_asm.hpp @@ -879,6 +879,8 @@ class BeamGlobalAssembler : public BeamAssembler { _(i_breakpoint_trampoline_shared) \ _(i_bsr_body_shared) \ _(i_bsl_body_shared) \ + _(i_get_map_element_shared) \ + _(i_get_map_element_hash_shared) \ _(i_func_info_shared) \ _(i_length_guard_shared) \ _(i_length_body_shared) \ @@ -888,6 +890,7 @@ class BeamGlobalAssembler : public BeamAssembler { _(i_bxor_body_shared) \ _(int_div_rem_body_shared) \ _(int_div_rem_guard_shared) \ + _(internal_hash_helper) \ _(minus_body_shared) \ _(new_map_shared) \ _(update_map_assoc_shared) \ @@ -938,6 +941,9 @@ class BeamGlobalAssembler : public BeamAssembler { void emit_bif_element_helper(Label fail); void emit_bif_tuple_size_helper(Label fail); + void emit_flatmap_get_element(); + void emit_hashmap_get_element(); + public: BeamGlobalAssembler(JitAllocator *allocator); |