Rename env.debug to env.debug_info
This commit is contained in:
parent
3a40ef05fc
commit
49bcc48360
@ -53,7 +53,7 @@
|
|||||||
child_contracts = #{},
|
child_contracts = #{},
|
||||||
saved_fresh_names = #{},
|
saved_fresh_names = #{},
|
||||||
options = [],
|
options = [],
|
||||||
debug = false }).
|
debug_info = false }).
|
||||||
|
|
||||||
%% -- Debugging --------------------------------------------------------------
|
%% -- Debugging --------------------------------------------------------------
|
||||||
|
|
||||||
@ -179,7 +179,7 @@ init_env(ChildContracts, ContractName, FunNames, Name, Args, SavedFreshNames, Op
|
|||||||
options = Options,
|
options = Options,
|
||||||
tailpos = true,
|
tailpos = true,
|
||||||
saved_fresh_names = SavedFreshNames,
|
saved_fresh_names = SavedFreshNames,
|
||||||
debug = proplists:get_value(debug_info, Options, false) }.
|
debug_info = proplists:get_value(debug_info, Options, false) }.
|
||||||
|
|
||||||
next_var(#env{ vars = Vars }) ->
|
next_var(#env{ vars = Vars }) ->
|
||||||
1 + lists:max([-1 | [J || {_, {var, J}} <- Vars]]).
|
1 + lists:max([-1 | [J || {_, {var, J}} <- Vars]]).
|
||||||
@ -342,7 +342,7 @@ to_scode1(Env, {'let', Ann, X, Expr, Body}) ->
|
|||||||
to_scode(Env1, Body) ],
|
to_scode(Env1, Body) ],
|
||||||
[ dbg_loc(Env, Ann) | dbg_scoped_var(Env1, X, SCode) ];
|
[ dbg_loc(Env, Ann) | dbg_scoped_var(Env1, X, SCode) ];
|
||||||
|
|
||||||
to_scode1(Env = #env{ current_function = Fun, tailpos = true, debug = false }, {def, Ann, Fun, Args}) ->
|
to_scode1(Env = #env{ current_function = Fun, tailpos = true, debug_info = false }, {def, Ann, Fun, Args}) ->
|
||||||
%% Tail-call to current function, f(e0..en). Compile to
|
%% Tail-call to current function, f(e0..en). Compile to
|
||||||
%% [ let xi = ei ]
|
%% [ let xi = ei ]
|
||||||
%% [ STORE argi xi ]
|
%% [ STORE argi xi ]
|
||||||
@ -406,7 +406,7 @@ to_scode1(Env, {closure, Ann, Fun, FVs}) ->
|
|||||||
to_scode1(Env, {switch, Ann, Case}) ->
|
to_scode1(Env, {switch, Ann, Case}) ->
|
||||||
[ dbg_loc(Env, Ann) | split_to_scode(Env, Case) ].
|
[ dbg_loc(Env, Ann) | split_to_scode(Env, Case) ].
|
||||||
|
|
||||||
local_call( Env = #env{debug = false}, Fun) when Env#env.tailpos -> aeb_fate_ops:call_t(Fun);
|
local_call( Env = #env{debug_info = false}, Fun) when Env#env.tailpos -> aeb_fate_ops:call_t(Fun);
|
||||||
local_call(_Env, Fun) -> aeb_fate_ops:call(Fun).
|
local_call(_Env, Fun) -> aeb_fate_ops:call(Fun).
|
||||||
|
|
||||||
split_to_scode(Env, {nosplit, Expr}) ->
|
split_to_scode(Env, {nosplit, Expr}) ->
|
||||||
@ -736,10 +736,11 @@ push(A) -> {'STORE', ?a, A}.
|
|||||||
tuple(0) -> push(?i({tuple, {}}));
|
tuple(0) -> push(?i({tuple, {}}));
|
||||||
tuple(N) -> aeb_fate_ops:tuple(?a, N).
|
tuple(N) -> aeb_fate_ops:tuple(?a, N).
|
||||||
|
|
||||||
dbg_loc(Env, Ann) ->
|
%% -- Debug info functions --
|
||||||
case proplists:get_value(debug_info, Env#env.options, false) of
|
|
||||||
false -> [];
|
dbg_loc(#env{debug_info = false}, _) ->
|
||||||
true ->
|
[];
|
||||||
|
dbg_loc(_Env, Ann) ->
|
||||||
File = case proplists:get_value(file, Ann, no_file) of
|
File = case proplists:get_value(file, Ann, no_file) of
|
||||||
no_file -> "";
|
no_file -> "";
|
||||||
F -> F
|
F -> F
|
||||||
@ -748,18 +749,18 @@ dbg_loc(Env, Ann) ->
|
|||||||
case Line of
|
case Line of
|
||||||
undefined -> [];
|
undefined -> [];
|
||||||
_ -> [{'DBG_LOC', {immediate, File}, {immediate, Line}}]
|
_ -> [{'DBG_LOC', {immediate, File}, {immediate, Line}}]
|
||||||
end
|
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
dbg_scoped_vars(#env{debug_info = false}, _, SCode) ->
|
||||||
|
SCode;
|
||||||
dbg_scoped_vars(_Env, [], SCode) ->
|
dbg_scoped_vars(_Env, [], SCode) ->
|
||||||
SCode;
|
SCode;
|
||||||
dbg_scoped_vars(Env, [Var | Rest], SCode) ->
|
dbg_scoped_vars(Env, [Var | Rest], SCode) ->
|
||||||
dbg_scoped_vars(Env, Rest, dbg_scoped_var(Env, Var, SCode)).
|
dbg_scoped_vars(Env, Rest, dbg_scoped_var(Env, Var, SCode)).
|
||||||
|
|
||||||
|
dbg_scoped_var(#env{debug_info = false}, _, SCode) ->
|
||||||
|
SCode;
|
||||||
dbg_scoped_var(Env = #env{saved_fresh_names = SavedFreshNames}, Var, SCode) ->
|
dbg_scoped_var(Env = #env{saved_fresh_names = SavedFreshNames}, Var, SCode) ->
|
||||||
case proplists:get_value(debug_info, Env#env.options, false) of
|
|
||||||
false -> SCode;
|
|
||||||
true ->
|
|
||||||
case maps:get(Var, SavedFreshNames, Var) of
|
case maps:get(Var, SavedFreshNames, Var) of
|
||||||
"%" ++ _ -> SCode;
|
"%" ++ _ -> SCode;
|
||||||
"_" -> SCode;
|
"_" -> SCode;
|
||||||
@ -768,7 +769,6 @@ dbg_scoped_var(Env = #env{saved_fresh_names = SavedFreshNames}, Var, SCode) ->
|
|||||||
Def = [{'DBG_DEF', {immediate, VarName}, Register}],
|
Def = [{'DBG_DEF', {immediate, VarName}, Register}],
|
||||||
Undef = [{'DBG_UNDEF', {immediate, VarName}, Register}],
|
Undef = [{'DBG_UNDEF', {immediate, VarName}, Register}],
|
||||||
Def ++ dbg_undef(Undef, SCode)
|
Def ++ dbg_undef(Undef, SCode)
|
||||||
end
|
|
||||||
end.
|
end.
|
||||||
|
|
||||||
dbg_undef(_Undef, missing) ->
|
dbg_undef(_Undef, missing) ->
|
||||||
|
Loading…
x
Reference in New Issue
Block a user