Skip to content

synth: assertion failure for --synth on Chips4Makers JTAG code #970

@Fatsie

Description

@Fatsie

Description
ghdl --synth fail on Chips4Makers JTAG code

How to reproduce?
I am running on Ubuntu 18.04.3 LTS with freshly compiled ghdl using gnat-8 package. Following steps should reproduce the problem:

eda@eda:/tmp$ git clone https://gitlab.com/Chips4Makers/c4m_jtag.git
Cloning into 'c4m_jtag'...
remote: Enumerating objects: 32, done.
remote: Counting objects: 100% (32/32), done.
remote: Compressing objects: 100% (29/29), done.
remote: Total 116 (delta 9), reused 0 (delta 0)
Receiving objects: 100% (116/116), 28.36 KiB | 261.00 KiB/s, done.
Resolving deltas: 100% (34/34), done.
eda@eda:/tmp$ cd c4m_jtag/rtl/vhdl/
eda@eda:/tmp/c4m_jtag/rtl/vhdl$ export GHDL_OPTS="--std=08"
eda@eda:/tmp/c4m_jtag/rtl/vhdl$ ghdl -a $GHDL_OPTS c4m_jtag_pkg.vhdl c4m_jtag_idblock.vhdl c4m_jtag_irblock.vhdl c4m_jtag_iocell.vhdl c4m_jtag_ioblock.vhdl c4m_jtag_tap_fsm.vhdl c4m_jtag_tap_controller.vhdl 
eda@eda:/tmp/c4m_jtag/rtl/vhdl$ ghdl -e $GHDL_OPTS c4m_jtag_tap_controller
eda@eda:/tmp/c4m_jtag/rtl/vhdl$ ghdl --synth $GHDL_OPTS c4m_jtag_tap_controller

******************** GHDL Bug occurred ***************************
Please report this bug on https://github.com/ghdl/ghdl/issues
GHDL release: 0.37-dev (v0.36-928-g950f6b8c) [Dunoon edition]
Compiled with GNAT Version: 8.3.0
Target: x86_64-linux-gnu
/tmp/c4m_jtag/rtl/vhdl/
Command line:
ghdl --synth --std=08 c4m_jtag_tap_controller
Exception TYPES.INTERNAL_ERROR raised
Exception information:
raised TYPES.INTERNAL_ERROR : synth-context.adb:283
Call stack traceback locations:
0x55f66c831896 0x55f66c831b6d 0x55f66c831c10 0x55f66c836a4e 0x55f66c841d62 0x55f66c83752e 0x55f66c8375ce 0x55f66c833fdc 0x55f66c87b333 0x55f66c7ddbd7 0x55f66c92559d 0x55f66c5c5261 0x7efd5cd59b95 0x55f66c5c3bd8 0xfffffffffffffffe
******************************************************************
eda@eda:/tmp/c4m_jtag/rtl/vhdl$ cat -n ~/Compile/ghdl/src/synth/synth-context.adb |grep "   28[0-6]"
   280	                  end if;
   281	                  Current := Current.Up_Block;
   282	               end loop;
   283	               raise Internal_Error;
   284	            end;
   285	         when Kind_Package =>
   286	            if Scope.Pkg_Parent = null then

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugFeaReq: SynthesisRequested feature addition related to synthesis.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions