diff options
Diffstat (limited to 'lib/compiler/src')
| -rw-r--r-- | lib/compiler/src/beam_bsm.erl | 6 | ||||
| -rw-r--r-- | lib/compiler/src/compile.erl | 6 | ||||
| -rw-r--r-- | lib/compiler/src/compiler.app.src | 4 | 
3 files changed, 11 insertions, 5 deletions
| diff --git a/lib/compiler/src/beam_bsm.erl b/lib/compiler/src/beam_bsm.erl index 2a15c1ddf3..ee3e88959d 100644 --- a/lib/compiler/src/beam_bsm.erl +++ b/lib/compiler/src/beam_bsm.erl @@ -242,6 +242,12 @@ btb_reaches_match_2([{bif,_,{f,F},Ss,Dst}=I|Is], Regs0, D0) ->      Regs = btb_kill([Dst], Regs0),      D = btb_follow_branch(F, Regs, D0),      btb_reaches_match_1(Is, Regs, D); +btb_reaches_match_2([{get_map_elements,{f,F},Src,{list,Ls}}=I|Is], Regs0, D0) -> +    {Ss,Ds} = beam_utils:split_even(Ls), +    btb_ensure_not_used([Src|Ss], I, Regs0), +    Regs = btb_kill(Ds, Regs0), +    D = btb_follow_branch(F, Regs, D0), +    btb_reaches_match_1(Is, Regs, D);  btb_reaches_match_2([{test,bs_start_match2,{f,F},Live,[Ctx,_],Ctx}=I|Is],  		    Regs0, D0) ->      CtxRegs = btb_context_regs(Regs0), diff --git a/lib/compiler/src/compile.erl b/lib/compiler/src/compile.erl index 22810c910c..0158cf64db 100644 --- a/lib/compiler/src/compile.erl +++ b/lib/compiler/src/compile.erl @@ -342,10 +342,10 @@ run_tc({Name,Fun}, St) ->  run_eprof({Name,Fun}, Name, St) ->      io:format("~p: Running eprof\n", [Name]), -    eprof:start_profiling([self()]), +    c:appcall(tools, eprof, start_profiling, [[self()]]),      Val = (catch Fun(St)), -    eprof:stop_profiling(), -    eprof:analyze(), +    c:appcall(tools, eprof, stop_profiling, []), +    c:appcall(tools, eprof, analyze, []),      Val;  run_eprof({_,Fun}, _, St) ->      catch Fun(St). diff --git a/lib/compiler/src/compiler.app.src b/lib/compiler/src/compiler.app.src index 2a40c1c379..17d1bd91ce 100644 --- a/lib/compiler/src/compiler.app.src +++ b/lib/compiler/src/compiler.app.src @@ -69,5 +69,5 @@    {registered, []},    {applications, [kernel, stdlib]},    {env, []}, -  {runtime_dependencies, ["stdlib-2.0","kernel-3.0","hipe-3.10.3","erts-7.0", -			  "crypto-3.3"]}]}. +  {runtime_dependencies, ["stdlib-2.5","kernel-4.0","hipe-3.12","erts-7.0", +			  "crypto-3.6"]}]}. | 
