iverilog/vhdlpp
Martin Whitaker aae3a570c2 Fix build with clang. 2021-01-03 10:48:21 +00:00
..
Makefile.in Update cppcheck to not run posix and add some -U flags 2021-01-02 13:23:59 -08:00
README.txt Spelling fixes to vhdlpp tree 2012-05-17 16:42:03 -07:00
architec.cc vhdlpp: Variables are moved to respective process scopes. 2016-03-07 11:38:11 +01:00
architec.h Update vhdlpp with changes suggested by cppcheck 2021-01-02 13:36:24 -08:00
architec_debug.cc Spelling and whitespace 2016-03-14 12:25:50 -07:00
architec_elaborate.cc Update vhdlpp with changes suggested by cppcheck 2021-01-02 13:36:24 -08:00
architec_emit.cc vhdlpp: Evaluate conditional signal assignments upon simulation start. 2016-09-01 12:08:43 +02:00
compiler.cc vhdlpp: Variables are moved to respective process scopes. 2016-03-07 11:38:11 +01:00
compiler.h More spelling, comments only 2016-04-01 11:02:34 -07:00
debug.cc Update vhdlpp with changes suggested by cppcheck 2021-01-02 13:36:24 -08:00
entity.cc Fixed vhdlpp segfault if it processes an entity without any ports declared. 2014-08-04 20:27:21 -07:00
entity.h vhdlpp: Out & inout arguments in subprogram calls are turned to registers. 2015-12-01 10:32:47 +01:00
entity_elaborate.cc vhdlpp: Fixed crash on unassociated generics. 2015-03-06 20:39:10 +01:00
entity_emit.cc vhdlpp: generics without a default value are set to 1'bx. 2015-05-19 22:40:56 +02:00
entity_stream.cc vhdlpp: inout direction for ports. 2015-05-19 22:40:56 +02:00
expression.cc vhdlpp: Subprograms are matched once. ExpFunc::probe_type() return exact type 2016-09-01 12:08:44 +02:00
expression.h Fix build with clang. 2021-01-03 10:48:21 +00:00
expression_debug.cc vhdlpp: Support for unary sign operator. 2016-09-01 12:08:43 +02:00
expression_elaborate.cc vhdlpp: Use the wider variable size for arith operations on (un)signed 2016-09-01 12:08:44 +02:00
expression_emit.cc vhdlpp: VTypeArray::dimensions() returns std::vector<range_t> 2016-09-01 12:08:43 +02:00
expression_evaluate.cc vhdlpp: VTypeArray::dimensions() returns std::vector<range_t> 2016-09-01 12:08:43 +02:00
expression_stream.cc vhdlpp: Support for unary sign operator. 2016-09-01 12:08:43 +02:00
ivl_assert.h Update header files to use a more standard name to prevent rereading 2014-07-23 13:42:56 -07:00
lexor.lex Update flex destroy routines to work for version 2.6 and greater 2017-11-16 19:11:50 -08:00
lexor_keyword.gperf vhdlpp: Boolean values handled without using keywords. 2015-04-24 13:39:41 +02:00
library.cc Update vhdlpp with changes suggested by cppcheck 2021-01-02 13:36:24 -08:00
library.h vhdlpp: Support for subprogram overloading. 2016-03-07 09:54:28 +01:00
main.cc Update vhdlpp with changes suggested by cppcheck 2021-01-02 13:36:24 -08:00
package.cc vhdlpp: Subprograms are linked to Package instead of generic Scope. 2016-03-07 17:11:53 +01:00
package.h vhdlpp: Removed a non-existing method declaration. 2016-03-07 09:54:28 +01:00
package_emit.cc vhdlpp: Support for subprogram overloading. 2016-03-07 09:54:28 +01:00
parse.y replace deprecated yacc directives 2019-09-29 18:19:45 -05:00
parse_api.h Update header files to use a more standard name to prevent rereading 2014-07-23 13:42:56 -07:00
parse_misc.cc vhdlpp: Clearer error messages 2016-09-01 12:08:44 +02:00
parse_misc.h vhdlpp: line feed character (LF). 2016-03-07 09:54:28 +01:00
parse_types.h Update vhdlpp with changes suggested by cppcheck 2021-01-02 13:36:24 -08:00
parse_wrap.h Update header files to use a more standard name to prevent rereading 2014-07-23 13:42:56 -07:00
scope.cc Fix reference to undefined value (valgrind) 2016-03-24 23:43:07 -07:00
scope.h vhdlpp: Specify lifetime for variables. 2016-03-29 11:27:14 +02:00
sequential.cc Update vhdlpp with changes suggested by cppcheck 2021-01-02 13:36:24 -08:00
sequential.h vhdlpp: Fixed a few shadow warnings. 2016-03-12 12:03:17 +00:00
sequential_debug.cc vhdlpp: Limited support for final wait statement. 2016-03-07 09:54:28 +01:00
sequential_elaborate.cc Update vhdlpp with changes suggested by cppcheck 2021-01-02 13:36:24 -08:00
sequential_emit.cc Update vhdlpp with changes suggested by cppcheck 2021-01-02 13:36:24 -08:00
std_funcs.cc Don't allow non-vectorable arguments to $signed/$unsigned. 2018-05-14 22:13:56 +01:00
std_funcs.h vhdlpp: Some of the standard library functions are imported only on request 2016-09-01 12:08:44 +02:00
std_types.cc Update vhdlpp with changes suggested by cppcheck 2021-01-02 13:36:24 -08:00
std_types.h vhdlpp: file_open_status enum. 2016-03-07 09:54:28 +01:00
subprogram.cc vhdlpp: Subprograms are matched once. ExpFunc::probe_type() return exact type 2016-09-01 12:08:44 +02:00
subprogram.h vhdlpp: Subprograms are matched once. ExpFunc::probe_type() return exact type 2016-09-01 12:08:44 +02:00
subprogram_emit.cc vhdlpp: Fixed automatic variables initalization in subprograms. 2016-03-29 11:27:14 +02:00
vhdlint.cc updated FSF-address 2012-08-29 10:12:10 -07:00
vhdlint.h Update header files to use a more standard name to prevent rereading 2014-07-23 13:42:56 -07:00
vhdlnum.h Update header files to use a more standard name to prevent rereading 2014-07-23 13:42:56 -07:00
vhdlpp_config.h.in Update header files to use a more standard name to prevent rereading 2014-07-23 13:42:56 -07:00
vhdlreal.cc updated FSF-address 2012-08-29 10:12:10 -07:00
vhdlreal.h Update header files to use a more standard name to prevent rereading 2014-07-23 13:42:56 -07:00
vsignal.cc vhdlpp: Specify lifetime for variables. 2016-03-29 11:27:14 +02:00
vsignal.h vhdlpp: Fixed automatic variables initalization in subprograms. 2016-03-29 11:27:14 +02:00
vtype.cc Fix space issues 2016-08-14 19:37:40 -07:00
vtype.h Update vhdlpp with changes suggested by cppcheck 2021-01-02 13:36:24 -08:00
vtype_elaborate.cc vhdlpp: VTypeRangeExpr::elaborate() 2016-03-07 09:54:28 +01:00
vtype_emit.cc vhdlpp: VTypeArray::dimensions() returns std::vector<range_t> 2016-09-01 12:08:43 +02:00
vtype_match.cc vhdlpp: Stricter array type matching 2016-09-01 12:08:43 +02:00
vtype_stream.cc vhdlpp: Fixes for subtypes handling. 2016-03-07 09:54:28 +01:00

README.txt

vhdlpp COMMAND LINE FLAGS:

-D <token>
  Debug flags. The token can be:

  * yydebug | no-yydebug

  * entities=<path>

-L <path>
  Library path. Add the directory name to the front of the library
  search path. The library search path is initially empty.

-V
  Display version on stdout

-v
  Verbose: Display version on stderr, and enable verbose messages to
  stderr.

-w <path>
  Work path. This is the directory where the working directory is.


LIBRARY FORMAT:

The vhdlpp program stores libraries as directory that contain
packages. The name of the directory (in lower case) is the name of the
library as used on the "import" statement. Within that library, there
are packages in files named <foo>.pkg. For example:

    <directory>/...
       sample/...
         test1.pkg
	 test2.pkg
       bar/...
         test3.pkg

Use the "+vhdl-libdir+<directory>" record in a config file to tell
Icarus Verilog that <directory> is a place to look for libraries. Then
in your VHDL code, access packages like this:

    library sample;
    library bar;
    use sample.test1.all;
    use bar.test3.all;

The *.pkg files are just VHDL code containing only the package with
the same name. When Icarus Verilog encounters the "use <lib>.<name>.*;"
statement, it looks for the <name>.pkg file in the <lib> library and
parses that file to get the package header declared therein.