Cary R
8a85d62ec7
Update to latest GTKWave files
2019-09-29 09:59:56 -07:00
Martin Whitaker
a6bcbc3d1d
Remove obsolete private VPI functions.
2019-09-13 08:40:58 +01:00
Martin Whitaker
b43fcccc0f
Add support for PATHPULSE, PATHPULSEPERCENT, and PERIOD in SDF parser.
...
As requested on iverilog-devel. These are all parsed then ignored for now.
2019-08-24 00:23:29 +01:00
Cary R
e93ee3967e
Update cppcheck suppression file
2019-05-14 22:34:58 -07:00
Cary R
4c58b88792
Update files from GTKWave
2019-05-14 22:34:34 -07:00
Cary R
a9388a895e
Update cppcheck waivers
2019-03-26 22:43:03 -07:00
Cary R
407b5a1d7a
Update fstapi.c to the latest from GTKWave
2019-03-26 19:59:18 -07:00
Cary R
844fa056f7
Update fstapi files to the latest from GTKWave
2018-10-12 21:30:20 -07:00
Martin Whitaker
9d0d1938dc
Fix bug in output of null character with %c format.
2018-10-07 18:59:53 +01:00
Martin Whitaker
f1608e163f
Fix implicit fallthrough warnings when building with recent GCC.
2018-10-06 20:15:42 +01:00
Cary R
7fa6eaef0a
Update to latest GTKWAve files
2018-10-06 09:26:39 -07:00
Martin Whitaker
542fe2cf77
Enable checks for VPI const-correctness.
...
Note we only want these enabled when building the compiler and runtime
binaries. If we included the ICARUS_VPI_CONST definition in the global
CPP_FLAGS, that would propagate to the flags used by iverilog-vpi, so
would affect compilation of user VPI code.
2018-10-06 11:48:19 +01:00
Martin Whitaker
b066a5815e
Allow %c format to output null characters (GitHub issue #209 )
...
Currently $display et al. output nothing when the expression
corresponding to a %c format specification has the value 0. As
Verilog provides no other way to write raw bytes to a file, we
should allow 0 values to be written. Other simulators allow this.
2018-09-29 21:22:17 +01:00
Martin Whitaker
0d494da702
Further fixes for const-correctness.
...
- allow ICARUS_VPI_CONST to be pre-defined by the user
- use it for sizetf as well as for compiletf and calltf
- fix remaining warnings when it is defined as 'const'
2018-09-29 12:04:16 +01:00
Cary R
1da9b2cea0
Add support for constant $countones, $isunknown, $onehot, $onehot0
2018-09-03 08:32:41 -07:00
Cary R
2b030ce27a
Update the bit vector table name
2018-09-03 08:32:35 -07:00
Cary R
b35f9e13c7
Move the bit vector functions to the SV table
2018-09-03 08:32:28 -07:00
Cary R
40558160e7
Add support for bit vector system function in vpi
2018-08-30 22:31:15 -07:00
Cary R
ff8ccc0b3e
Update fstapi.c to the latest version
2018-07-16 09:03:38 -07:00
Cary R
9a8212a54f
Update tp the latest files from GTKWave
2017-12-13 21:56:59 -08:00
Cary R
21418c6a41
Fix a couple memory leaks in $sdf_annotate()
2017-11-16 19:42:07 -08:00
Cary R
f03033e612
Update flex destroy routines to work for version 2.6 and greater
2017-11-16 19:11:50 -08:00
Martin Whitaker
e54d19e2d2
Fix $printtimescale to support 10s and 100s values.
2017-11-05 09:28:19 +00:00
Cary R
d9478bd837
Update cppcheck waiver files
2017-10-23 00:21:51 -07:00
Cary R
97e2123724
Update to latest files from GTKWave
2017-10-22 19:41:14 -07:00
Cary R
3d9e777ae5
Allocate the correct amount of memory when escaping a string
2017-01-08 20:46:20 -08:00
Martin Whitaker
a9f1f306f1
Replace strndup with strdup and fix a few potential buffer overrun bugs.
...
strndup is not available in Windows.
2016-10-14 22:19:33 +01:00
Martin Whitaker
edb922f613
Use correct format strings for PLI_UINT64 in printf/scanf functions.
2016-10-14 20:35:36 +01:00
Martin Whitaker
0fdf29e099
Fix for GitHub issue #117 - delays in VPI simulation time callbacks.
...
Change cbReadWriteSynch and cbReadOnlySynch to interpret the passed
time value as a relative delay, not an absolute time. This matches
the behaviour of other simulators.
2016-09-25 20:43:58 +01:00
Cary R
255701a787
Fix space issue
2016-08-14 20:55:55 -07:00
Cary R
5f1e63604c
Update cppcheck vpi suppression file
2016-08-14 20:53:57 -07:00
Cary R
13189f7431
Update fstapi.c to latest from GTKWave
2016-08-14 12:46:48 -07:00
Martin Whitaker
7bed181f68
Support timescales in design units that aren't inside a module.
...
SystemVerilog allows tasks, functions, and classes to be defined at the
root level or inside packages, so we can't rely on an enclosing module
being present to provide the timescale.
2016-07-22 22:48:20 +01:00
Larry Doolittle
89edf62206
Capitalize Verilog in a few places
2016-04-01 11:02:24 -07:00
Cary R
fb77cc4000
Fix a cppcheck warning
2016-03-24 20:23:47 -07:00
Maciej Suminski
770906ba0d
vhdlpp: Write binary constants as a string of bits.
2016-03-07 17:11:53 +01:00
Maciej Suminski
41a45a8db0
vhdlpp: Avoid unnecessary toupper() call.
2016-03-07 17:11:53 +01:00
Maciej Suminski
7c10de918e
vhdlpp: read() takes into account the size of the destination variable.
2016-03-07 17:11:53 +01:00
Maciej Suminski
1ed4603a18
vhdlpp: Set EOF flag right after reaching the end of file.
2016-03-07 09:54:28 +01:00
Maciej Suminski
34b5834a84
vhdlpp: Added file_open() variant that returns status.
2016-03-07 09:54:28 +01:00
Maciej Suminski
2e6fb9b3f6
vhdlpp: shift_left/right() functions.
2016-03-07 09:54:28 +01:00
Maciej Suminski
2606d0e897
vhdlpp: Minor code clean up.
2016-03-07 09:54:28 +01:00
Cary R
03cb74ba57
Fix compile warning
2016-02-10 22:33:10 -08:00
Maciej Suminski
71084109f6
Save the time format suffix string.
...
In case of a vhdlpp-specific () call, the timeformat suffix string was overridden,
therefore it has to be restored to the previous value after the call.
2016-02-10 22:33:06 -08:00
Cary R
eef3e8c09f
Fix memory leak in time suffix code (VHDL)
2016-02-04 07:21:22 -08:00
Maciej Suminski
ba274936e5
vhdlpp: Added 'image attribute for time type.
2016-01-06 15:30:24 +01:00
Maciej Suminski
1d2aef7142
vpi: $sformatf() function.
2016-01-06 15:30:06 +01:00
Cary R
2aaa050b7c
Update cppcheck suppression file
2015-12-19 11:58:31 -08:00
Cary R
4b9b0b7125
GTKWave (fstapi.c) needs realpath() so check for it
2015-12-19 09:11:48 -08:00
Cary R
45fc06cf11
A format is a vpiStringVal not vpiStringVar, fix memory leak
2015-12-13 18:57:09 -08:00
Maciej Suminski
b414733f34
vhdlpp: std.textio & ieee.std_logic_textio functions implemented using VPI.
2015-11-24 17:16:51 +01:00
Stephen Williams
a62a095717
Merge pull request #83 from chrta/fix_compiler_warnings
...
Fix 3 compiler warnings
2015-11-02 17:20:57 -08:00
Cary R
6c91588d33
Fix some errors found with cppcheck
2015-11-02 00:14:29 -08:00
Christian Taedcke
3ffe6684e2
Add definition of _DEFAULT_SOURCE.
...
Since glibc version 2.20, _SVID_SOURCE is deprecated, see
'man 7 feature_test_macros'. To be able to compile this code without compiler
warnings in new and old glibc versions, both _DEFAULT_SOURCE and _SVID_SOURCE
must be defined.
2015-10-31 11:17:18 +01:00
Cary R
fbc94a95df
Update LZ4 files to latest from GTKWave
2015-10-02 10:32:34 -07:00
Cary R
a65c007fdb
Fix some cppcheck warnings
2015-10-02 09:43:54 -07:00
Larry Doolittle
4dd65926ae
Spelling fixes
2015-08-17 11:35:10 -07:00
Frederick C. Kurz
5e931b7e89
Changes to vpi/v2009_array.c
...
"Microsoft Visual Studio Express 2015 RC Web" cannot have a variable for the size when declaring an array, it won't compile.
2015-07-22 10:02:33 -07:00
Frederick C. Kurz
11d7cbd3e2
Changes to vpi/sys_fileio.c
...
Changed for "Microsoft Visual Studio Express 2015 RC Web" so running vvp on pr2800985a.v won't crash.
2015-07-22 09:53:42 -07:00
Frederick C. Kurz
7aff1adf99
Changes to vpi/sys_display.c
...
First and second areas were changed for "Microsoft Visual Studio Express 2015 RC Web" so that gold files would match. For the third area of change, "Microsoft Visual Studio Express 2015 RC Web" wanted to print 6 zeros after the decimals for the values of 0.0 and -0.0, and then the gold files wouldn't match.
2015-07-22 09:48:01 -07:00
Cary R
9635f031a1
Correctly display events when dumping using the FST format
...
This patch is from Tony Bybell and fixes a segmentation fault when dumping
an event to a FST file.
2015-07-22 00:30:13 -07:00
Maciej Suminski
7597270939
vhdlpp: Fixed $ivlh_rising/falling_edge().
...
Conditions to detect rising/falling edges were incorrect.
VHDL standard specifies it has to detect the current value,
rather than compare against the previous one.
2015-06-24 23:53:33 +02:00
Larry Doolittle
b23faff27c
Just a few more spelling fixes
...
Includes some user-visible messages
2015-06-17 08:09:34 -07:00
Stephen Williams
9ac9f1c9f2
Merge branch 'master' of github.com:steveicarus/iverilog
2015-06-04 15:11:29 -07:00
Larry Doolittle
2739f83702
Spelling fixes in C and C++ comments
2015-06-04 15:00:29 -07:00
Cary R
7af3280215
Update cppcheck suppression file in VPI
2015-06-04 09:50:08 -07:00
Stephen Williams
e6c6f6c81e
Use fwrite to write $display output, instead of fprintf
...
This change makes it safe to write non-ascii characters, which
is an issue when the %u format is used.
2015-06-03 10:00:35 -07:00
Cary R
e530b4e642
Update fstapi.c to the latest from GTKWave
2015-05-08 16:36:12 -07:00
Martin Whitaker
45dc13e496
Use uintptr_t/intptr_t when casting between pointer and integer.
...
The code was using (unsigned) long, but a long is 32-bits in the
Windows 64-bit ABI.
2015-05-05 23:00:09 +01:00
Cary R
1cbc38100e
Update some cppcheck suppression files
2015-04-08 19:36:21 -07:00
Cary R
ba31252226
Update fstapi files to latest from GTKWave
2015-04-02 14:59:38 -07:00
Maciej Suminski
d406545331
vpi: $ivlh_{rising,falling}_edge functions.
2015-03-06 17:58:04 +01:00
Cary R
24be13d825
Add support for SV strings to the scanf routines
2015-03-03 17:13:16 -08:00
Cary R
8e0ae733ca
Add support for a SV string to $swrite and $sformat
2015-02-28 11:46:58 -08:00
Cary R
ae629f8c41
Add ability to put a string value to a SV string (from plusargs)
2015-02-25 19:20:50 -08:00
Larry Doolittle
3c38b2972d
Add -Wstrict-prototypes to CFLAGS
...
... and patch vpi/sys_lxt.c so no new warnings are triggered.
2015-02-25 17:52:44 -08:00
Cary R
f1436fbe62
Update fstapi.h to latest from GTKWave
2015-02-25 17:40:18 -08:00
Maciej Suminski
a02ebc3114
$ivl_darray_method$[from/to]_vec works with constants.
2015-02-04 16:02:38 +01:00
Cary R
21c60b38e1
Fix space issues in the code.
2015-01-15 17:47:39 -08:00
Cary R
78c6b3cad2
More updates for sys_darray.c (fix 32-bit crash and optimize)
2015-01-15 17:44:13 -08:00
Cary R
0e3a758894
Some cleanup of the calltf functions in sys_darray.c
2015-01-14 22:22:02 -08:00
Cary R
d682029240
Update compiletf routines in sys_darray to be more exact
2015-01-14 19:58:42 -08:00
Cary R
c858dea2d5
Fix compile warning (remainder is a global)
2015-01-14 17:22:27 -08:00
Maciej Suminski
961d6a8f3b
vpi: $left and $right functions for arrays and strings.
2015-01-12 11:08:31 +01:00
Maciej Suminski
288ebf011c
vpi: Moved $ivl_darray_method$[from/to]_vec to sys_darray.c
2015-01-12 11:08:31 +01:00
Maciej Suminski
0ae304b6a8
vpi: Added $ivl_darray_method$from_vec.
...
Converts a vector to dynamic array of vectors.
2015-01-12 11:08:31 +01:00
Maciej Suminski
5e61bb64b7
vpi: Added $ivl_darray_method$to_vec.
...
Converts a dynamic array of vectors to a single vector.
2015-01-12 11:08:31 +01:00
Cary R
9c75a4b96b
Fix a memory leak when the dump file cannot be opened
2015-01-08 16:14:08 -08:00
Cary R
23ad62f317
Update cppcheck results
2014-12-28 09:27:14 -08:00
Cary R
ac20008606
Update lz4 files from GTKWave
2014-12-28 09:25:54 -08:00
Stephen Williams
f3ba335493
Merge pull request #49 from orsonmmz/darray_vpi
...
Support for dynamic arrays in the VPI
2014-12-01 17:12:57 -08:00
Cary R
68258f244e
Update cppcheck suppression file for latest lz4.c file
2014-11-29 07:36:51 -08:00
Cary R
ee34ccec70
Update lz4 files from GTKWave
2014-11-29 07:36:44 -08:00
Maciej Suminski
a8d43fa743
vvp: Stop simulation in case of errors in $ivl_string_method$to_vec.
2014-11-28 14:14:42 +01:00
Maciej Suminski
21c8b8ca5a
vpi: Added $ivl_string_method$to_vec for strings to vectors conversion.
2014-11-27 17:36:23 +01:00
Cary R
da4200c5bd
Update lz4 files to the latest from GTKWave
2014-10-13 09:44:57 -07:00
Cary R
985a3eb206
Update lz4 files to the latest from GTKWave
2014-09-26 15:04:55 -07:00
Cary R
1572dcd3fd
Add a couple missing va_end() calls
2014-09-05 15:40:23 -07:00
Stephen Williams
ea5789e4d9
Implement $low() for certain types.
2014-08-21 16:44:46 -07:00
Stephen Williams
c9ff48bd4e
Add support for dynamic array/queue "last" index ($)
...
Internally, treat the "$" as a special expression type that takes
as an argument the signal that is being indexed. In the vvp target,
use the $last system function to implement this.
2014-08-21 16:44:45 -07:00