Open
Description
Description
--disp-sensitivity
returns garbage, as the Rti field of processes (of type Grt.Processes.Process_Type) is not correctly populated. E.g. console shows:
.test(beh).a
wakeup ???
driven ???
.test(beh).b
wakeup ???
driven ???
even though --dump-rti
shows correct RTI information.
If you use the test.vhd provided, and do these actions:
ghdl_mcode -a test.vhd
ghdl_mcode -e test
gdb --args ghdl_mcode -r test --disp-sensitivity --dump-rti
(gdb) b grt-disp_signals.adb:364
(gdb) r
GDB shows:
(gdb) p Action.Proc.Rti
$1 = (base => (system.address) 0x0, block => 0x0)
Later, Action.Proc.Rti is directly written to stdout at grt-disp_signals.adb#L365
procedure Disp_Scalar_Sensitivity (...)
...
Put (stdout, Grt.Processes.Get_Rti_Context (Action.Proc));
...
Expected behaviour
Correctly displaying sensitivity information.
How to reproduce?
------------------------------------
-- Generate some signal activity.
------------------------------------
library IEEE;
use IEEE.std_logic_1164.all;
entity test is
end entity;
architecture beh of test is
signal a : std_logic;
signal b : std_logic;
signal c : std_logic;
signal d : std_logic;
begin
P1 : process (a) is
begin
b <= not a;
end process P1;
P2 : process (b, c) is
begin
d <= b or c;
end process P2;
TB: process
begin
a <= '1';
c <= '0';
wait for 10 ns;
a <= '0';
wait;
end process TB;
end architecture beh;
ghdl -a test.vhd
ghdl --elab-run test --disp-sensitivity
Context
Please, provide the following information:
- OS: Ubuntu 22.04.3 LTS
- Origin: Built from sources:
commit 7b53bcba15ff4a56d31373d7c39085fb099e337a
Additional context
$ build/ghdl_mcode -v
GHDL 4.0.0-dev (tarball) [Dunoon edition]
Compiled with GNAT Version: 13.2.0
static elaboration, mcode code generator
Metadata
Metadata
Assignees
Labels
No labels