Commit Graph

8851 Commits

Author SHA1 Message Date
Martin Whitaker ffb34861cf Fix GitHub issue #244: handle mixed signed/unsigned power operations.
The signed version of the power operation in vvp should only be used
if the exponent is signed. Both signed and unsigned versions will
produce the correct result regardless of the type of the base operand,
provided it has been appropriately extended to the result size.
2019-05-11 21:33:29 +01:00
Martin Whitaker c4f71db00a Update some comments. 2019-05-10 20:00:04 +01: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
Stephen Williams cc921de717 Improve mingw cross instructions. 2019-03-24 10:42:36 -07:00
Stephen Williams a518d594d2
Merge pull request #135 from udif/cross_compile
Fixed cross-compile using mingw 64 bit under Windows 10 Linux subsyst…
2019-03-24 10:28:23 -07:00
Stephen Williams c3575d379b
Merge branch 'master' into cross_compile 2019-03-24 10:27:33 -07:00
Martin Whitaker 51a13e883a Fix for GitHub issue 235: segfault when calling vpi_handle_by_name().
When vpi_handle_by_name() iterates over the VPI objects in a scope, handle
the case that vpi_get_str() returns a null value. This currently occurs if
the scope contains an enum type definition, as vpi_get_str() is not
implemented for __vpiEnumTypespec.
2019-03-23 17:21:40 +00:00
Tomasz Hemperek 45fa3b1dec
cleanup travis.yml 2019-03-23 16:29:09 +01:00
Stephen Williams df92caadbc Document cross-compile from Linux to Windows.
This uses the mingw32 tool chain on Linux to build Windows
binaries.
2019-03-22 13:57:38 -07:00
Stephen Williams c3d5b23ac4 Fix some Windows build issues. 2019-03-22 08:08:29 -07:00
Martin Whitaker 9369d6db57 Update README to say "or later" for build tool versions. 2019-03-16 12:40:08 +00:00
martinwhitaker 3b32288c6f
Merge pull request #232 from cdlscpmv/fix
Fix a typo in the man page
2019-03-16 12:32:00 +00:00
Konst Mayer f95ae911d0 Fix a typo in the man page 2019-03-13 00:16:41 +07:00
Martin Whitaker dc5429e5e7 Fix assertion failure on assignment to part of variable member (GitHub issue #226)
For now, output a "sorry" message, as the compiler doesn't support this.
2019-01-26 17:36:19 +00:00
Martin Whitaker 2ff6af254b Use LLONG_MIN instead of LONG_LONG_MIN.
GCC 8 no longer defines LONG_LONG_MIN. We already assume a C99 compliant
compiler in other places.
2019-01-26 16:47:28 +00:00
Martin Whitaker e745304cc4 Fix for GitHub issue #224 - import * does not import enum members. 2019-01-15 19:58:37 +00:00
Martin Whitaker 7cd078e7ab Restrict cast type to what's allowed by the IEEE standard. 2018-12-15 12:26:33 +00:00
Martin Whitaker 230f0bc13c Fix GitHub issue #219 and #220 - incorrect results from SV size cast. 2018-12-15 11:11:35 +00:00
Cary R 172d7eb0a3 Fix space issues in a couple files 2018-11-13 21:57:46 -08:00
Tomasz Hemperek 5cb562be48
No clang for travis. 2018-11-03 22:43:16 +01:00
Tomasz Hemperek 5911fbf872 Merge remote-tracking branch 'upstream/master' 2018-11-03 22:22:41 +01:00
Tomasz Hemperek cbe9bba291
Add windows build to travis-ci 2018-11-03 21:35:13 +01:00
Tomasz Hemperek a96609d482
Update .travis.yml 2018-11-03 08:15:22 +01:00
Tomasz Hemperek 8b67c9ff62
Update .travis.yml 2018-11-03 08:07:11 +01:00
Martin Whitaker 3612076943 Undo redefinition of unique_ptr at end of header files.
It seems that clang both defines __cplusplus < 201103L and provides
unique_ptr (GitHub issue #215).
2018-11-02 21:22:10 +00:00
Martin Whitaker 6887c31d8c Refactor vpi module path code.
Also restore the original behaviour of the '-M -' option, although it's
probably not needed now we add the default path last.
2018-10-29 20:33:52 +00:00
Martin Whitaker dd33da0d5b Merge branch 'alexforencich-master' 2018-10-29 19:37:33 +00:00
Alex Forencich a1ad6d4b51 Support IVERILOG_VPI_MODULE_PATH environment variable 2018-10-28 12:44:09 -07:00
Alex Forencich a638d1eed0 Check for too many paths specified and fix path priority so paths specified on command line supersede built-in paths 2018-10-28 12:43:40 -07:00
Cary R 844fa056f7 Update fstapi files to the latest from GTKWave 2018-10-12 21:30:20 -07:00
Martin Whitaker fdf353af29 Don't use MinGW strtod workaround when building for MinGW-w64.
The host triplet for MinGW-w64 has changed to more closely match that
for MinGW, so we need to update the pattern in the test.
2018-10-07 23:49:19 +01:00
Martin Whitaker 2f142c4858 Revert "Fix x86_64-w64-mingw32 build: undefined ___strtod"
This reverts commit bef04508f2.
2018-10-07 23:47:26 +01:00
Martin Whitaker 9d0d1938dc Fix bug in output of null character with %c format. 2018-10-07 18:59:53 +01:00
Martin Whitaker 5aae9ea770 Fix bit width when converting real value to binary/hex string in VPI. 2018-10-07 17:17:33 +01:00
Martin Whitaker a03995b4da Fix another implicit fallthrough warning. 2018-10-07 11:23:40 +01:00
Martin Whitaker 5cd0ba08b1 Fix alloc size warning when building with recent GCC. 2018-10-06 23:25:13 +01:00
Martin Whitaker 6415d84ed5 Fix invalid cast of TF sizetf callback. 2018-10-06 22:56:04 +01:00
Martin Whitaker 3e25b04685 SIGHUP is not available in Windows. 2018-10-06 21:07:13 +01:00
Martin Whitaker 4ea18196c8 Fix deprecated dynamic exception specification warnings. 2018-10-06 21:02:41 +01:00
Martin Whitaker e71a76a1e2 Fix signed/unsigned comparison warning. 2018-10-06 20:40:54 +01:00
Martin Whitaker 0d20c50de4 Fix typo in last commit. 2018-10-06 20:22:12 +01:00
Martin Whitaker f1608e163f Fix implicit fallthrough warnings when building with recent GCC. 2018-10-06 20:15:42 +01:00
Cary R 27b5c2cdc8 Merge branch 'master' of github.com:steveicarus/iverilog 2018-10-06 09:27:10 -07:00
Cary R 7fa6eaef0a Update to latest GTKWAve files 2018-10-06 09:26:39 -07:00
Martin Whitaker 78317a2799 Fix auto_ptr deprecated warnings when building with recent GCC. 2018-10-06 17:15:31 +01: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 603ff303f5 Cleanly terminate vvp on SIGHUP or SIGTERM (GitHub issue #203). 2018-09-29 23:25:04 +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