Maciej Suminski
c846b2cf3f
vhdlpp: 'integer' is emitted as 'integer' instead of 'bool [31:0]'.
2014-08-22 16:45:17 +02:00
Maciej Suminski
10446df80e
vhdlpp: Invert range in ExpAggregate when necessary.
2014-08-22 16:23:22 +02:00
Maciej Suminski
0a2100c87f
vhdlpp: Turn on the reg_flag for types that cannot be packed.
2014-08-22 16:22:59 +02:00
Maciej Suminski
27730395ca
vhdlpp: Type of an array is selected depending on the element type.
2014-08-22 10:49:55 +02:00
Maciej Suminski
8e9c25a23e
vhdlpp: Added 'packed' property for VTypes.
...
It detetermines if a type can be used as the base type of a packed array.
2014-08-22 10:45:02 +02:00
Maciej Suminski
feccae56bf
libmisc: Added empty_perm_string.
2014-08-22 10:42:51 +02:00
Stephen Williams
5de83906f7
Sorry message for multi-dimension foreach loop indices.
2014-08-21 20:34:55 -07:00
Stephen Williams
8b969202c0
Clean up some bugs introduced by recent patches.
2014-08-21 20:21:23 -07:00
Stephen Williams
ea5789e4d9
Implement $low() for certain types.
2014-08-21 16:44:46 -07:00
Stephen Williams
f602ae84ab
Elaborate foreach loops as synthetic for loops.
...
Create an implicit scope to hold the index variable, and
generate a for loop to perform the functionality of the
foreach.
2014-08-21 16:44:46 -07:00
Stephen Williams
335db49282
Add vvp implementations for pop_back and pop_front methods.
2014-08-21 16:44:46 -07:00
Stephen Williams
8c2d51142b
Elaborate pop_back/pop_front methods on dynamic arrays.
2014-08-21 16:44:46 -07:00
Stephen Williams
5ee253b03b
Fix mis-spelled vpiStatisARray in sv_vpi_user.h header file
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
Stephen Williams
9b4681918b
Array access to queue variables.
2014-08-21 16:44:45 -07:00
Stephen Williams
0894bc6409
Non-synthesis version of the devel-stub.sh by default.
2014-08-21 16:44:45 -07:00
Stephen Williams
da63ef02d4
Implement the size method for queues.
...
This works by translating it to a $size() system function call.
The $size function is already implemented for dynamic queues and
it is easy enough to expand it for queues.
2014-08-21 16:44:45 -07:00
Stephen Williams
a730572e37
Elaborate size method of darray/queue objects.
2014-08-21 16:44:45 -07:00
Stephen Williams
d891285326
vvp code generation for push_back/push_front for queue objects.
2014-08-21 16:44:45 -07:00
Stephen Williams
e8b8fcba57
Support declaring queue variables all the way to vvp.
...
Nothing actually useful happens here, but the declarations
are functional.
2014-08-21 16:44:45 -07:00
Stephen Williams
6d052d4ff7
Handle queue types and expressions at pform level.
2014-08-21 16:44:45 -07:00
Maciej Suminski
72ff9ac00b
vhdlpp: Aggregate expression are elaborated if
...
they are used for Signal/Variable initalization.
2014-08-20 14:18:16 +02:00
Maciej Suminski
c92dea77fc
vhdlpp: Basic support for unbounded array types.
...
Once a signal/variable of unbounded array type becomes limited in its size, it
is emitted as a packed array. Therefore currently it works only for
bit/logic/reg/wire types.
2014-08-15 10:21:45 +02:00
Cary R
4ea512c4fd
Require a space between the synthesis and translate_* key words
2014-08-11 15:05:03 -07:00
Martin Whitaker
89f1344288
Fix for GitHub issue #33 - Problem with multi-dimensional arrays.
...
normalize_variable_unpacked() was not correctly calculating the
minimum expression width required to calculate the canonical
index.
2014-08-11 20:23:29 +01:00
Stephen Williams
96414af721
Merge branch 'master' of github.com:steveicarus/iverilog
2014-08-09 08:04:46 -07:00
Stephen Williams
2d2a720ea8
Do a better job with synthesis translate pragmas.
2014-08-09 08:04:25 -07:00
Maciej Suminski
9031f392ba
Convert string to bitstring in SigVarBase
...
constructor if applicable (vhdlpp).
2014-08-08 11:20:07 +02:00
Maciej Suminski
4786f80b0b
Add the string terminator for binary bitstrings.
2014-08-08 09:52:57 +02:00
Cary R
0f294cb607
Merge branch 'master' of github.com:steveicarus/iverilog
2014-08-07 16:26:26 -07:00
Cary R
f4c88b4a01
Add message that L-value concatenation is not supported in synthesis
2014-08-07 16:26:08 -07:00
Stephen Williams
374948ce1b
Merge pull request #35 from orsonmmz/real
...
Removed ExpReal::evaluate().
2014-08-07 08:47:27 -07:00
Maciej Suminski
6a2b579fb0
Removed ExpReal::evaluate().Its signature does not match the one meant to be overridden.
2014-08-07 09:48:35 +02:00
Maciej Suminski
d2ad7a4d28
Increase the output precision for floating point types.
2014-08-06 17:04:52 +02:00
Maciej Suminski
5830ecd67e
Avoid freeing the primitive types classes.
2014-08-06 15:01:59 +02:00
Maciej Suminski
69b145e216
Minor cleaning for valgrind output.
2014-08-06 15:01:28 +02:00
Maciej Suminski
5ed60a151f
Added support for real type in vhdlpp.
2014-08-06 15:00:35 +02:00
Stephen Williams
c7a36722e3
Merge branch 'master' of github.com:steveicarus/iverilog
2014-08-04 20:38:33 -07:00
Maciej Suminski
66d31b02be
Fixed vhdlpp segfault if it processes an entity without any ports declared.
2014-08-04 20:27:21 -07:00
Cary R
0a6d75f1db
Fix some cppcheck warnings (format string vs argument mismatches)
2014-08-01 18:55:44 -07:00
Stephen Williams
6a2956c672
Prepare snapshot 20140801
2014-08-01 14:07:30 -07:00
Stephen Williams
cdb1ea6264
Don't bother with cpp-precomp flag on OS/X.
2014-08-01 11:18:51 -07:00
Cary R
df1d0a7b47
Enable signed compare warning in the C code since it is now clean.
2014-07-31 12:26:15 -07:00
Cary R
8d9ac35202
Update lz4 files to latest from GTKWave
2014-07-28 14:04:05 -07:00
Cary R
945584c310
Fix memory leak in VAMS $simparam$str call.
2014-07-28 10:46:23 -07:00
Cary R
d6b6b76015
Update header files to use a more standard name to prevent rereading
...
This is from github report #16 . There are likely a few more issues
that need to be addressed though this takes care of the major ones.
2014-07-23 13:42:56 -07:00
Cary R
0cbd6d99af
SV: Add support for var decls in unnamed fork/join* blocks.
...
SystemVerilog allows variables to be declared in unnamed fork/join*
blocks. This patch adds support for this functionality.
2014-07-23 09:54:19 -07:00
Cary R
8e7e3c7493
Remove space issue
2014-07-22 18:59:58 -07:00
Cary R
588409389e
SV: Add support for var decls in unnamed begin/end blocks.
...
SystemVerilog allows variables to be declared in unnamed begin/end
blocks. This patch adds support for this functionality.
2014-07-22 18:58:23 -07:00
Stephen Williams
cc9d5f90e0
Merge branch 'master' of github.com:steveicarus/iverilog
2014-07-19 17:29:21 -07:00