aboutsummaryrefslogtreecommitdiffstats
path: root/src/synth/netlists-disp_vhdl.adb
diff options
context:
space:
mode:
Diffstat (limited to 'src/synth/netlists-disp_vhdl.adb')
-rw-r--r--src/synth/netlists-disp_vhdl.adb13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/synth/netlists-disp_vhdl.adb b/src/synth/netlists-disp_vhdl.adb
index a7999ba0c..fdd4c308a 100644
--- a/src/synth/netlists-disp_vhdl.adb
+++ b/src/synth/netlists-disp_vhdl.adb
@@ -605,6 +605,19 @@ package body Netlists.Disp_Vhdl is
Put ((1 .. Natural (Ow - Iw) => '0'));
Disp_Template (""" & \i0; -- uext" & NL, Inst);
end;
+ when Id_Red_Or =>
+ declare
+ Iw : constant Width := Get_Width (Get_Input_Net (Inst, 0));
+ begin
+ if Iw > 1 then
+ Disp_Template
+ (" \o0 <= '1' when \i0 /= (\n0 downto 0 => '0') else '0';"
+ & NL, Inst, (0 => Iw - 1));
+ else
+ Disp_Template
+ (" \o0 <= \i1; -- reduce or" & NL, Inst);
+ end if;
+ end;
when Id_Assert =>
Disp_Template (" assert \i0 = '1' severity error;" & NL, Inst);
when Id_Assume =>