Check if a var name is fresh in separate function
This commit is contained in:
parent
e579ea15e8
commit
88a1e07f13
@ -766,16 +766,22 @@ dbg_scoped_vars(Env, [Var | Rest], SCode) ->
|
|||||||
dbg_scoped_var(#env{debug_info = false}, _, SCode) ->
|
dbg_scoped_var(#env{debug_info = false}, _, SCode) ->
|
||||||
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 maps:get(Var, SavedFreshNames, Var) of
|
VarName = maps:get(Var, SavedFreshNames, Var),
|
||||||
"%" ++ _ -> SCode;
|
case VarName == "_" orelse is_fresh_name(VarName) of
|
||||||
"_" -> SCode;
|
true ->
|
||||||
VarName ->
|
SCode;
|
||||||
|
false ->
|
||||||
Register = lookup_var(Env, Var),
|
Register = lookup_var(Env, Var),
|
||||||
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.
|
||||||
|
|
||||||
|
is_fresh_name([$% | _]) ->
|
||||||
|
true;
|
||||||
|
is_fresh_name(_) ->
|
||||||
|
false.
|
||||||
|
|
||||||
dbg_undef(_Undef, missing) ->
|
dbg_undef(_Undef, missing) ->
|
||||||
missing;
|
missing;
|
||||||
dbg_undef(Undef, loop) ->
|
dbg_undef(Undef, loop) ->
|
||||||
|
Loading…
x
Reference in New Issue
Block a user