Martin Whitaker
a69de8b94a
Rework last value storage in vvp_fun_anyedge functors.
...
This prepares the way to support strings and object handle values.
2020-08-23 11:04:44 +01:00
Cary R
0a69303164
Refactor array store for string/real and skip saving when given an undefined index
2020-08-16 19:49:34 -07:00
Cary R
505ee1a96c
Refactor store for real/string
2020-08-16 19:23:41 -07:00
Cary R
aa013a0ef0
Refactor store prop
2020-08-16 19:08:34 -07:00
Cary R
4bf502741d
Refactor store DAR
2020-08-16 18:37:28 -07:00
Cary R
8e3afebb7b
Refactor set DAR object
2020-08-16 18:00:41 -07:00
Martin Whitaker
bd0133b386
Fix GitHub issue #361 - explicit cast check on function return value.
...
A function call returning an enumeration value can be assigned to an
enumeration variable without an explict cast.
2020-08-14 12:30:05 +01:00
Cary R
43441066eb
More refactoring in vthread
2020-08-13 23:28:18 -07:00
Cary R
f3e4287d0a
Refactor prop routines to use common template
2020-08-13 22:30:21 -07:00
Cary R
52c3b901e0
When available print file/line information with thread error messages
2020-08-13 22:05:31 -07:00
Cary R
294005c5b2
Refactor load DAR routines
2020-08-13 21:48:52 -07:00
Cary R
3993241d04
Refactor more of the queue code
2020-08-11 19:46:36 -07:00
Cary R
f6d8cfc80c
Add file/line to Sorry queue message
2020-08-11 19:46:22 -07:00
Cary R
112ebb48d8
Add file/line information to procedural warnings and darray fixes
...
When -pfileline=1 is used the queue procedural warnings have file
and line information added to the messages. Also switch the trace
debugging to be off by default.
Also, Add some preliminary missing darray functionality.
2020-08-10 22:01:55 -07:00
Cary R
61884e559c
Add support for assigning a queue using a normal concatenation
2020-08-09 21:10:30 -07:00
Cary R
1a0c06566d
Update vvp code generation to properly emit file/line for void functions
2020-08-09 20:11:46 -07:00
Cary R
e77d22e135
Add file and line information to warning message
2020-08-07 01:02:00 -07:00
Cary R
bff115b9f7
Add initial support for assigning between queues and darrays
2020-08-07 00:23:43 -07:00
Martin Whitaker
3a70a84e68
Don't use libhistory if libreadline includes the history functions.
2020-08-06 23:58:45 +01:00
Martin Whitaker
a5b3c0483a
Set default nm tool if $NM is not defined.
2020-08-06 23:49:45 +01:00
Martin Whitaker
9d15b771b1
Fix GitHub issue #356 - use pull strength for tri0/tri1 tie-offs.
...
When connecting module inout ports, an island is created. If there
is no other driver on one of the island ports, a tie-off is added.
In the case of a tri0 or tri1 net, this must have the correct (pull)
drive strength.
2020-08-06 14:20:16 +01:00
Cary R
eb8f457803
Fix a spacing issue in output
2020-08-05 23:19:39 -07:00
Cary R
761dc35e0b
A queue or darray can be assign from a queue or darray.
2020-08-05 23:19:32 -07:00
Martin Whitaker
2f317065aa
Fix GitHub issue #352 - typo in README.txt (%time -> $time).
2020-08-05 11:33:34 +01:00
Cary R
a0ef23605a
Update some functions to use inline
2020-08-04 22:11:36 -07:00
Cary R
538a03ba8e
Add templates for queue push
2020-08-04 22:07:02 -07:00
Cary R
f638e9dd5d
Add templates for queue pop
2020-08-04 21:48:47 -07:00
Cary R
84eb70660d
Switch qinsert to use a template
2020-08-04 21:14:17 -07:00
Cary R
d1d6c0f5d2
Start refactoring the queue routines
2020-08-03 23:45:56 -07:00
Cary R
199ed39abe
Report when the array pattern is larger than the maximum queue size
2020-08-02 23:40:35 -07:00
Cary R
83db691586
Merge branch 'master' of github.com:steveicarus/iverilog
2020-07-30 19:54:59 -07:00
Cary R
2530041a38
Add support for assign array patterns to a queue
2020-07-30 19:52:38 -07:00
Martin Whitaker
07bbf4ce0f
CI: run on both Ubuntu 16.04 and 18.04.
2020-07-30 16:40:40 +01:00
Martin Whitaker
8e4cc8e887
Use GNU make pattern rules to handle multiple file output from bison.
...
With a pattern rule, the recipe will only be executed once, even when
the rule has multiple targets. Using this to handle the output from
bison is included as an example in the GNU make manual.
This fixes the makefiles so that bison-generated header files will be
regenerated if they are deleted.
2020-07-30 16:27:01 +01:00
martinwhitaker
a4c9919e3a
Merge pull request #349 from hzeller/fix-bison-include
...
Bison includes its generated header in *.cc. Generate with correct name.
2020-07-30 15:53:21 +01:00
martinwhitaker
929ffed6ab
Merge pull request #347 from vowstar/fix-nm
...
aclocal.m4: fix issue in cross-compiling
2020-07-30 09:38:22 +01:00
Cary R
a2ba8a16b1
Add support for inserting into a queue
2020-07-29 23:00:19 -07:00
Cary R
bed4758b0f
A value of all X or Z can be an immediate number
2020-07-29 23:00:09 -07:00
Henner Zeller
5b699c1be7
Bison includes its generated header in *.cc. Generate with correct name.
...
The current bison (3.7) generates a *.cc file that includes the header
it generated. For parse.cc this would be parse.hh. Right now, we rename
this header to have a common name used in other files, but this results
in a compile error for the parse.cc file:
parse.cc:462:10: fatal error: parse.hh: No such file or directory
462 | #include "parse.hh"
| ^~~~~~~~~~
Fix this by telling bison to output the header file to the correct
filename in the first place so that we don't have to rename it.
(using the --defines instead of -d option).
This looks like a bison specific option not available in Posix yacc;
but looks like we're requiring bison anyway.
Signed-off-by: Henner Zeller <h.zeller@acm.org>
2020-07-29 15:29:08 -07:00
Huang Rui
d827f674cc
aclocal.m4: fix the comment contradicts the previous line
...
Changed to "the nm(1) utility or an equivalent is available,
and its name is defined by the $NM variable.
Signed-off-by: Huang Rui <vowstar@gmail.com>
2020-07-28 21:15:49 +08:00
Martin Whitaker
e69549034d
Fix potential buffer overflows (GitHub issue #346 ).
2020-07-28 13:17:57 +01:00
Cary R
fdd902e446
Remove some clang warnings
2020-07-27 21:56:29 -07:00
Cary R
14ade1a9f4
Pass the max size when storing to a queue
2020-07-27 21:24:22 -07:00
Cary R
cf8222fcfe
A queue does not have dimensions so just assume the base is 0 for an L-val
2020-07-26 14:02:37 -07:00
Cary R
c969c324ed
Add initial support for using a queue element as an L-value
2020-07-26 14:02:29 -07:00
Cary R
520d5b392a
Add support for pop_back/front without ()
2020-07-25 22:16:54 -07:00
Cary R
6ecd43d947
Add/update queue compile time error messages
2020-07-25 16:33:30 -07:00
Cary R
d1b75d9407
Update some queue warning messages and optimize element erase
2020-07-25 15:32:28 -07:00
Cary R
1a4345cce9
Add the ability to delete an element of a queue
2020-07-25 00:49:42 -07:00
Huang Rui
f3396d502d
aclocal.m4: fix issue in cross-compiling
...
The aclocal.m4 called nm directly.
It can cause issue in cross-compiling and because is not possible
use a different NM implementation (like llvm-nm).
The compile error log:
https://bugs.gentoo.org/attachment.cgi?id=648556
Closes: https://bugs.gentoo.org/731906
Signed-off-by: Huang Rui <vowstar@gmail.com>
2020-07-25 12:50:49 +08:00