aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/hipe
diff options
context:
space:
mode:
authorRickard Green <[email protected]>2014-04-25 21:37:17 +0200
committerRickard Green <[email protected]>2014-05-22 17:11:15 +0200
commite291c1776cff0446435b392285b7ec6abe5373bd (patch)
tree896705134da56a07a978dd1644423e917f23a85d /erts/emulator/hipe
parent3c1e5f014d8c957cfc085d200ca744bd4ad2a7bb (diff)
downloadotp-e291c1776cff0446435b392285b7ec6abe5373bd.tar.gz
otp-e291c1776cff0446435b392285b7ec6abe5373bd.tar.bz2
otp-e291c1776cff0446435b392285b7ec6abe5373bd.zip
Make binary BIFs converting to lists yield on large input
- erlang:binary_to_list/1 - erlang:binary_to_list/3 - erlang:bitstring_to_list/1
Diffstat (limited to 'erts/emulator/hipe')
-rw-r--r--erts/emulator/hipe/hipe_bif_list.m45
1 files changed, 4 insertions, 1 deletions
diff --git a/erts/emulator/hipe/hipe_bif_list.m4 b/erts/emulator/hipe/hipe_bif_list.m4
index 0997d81b2f..e3563af61e 100644
--- a/erts/emulator/hipe/hipe_bif_list.m4
+++ b/erts/emulator/hipe/hipe_bif_list.m4
@@ -270,7 +270,10 @@ define(CFUN,`ifelse($1,term_to_binary_1,hipe_wrapper_term_to_binary_1,
ifelse($1,term_to_binary_2,hipe_wrapper_term_to_binary_2,
ifelse($1,erts_internal_binary_to_term_1,hipe_wrapper_erts_internal_binary_to_term_1,
ifelse($1,erts_internal_binary_to_term_2,hipe_wrapper_erts_internal_binary_to_term_2,
-$1))))')
+ifelse($1,binary_to_list_1,hipe_wrapper_binary_to_list_1,
+ifelse($1,binary_to_list_3,hipe_wrapper_binary_to_list_3,
+ifelse($1,bitstring_to_list_1,hipe_wrapper_bitstring_to_list_1,
+$1)))))))')
define(BIF_LIST,`standard_bif_interface_$3(nbif_$4, CFUN($4))')
include(TARGET/`erl_bif_list.h')