iverilog/tgt-vhdl
Lars-Peter Clausen 5ef847ea87 Support type parameters
SystemVerilog supports type parameters. These are similar to value
parameters, but they allow to pass a type to a module or similar when
instantiating it.

E.g.

```
module A #(parameter type T = int);
endmodule

module B;
  A #(.T(real)) i_a;
endmodule
```

Add support for handling type parameters.

For the vlog95 and vhdl backends type parameters, similar to typedefs, get
replaced with their actual value. For modules with non-local type
parameters for each module instance a unique module or architecture is
generated with the actual type.

Querying type parameters through VPI is not yet supported.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
2022-12-11 13:50:14 -08:00
..
vhpi
Makefile.in Update cppcheck to not run posix and add some -U flags 2021-01-02 13:23:59 -08:00
cast.cc Remove "using namespace std" from tgt-vhdl header files and fix the fallout. 2021-11-04 17:01:16 +00:00
cppcheck.sup Some more cppcheck cleanup/updates 2014-06-29 20:39:40 -07:00
expr.cc Remove "using namespace std" from tgt-vhdl header files and fix the fallout. 2021-11-04 17:01:16 +00:00
logic.cc Remove "using namespace std" from tgt-vhdl header files and fix the fallout. 2021-11-04 17:01:16 +00:00
lpm.cc tgt-vhdl: Fix expression generation corner case and bug in xnor reduction operator 2011-04-06 19:20:25 -07:00
process.cc Find the process name from always @(...) begin : <name> 2021-02-08 22:23:23 -08:00
scope.cc Support type parameters 2022-12-11 13:50:14 -08:00
state.cc Support type parameters 2022-12-11 13:50:14 -08:00
state.hh
stmt.cc Remove "using namespace std" from tgt-vhdl header files and fix the fallout. 2021-11-04 17:01:16 +00:00
support.cc tgt-vhdl: Fix expression generation corner case and bug in xnor reduction operator 2011-04-06 19:20:25 -07:00
support.hh Make a few constructors explicit. 2015-10-22 12:33:33 +02:00
vhdl-s.conf
vhdl.cc Remove "using namespace std" from tgt-vhdl header files and fix the fallout. 2021-11-04 17:01:16 +00:00
vhdl.conf Fix for GitHub issue #128 - disable CONCATZ generation for vhdl target. 2016-11-25 22:23:58 +00:00
vhdl_config.h.in
vhdl_element.cc Update tgt- directories with cppcheck suggested fixes 2021-01-02 13:31:26 -08:00
vhdl_element.hh Update tgt- directories with cppcheck suggested fixes 2021-01-02 13:31:26 -08:00
vhdl_helper.hh Remove some MinGW32-w64 compile warnings. 2012-01-05 17:26:08 -08:00
vhdl_syntax.cc Add CXX warning flag to tgt-pcb and tgt-vhdl and fix warnings 2013-07-11 17:40:57 -07:00
vhdl_syntax.hh Remove "using namespace std" from tgt-vhdl header files and fix the fallout. 2021-11-04 17:01:16 +00:00
vhdl_target.h Remove "using namespace std" from tgt-vhdl header files and fix the fallout. 2021-11-04 17:01:16 +00:00
vhdl_type.cc Update tgt- directories with cppcheck suggested fixes 2021-01-02 13:31:26 -08:00
vhdl_type.hh Update tgt- directories with cppcheck suggested fixes 2021-01-02 13:31:26 -08:00