Stephen Williams
0f9828f179
Fix vec4 overflow of times when they are >32bits.
2014-01-19 14:28:39 -08:00
Stephen Williams
d2c2d6d8dc
vec4 versions of %cassign/vec4/off and %force/vec4/off send flags[4].
2014-01-18 17:08:36 -08:00
Stephen Williams
f94a655121
Yet again, try to fix vec4 calculation of n-dimensional array index.
2014-01-18 16:04:25 -08:00
Stephen Williams
078a3fd409
Was a little too aggressive with the lossless elab_and_eval
...
The index expressions ARE self-sized context, we just need to
force the EXPAND flag to make this work.
2014-01-17 18:22:11 -08:00
Stephen Williams
dfaed128c0
Fix %store/vec4 overlap of vectors written with extreme indices.
2014-01-15 16:30:34 -08:00
Stephen Williams
1fc4093191
Fix possible overflow in calculation of canonical indices.
2014-01-15 14:26:53 -08:00
Stephen Williams
ae1f8be277
Wrap up vpi access to vec4 stack items.
2014-01-14 17:10:03 -08:00
Stephen Williams
d8533104b0
Cleanup vec4 handling of suppressed store/assign due to bad offset/index math.
2014-01-14 12:00:39 -08:00
Stephen Williams
c6c697bdb7
WRap up vec4 support for system function calls.
2014-01-14 09:22:23 -08:00
Stephen Williams
660d59a7a9
vec4 versions of the %force instructions.
2014-01-13 18:57:03 -08:00
Stephen Williams
92a5e6a698
vec4 based calls to simple real system functions.
2014-01-13 17:46:39 -08:00
Stephen Williams
aaa054a932
Fix botched implementations of vec4 based shift.
2014-01-13 17:46:14 -08:00
Stephen Williams
079065ea73
Remove some dead code in tgt-vvp.
2014-01-13 17:45:44 -08:00
Stephen Williams
1905264061
vec4 support for part select of memory word to VPI function.
2014-01-13 16:12:56 -08:00
Stephen Williams
b0a9430e98
Wrap up vecc4 support for left/right shift expressions.
2014-01-13 16:11:47 -08:00
Stephen Williams
6a93b6a7e4
Fix some subtle code generator bugs with wide literals and large r-values.
2014-01-07 18:46:35 -08:00
Stephen Williams
ec6009dd8f
Compile out the T<...> format in vvp.
...
This ifdef's the code out. Leave it in place for a little longer
for reference.
2014-01-06 20:36:26 -08:00
Stephen Williams
4820d46353
Implement some vpi_get_value formats for vec4 stack values.
2014-01-06 20:27:14 -08:00
Stephen Williams
a2845cee70
Update %pow instructions to use vec4 stack.
2014-01-06 10:34:07 -08:00
Stephen Williams
c897ca017c
Update %div instruction to vec4 version.
2014-01-06 10:14:49 -08:00
Stephen Williams
aee540d8bb
Fix sort of %event command in vvp compile list.
...
The sort is important, the names must be sorted because the table is
searched using binary search.
2014-01-06 09:12:42 -08:00
Stephen Williams
19402aeef2
get vpiStringVal from vec4 stack positions.
2014-01-06 08:35:49 -08:00
Stephen Williams
fcc0a6a203
vec4 string literal expressions
2014-01-06 08:35:23 -08:00
Stephen Williams
e5eb754150
vec4 versions of a bunch of unary operators.
2014-01-05 14:12:27 -08:00
Stephen Williams
063c6d6065
Add the %event instruction, remove %ix/get and %ix/get/s.
2014-01-05 12:39:52 -08:00
Stephen Williams
2fc8ce8a16
Implement vec4 basec %assign delay and event / vpiTimeVal for functions.
2014-01-05 12:04:16 -08:00
Stephen Williams
1a3adbe9cd
Vec4 store to memories.
...
This also reworks the working of the %store/vec4 instruction to
take a part offset, and eliminate the %store/vec4/off instruction.
2014-01-05 10:30:59 -08:00
Stephen Williams
63fa44fa4a
vec4 support for ufuncs and ligical AND.
2014-01-05 17:15:30 +00:00
Stephen Williams
f89dbd48c8
Add vec4 support for bitwise or/nor/nand/xor/xnor.
2014-01-04 23:48:16 +00:00
Stephen Williams
9fc3e84e93
vec4 cassign to part selects.
2014-01-04 22:58:58 +00:00
Stephen Williams
e708a5b59d
Handle vec4 part selects / vec4 cassign / repeat statements
...
These features need to be adapted to the vec4 stack.
2014-01-04 22:11:07 +00:00
Stephen Williams
d55e4c0552
Redesign support for system functions that return vec4
...
Redsign the handling of the return value, including a rework of
the %vpi_func syntax to carry the needed information.
Add a few more arithmetic operator instructions.
2014-01-04 22:06:58 +00:00
Stephen Williams
54926840e6
Handle vec4 stack version of concatenation.
2013-12-28 07:50:37 +02:00
Stephen Williams
5ef077fdf6
Start work on converting vec4 expressions to use stack.
...
Instead of using a bit4 space to hold thread vectors, create a
vec4 stack--much like the real, string, and object stacks--to
hold intermediate values.
2013-12-27 17:04:42 +02:00
Cary R
92e4ca3a92
Report that vpi_handle_by_index() is not supported for a vpiNet
2013-12-12 17:10:26 -08:00
Martin Whitaker
9e25884f12
Fix for br942 - allow function declaration in VHDL architecture.
2013-12-11 23:00:58 +00:00
Stephen Williams
819770a6c4
Handle enumerations as packed struct/union members.
...
There were also some subtleties related to using enumerations
from typedefs and using them in multiple places. Fix various
bugs related to those issues.
2013-12-07 12:20:28 -08:00
Stephen Williams
7669a42cfb
Handle some assertion syntax in the parser.
...
Implement some yacc rules for assertion syntax.
Add the -gassertions/-gno-assertions command-line flags to
enable or disable assertions.
2013-12-07 12:20:28 -08:00
Stephen Williams
0495d75fcb
More relaxed handling of types of packed struct members as l-values.
2013-12-07 12:20:28 -08:00
Stephen Williams
0d6c15e45a
Handle packed unions properly during elaboration.
...
This also gets r-value use of packed unions correct.
2013-12-07 12:20:28 -08:00
Stephen Williams
49756a8e7a
Unions through pform.
2013-12-07 12:20:28 -08:00
Stephen Williams
0b4056817a
Generalize struct member type
2013-12-07 12:20:28 -08:00
Stephen Williams
aced587461
Macros with formal arguments can have default text for those arguments.
2013-12-07 12:20:28 -08:00
Cary R
077bd5b7ef
Do not return a handle to a port when searching by name
...
The standard explicitly states that only object with a full name
can be searched for by name. A port does not have a full name and
hence should be skipped so that a different object (the signal,
etc.) can be returned. This patch adds code to skip ports when
searching for an object handle by name.
2013-12-06 18:28:02 -08:00
Cary R
bf9781e8fd
In tgt-blif the code must be linked with the C++ compiler
2013-12-06 15:09:56 -08:00
Cary R
40840368bb
Fix two compile warnings under RHEL-5 with gcc 4.1.2-54
2013-12-04 16:45:43 -08:00
Cary R
5946fa46a6
Fix memory leak in %putc/str/v opcode.
2013-12-04 16:30:36 -08:00
Cary R
196df151aa
Correctly cleanup class and string object when using valgrind
2013-12-04 16:28:28 -08:00
Stephen Williams
c1566bc02b
Merge branch 'master' of github.com:steveicarus/iverilog
2013-12-04 16:22:11 -08:00
Stephen Williams
f349197df3
Describe the %putc/str/v vvp opcode.
2013-12-04 16:22:01 -08:00