iverilog/tgt-flow
William P. Moore 8428032d83 tgt-flow: compact byte-offset positions and source spans
Report every source position as the compact string "start:begin:end" of
byte offsets (begin/end empty when not applicable): a port/signal is
"start::", a module "start::end" (module .. endmodule), an instance
"start::end" (.. ';'), and an always/initial block or generate frame
"start:begin:end".  This replaces the {"off":0,"line":N,"col":0} object
whose off/col were always zero, and matches the GHDL --flow exporter's
format so one consumer works across both tools.

The ivl_target API exposes only line numbers, so the byte offsets and
begin/end spans are recovered by a small comment/string-aware scanner
that reads the source files (cached, with a per-file line table).

Bump the schema to flowtracer1.verilog.v0 (companion to GHDL's
flowtracer1.vhdl.v0).  flow_reg.py checks the new schema and that every
pos/inst_pos is well formed; tgt-flow.rst documents the position format.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-19 14:24:51 -06:00
..
Makefile.in tgt-flow: add dataflow exporter target (-tflow) 2026-06-19 14:00:38 -06:00
flow-s.conf tgt-flow: add dataflow exporter target (-tflow) 2026-06-19 14:00:38 -06:00
flow.c tgt-flow: compact byte-offset positions and source spans 2026-06-19 14:24:51 -06:00
flow.conf tgt-flow: add dataflow exporter target (-tflow) 2026-06-19 14:00:38 -06:00