diff options
author | Björn Gustavsson <[email protected]> | 2011-08-26 11:40:33 +0200 |
---|---|---|
committer | Björn Gustavsson <[email protected]> | 2011-08-26 11:40:33 +0200 |
commit | 67f89ecba0ef3a1f707c6c3b40d32605b7e2b352 (patch) | |
tree | 659895bb3f9d5947646c0305e516fdb04aaa53f5 /lib/hipe/cerl | |
parent | d48eaa0731017e5cdadca0af77ac14cd949b6c67 (diff) | |
parent | 4275ca6ecfa35554416bdb517999642b242e9776 (diff) | |
download | otp-67f89ecba0ef3a1f707c6c3b40d32605b7e2b352.tar.gz otp-67f89ecba0ef3a1f707c6c3b40d32605b7e2b352.tar.bz2 otp-67f89ecba0ef3a1f707c6c3b40d32605b7e2b352.zip |
Merge branch 'bjorn/erts/old-code-checking-improvements/OTP-9495' into dev
* bjorn/erts/old-code-checking-improvements/OTP-9495:
code: Optimize purge/1 and soft_purge/1 using check_old_code/1
Add erlang:check_old_code/1
check_process_code/2: Quickly return 'false' if there is no old code
Diffstat (limited to 'lib/hipe/cerl')
-rw-r--r-- | lib/hipe/cerl/erl_bif_types.erl | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/hipe/cerl/erl_bif_types.erl b/lib/hipe/cerl/erl_bif_types.erl index f1be658054..82e3675938 100644 --- a/lib/hipe/cerl/erl_bif_types.erl +++ b/lib/hipe/cerl/erl_bif_types.erl @@ -672,6 +672,9 @@ type(erlang, call_on_load_function, 1, Xs) -> type(erlang, cancel_timer, 1, Xs) -> strict(arg_types(erlang, cancel_timer, 1), Xs, fun (_) -> t_sup(t_integer(), t_atom('false')) end); +type(erlang, check_old_code, 1, Xs) -> + strict(arg_types(erlang, check_old_code, 1), Xs, + fun (_) -> t_boolean() end); type(erlang, check_process_code, 2, Xs) -> strict(arg_types(erlang, check_process_code, 2), Xs, fun (_) -> t_boolean() end); @@ -3395,6 +3398,8 @@ arg_types(erlang, call_on_load_function, 1) -> [t_atom()]; arg_types(erlang, cancel_timer, 1) -> [t_reference()]; +arg_types(erlang, check_old_code, 1) -> + [t_atom()]; arg_types(erlang, check_process_code, 2) -> [t_pid(), t_atom()]; arg_types(erlang, concat_binary, 1) -> |