aboutsummaryrefslogtreecommitdiffstats
path: root/lib/compiler/src/compile.erl
diff options
context:
space:
mode:
authorBjörn Gustavsson <[email protected]>2017-10-19 10:49:57 +0200
committerBjörn Gustavsson <[email protected]>2017-10-27 08:49:00 +0200
commit758712d629475a2f34f8b48babcbae953381b915 (patch)
tree29386655c4c50cd5dffe13ffd396802d200b16c0 /lib/compiler/src/compile.erl
parentdb67b2c3d1198b2093cb9add3aa55c59bb368ab5 (diff)
downloadotp-758712d629475a2f34f8b48babcbae953381b915.tar.gz
otp-758712d629475a2f34f8b48babcbae953381b915.tar.bz2
otp-758712d629475a2f34f8b48babcbae953381b915.zip
Eliminate the v3_life pass
The v3_life pass does not do enough to be worth being its own pass. Essentially it does two things: * Calculates life-time information starting from the annotations that v3_kernel provides. That part can be moved into v3_codegen. * Rewrites the Kernel Erlang records to similar plain tuples (for example, #k_cons{hd=Hd,tl=Tl} is rewritten to {cons,Hd,Tl}). That rewriting is not needed and can be eliminated.
Diffstat (limited to 'lib/compiler/src/compile.erl')
-rw-r--r--lib/compiler/src/compile.erl5
1 files changed, 1 insertions, 4 deletions
diff --git a/lib/compiler/src/compile.erl b/lib/compiler/src/compile.erl
index 1b359d1e59..bc519264fc 100644
--- a/lib/compiler/src/compile.erl
+++ b/lib/compiler/src/compile.erl
@@ -733,8 +733,6 @@ kernel_passes() ->
?pass(v3_kernel),
{iff,dkern,{listing,"kernel"}},
{iff,'to_kernel',{done,"kernel"}},
- {pass,v3_life},
- {iff,dlife,{listing,"life"}},
{pass,v3_codegen},
{iff,dcg,{listing,"codegen"}}
| asm_passes()].
@@ -1947,7 +1945,6 @@ pre_load() ->
sys_core_fold,
v3_codegen,
v3_core,
- v3_kernel,
- v3_life],
+ v3_kernel],
_ = code:ensure_modules_loaded(L),
ok.