diff options
author | Tristan Gingold <tgingold@free.fr> | 2020-04-13 06:12:32 +0200 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2020-04-13 06:12:32 +0200 |
commit | 9692c521448b06fd0627136754a983f8e3b54efe (patch) | |
tree | aeec44bb14f8b3983243a8fa1361fb01da1721d4 | |
parent | 81ad114f07bebf66d337049303998879d1881ccd (diff) | |
download | ghdl-9692c521448b06fd0627136754a983f8e3b54efe.tar.gz ghdl-9692c521448b06fd0627136754a983f8e3b54efe.tar.bz2 ghdl-9692c521448b06fd0627136754a983f8e3b54efe.zip |
synth-stmts: minor refactoring.
-rw-r--r-- | src/synth/synth-stmts.adb | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/synth/synth-stmts.adb b/src/synth/synth-stmts.adb index 4f846d1fb..a7ed70f71 100644 --- a/src/synth/synth-stmts.adb +++ b/src/synth/synth-stmts.adb @@ -2860,6 +2860,7 @@ package body Synth.Stmts is States : Net) return Net is use PSL.NFAs; + Ctxt : constant Context_Acc := Get_Build (Syn_Inst); S : NFA_State; S_Num : Int32; D_Num : Int32; @@ -2875,14 +2876,14 @@ package body Synth.Stmts is S := Get_First_State (NFA); while S /= No_State loop S_Num := Get_State_Label (S); - I := Build_Extract_Bit (Build_Context, States, Uns32 (S_Num)); + I := Build_Extract_Bit (Ctxt, States, Uns32 (S_Num)); -- For each edge: E := Get_First_Src_Edge (S); while E /= No_Edge loop -- Edge condition. Cond := Build_Dyadic - (Build_Context, Netlists.Gates.Id_And, + (Ctxt, Netlists.Gates.Id_And, I, Synth_PSL_Expression (Syn_Inst, Get_Edge_Expr (E))); -- TODO: if EOS is present, then this is a live state. @@ -2893,7 +2894,7 @@ package body Synth.Stmts is D_Arr (D_Num) := Cond; else D_Arr (D_Num) := Build_Dyadic - (Build_Context, Netlists.Gates.Id_Or, D_Arr (D_Num), Cond); + (Ctxt, Netlists.Gates.Id_Or, D_Arr (D_Num), Cond); end if; E := Get_Next_Src_Edge (E); @@ -2903,7 +2904,7 @@ package body Synth.Stmts is end loop; if D_Arr (Nbr_States - 1) = No_Net then - D_Arr (Nbr_States - 1) := Build_Const_UB32 (Build_Context, 0, 1); + D_Arr (Nbr_States - 1) := Build_Const_UB32 (Ctxt, 0, 1); end if; Concat_Array (D_Arr.all, Res); |