diff options
author | Björn-Egil Dahlberg <[email protected]> | 2015-12-02 13:17:28 +0100 |
---|---|---|
committer | Björn-Egil Dahlberg <[email protected]> | 2015-12-07 16:27:52 +0100 |
commit | c97f3332aeddf039ee2207196229b9ff07047c72 (patch) | |
tree | c41468e4ee7b98a1abd1c1bc92460f14affb62cc /erts/emulator/beam/beam_emu.c | |
parent | f67a7375e19734c3f7d6947b0dcf608d0fe1c8fa (diff) | |
download | otp-c97f3332aeddf039ee2207196229b9ff07047c72.tar.gz otp-c97f3332aeddf039ee2207196229b9ff07047c72.tar.bz2 otp-c97f3332aeddf039ee2207196229b9ff07047c72.zip |
erts: Add i_get_hash instruction
Calculate hashvalue in load-time for constant process dictionary gets.
Diffstat (limited to 'erts/emulator/beam/beam_emu.c')
-rw-r--r-- | erts/emulator/beam/beam_emu.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/erts/emulator/beam/beam_emu.c b/erts/emulator/beam/beam_emu.c index 38def5d89f..d39cd9d8ea 100644 --- a/erts/emulator/beam/beam_emu.c +++ b/erts/emulator/beam/beam_emu.c @@ -3735,6 +3735,16 @@ do { \ StoreBifResult(1, result); } + OpCase(i_get_hash_cId): + { + Eterm arg; + Eterm result; + + GetArg1(0, arg); + result = erts_pd_hash_get_with_hx(c_p, Arg(1), arg); + StoreBifResult(2, result); + } + { Eterm case_end_val; |