diff options
Diffstat (limited to 'src/synth/netlists-disp_vhdl.adb')
-rw-r--r-- | src/synth/netlists-disp_vhdl.adb | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/synth/netlists-disp_vhdl.adb b/src/synth/netlists-disp_vhdl.adb index 08ab63a94..f889510f3 100644 --- a/src/synth/netlists-disp_vhdl.adb +++ b/src/synth/netlists-disp_vhdl.adb @@ -21,9 +21,12 @@ with Simple_IO; use Simple_IO; with Types_Utils; use Types_Utils; with Name_Table; use Name_Table; +with Files_Map; + with Netlists.Utils; use Netlists.Utils; with Netlists.Iterators; use Netlists.Iterators; with Netlists.Gates; use Netlists.Gates; +with Netlists.Locations; package body Netlists.Disp_Vhdl is Flag_Merge_Lit : constant Boolean := True; @@ -439,7 +442,24 @@ package body Netlists.Disp_Vhdl is procedure Disp_Instance_Inline (Inst : Instance) is Imod : constant Module := Get_Module (Inst); + Loc : constant Location_Type := Locations.Get_Location (Inst); begin + if Loc /= No_Location then + declare + File : Name_Id; + Line : Positive; + Col : Natural; + begin + Files_Map.Location_To_Position (Loc, File, Line, Col); + Put (" -- "); + Put_Id (File); + Put (':'); + Put_Uns32 (Uns32 (Line)); + Put (':'); + Put_Uns32 (Uns32 (Col)); + New_Line; + end; + end if; case Get_Id (Imod) is when Id_Output => Disp_Template (" \o0 <= \i0; -- (output)" & NL, Inst); |