diff options
author | Björn-Egil Dahlberg <[email protected]> | 2015-03-12 10:48:41 +0100 |
---|---|---|
committer | Björn-Egil Dahlberg <[email protected]> | 2015-03-12 10:48:41 +0100 |
commit | 43db415c05c20c1d0793ec994da265f02dc73e21 (patch) | |
tree | da8dd976ea25af8b379460dfcbb290cb8cfdafe7 /erts/emulator/beam/ops.tab | |
parent | 900276a573ea67039670a71c379f64ac938a4516 (diff) | |
parent | b9a8cebcc30ee1bce8e6b57041bf07cf84630386 (diff) | |
download | otp-43db415c05c20c1d0793ec994da265f02dc73e21.tar.gz otp-43db415c05c20c1d0793ec994da265f02dc73e21.tar.bz2 otp-43db415c05c20c1d0793ec994da265f02dc73e21.zip |
Merge branch 'egil/beam/select_val/OTP-12555'
* egil/beam/select_val/OTP-12555:
erts: Use linear search for small select_val arrays
Diffstat (limited to 'erts/emulator/beam/ops.tab')
-rw-r--r-- | erts/emulator/beam/ops.tab | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/erts/emulator/beam/ops.tab b/erts/emulator/beam/ops.tab index 68fcc177ae..d3649080dc 100644 --- a/erts/emulator/beam/ops.tab +++ b/erts/emulator/beam/ops.tab @@ -166,22 +166,26 @@ is_tuple Fail=f S | select_tuple_arity S=d Fail=f Size=u Rest=* => \ select_tuple_arity S=d Fail=f Size=u Rest=* => \ gen_select_tuple_arity(S, Fail, Size, Rest) -i_select_val r f I -i_select_val x f I -i_select_val y f I +i_select_val_bins r f I +i_select_val_bins x f I +i_select_val_bins y f I -i_select_val2 r f c f c f -i_select_val2 x f c f c f -i_select_val2 y f c f c f +i_select_val_lins r f I +i_select_val_lins x f I +i_select_val_lins y f I -i_select_tuple_arity2 r f A f A f -i_select_tuple_arity2 x f A f A f -i_select_tuple_arity2 y f A f A f +i_select_val2 r f c c f f +i_select_val2 x f c c f f +i_select_val2 y f c c f f i_select_tuple_arity r f I i_select_tuple_arity x f I i_select_tuple_arity y f I +i_select_tuple_arity2 r f A A f f +i_select_tuple_arity2 x f A A f f +i_select_tuple_arity2 y f A A f f + i_jump_on_val_zero r f I i_jump_on_val_zero x f I i_jump_on_val_zero y f I |