Clifford Wolf
|
dbfd8460a9
|
Allow $size and $bits in verilog mode, actually check test case
|
2017-09-29 11:56:43 +02:00 |
Udi Finkelstein
|
e951ac0dfb
|
$size() now works correctly for all cases!
It seems the issues was that AST_MULTIRANGE is converted into a multirange_dimensions[] array on the AST_MEMORY node directly.
|
2017-09-26 20:34:24 +03:00 |
Udi Finkelstein
|
6ddc6a7af4
|
$size() seems to work now with or without the optional parameter.
Multidimensional arrays still don't work. I suspect the problem is that the array is flattened into a 1D array before $size() is evaluated.
|
2017-09-26 19:18:25 +03:00 |
Udi Finkelstein
|
7e391ba904
|
enable $bits() and $size() functions only when the SystemVerilog flag is enabled for read_verilog
|
2017-09-26 09:19:56 +03:00 |
Udi Finkelstein
|
2dea42e903
|
Added $bits() for memories as well.
|
2017-09-26 09:11:25 +03:00 |
Udi Finkelstein
|
17f8b41605
|
$size() now works with memories as well!
|
2017-09-26 08:36:45 +03:00 |
Udi Finkelstein
|
64eb8f29ad
|
Add $size() function. At the moment it works only on expressions, not on memories.
|
2017-09-26 06:25:42 +03:00 |
Clifford Wolf
|
8f8baccfde
|
Fix generation of vlogtb output in yosys-smtbmc for "rand reg" and "rand const reg"
|
2017-06-07 12:30:24 +02:00 |
Clifford Wolf
|
5f1d0b1024
|
Add $live and $fair cell types, add support for s_eventually keyword
|
2017-02-25 10:36:39 +01:00 |
Clifford Wolf
|
1e927a51d5
|
Preserve string parameters
|
2017-02-23 15:39:13 +01:00 |
Clifford Wolf
|
4fb8007171
|
Fix incorrect "incompatible re-declaration of wire" error in tasks/functions
|
2017-02-14 15:10:59 +01:00 |
Clifford Wolf
|
3928482a3c
|
Add $cover cell type and SVA cover() support
|
2017-02-04 14:14:26 +01:00 |
Clifford Wolf
|
78f65f89ff
|
Fix bug in AstNode::mem2reg_as_needed_pass2()
|
2017-01-15 13:52:50 +01:00 |
Clifford Wolf
|
2d32c6c4f6
|
Fixed handling of local memories in functions
|
2017-01-05 13:19:03 +01:00 |
Clifford Wolf
|
81a9ee2360
|
Added handling of local memories and error for local decls in unnamed blocks
|
2017-01-04 16:03:04 +01:00 |
Clifford Wolf
|
dfb461fe52
|
Added Verilog $rtoi and $itor support
|
2017-01-03 17:40:58 +01:00 |
Clifford Wolf
|
70d7a02cae
|
Added support for hierarchical defparams
|
2016-11-15 13:35:19 +01:00 |
Clifford Wolf
|
a926a6afc2
|
Remember global declarations and defines accross read_verilog calls
|
2016-11-15 12:42:43 +01:00 |
Clifford Wolf
|
2874914bcb
|
Fixed anonymous genblock object names
|
2016-11-04 07:46:30 +01:00 |
Clifford Wolf
|
56e2bb88ae
|
Some fixes in handling of signed arrays
|
2016-11-01 23:17:43 +01:00 |
Clifford Wolf
|
aa72262330
|
Added avail params to ilang format, check module params in 'hierarchy -check'
|
2016-10-22 11:05:49 +02:00 |
Clifford Wolf
|
bdc316db50
|
Added $anyseq cell type
|
2016-10-14 15:24:03 +02:00 |
Clifford Wolf
|
53655d173b
|
Added $global_clock verilog syntax support for creating $ff cells
|
2016-10-14 12:33:56 +02:00 |
Clifford Wolf
|
aaa99c35bd
|
Added $past, $stable, $rose, $fell SVA functions
|
2016-09-19 01:30:07 +02:00 |
Clifford Wolf
|
ab18e9df7c
|
Added assertpmux
|
2016-09-07 00:28:01 +02:00 |
Clifford Wolf
|
97583ab729
|
Avoid creation of bogus initial blocks for assert/assume in always @*
|
2016-09-06 17:34:42 +02:00 |
Clifford Wolf
|
aa25a4cec6
|
Added $anyconst support to yosys-smtbmc
|
2016-08-30 19:27:42 +02:00 |
Clifford Wolf
|
6f41e5277d
|
Removed $aconst cell type
|
2016-08-30 19:09:56 +02:00 |
Clifford Wolf
|
eae390ae17
|
Removed $predict again
|
2016-08-28 21:35:33 +02:00 |
Clifford Wolf
|
450f6f59b4
|
Fixed bug with memories that do not have a down-to-zero data width
|
2016-08-22 14:27:46 +02:00 |
Clifford Wolf
|
82a4a0230f
|
Another bugfix in mem2reg code
|
2016-08-21 13:23:58 +02:00 |
Clifford Wolf
|
dbdd8927e7
|
Minor improvements to AstNode::dumpAst() and AstNode::dumpVlog()
|
2016-08-21 13:18:09 +02:00 |
Clifford Wolf
|
fe9315b7a1
|
Fixed finish_addr handling in $readmemh/$readmemb
|
2016-08-20 13:47:46 +02:00 |
Clifford Wolf
|
f6629b9c29
|
Optimize memory address port width in wreduce and memory_collect, not verilog front-end
|
2016-08-19 18:38:25 +02:00 |
Clifford Wolf
|
e9fe57c75e
|
Only allow posedge/negedge with 1 bit wide signals
|
2016-08-10 19:32:11 +02:00 |
Clifford Wolf
|
4056312987
|
Added $anyconst and $aconst
|
2016-07-27 15:41:22 +02:00 |
Clifford Wolf
|
a7b0769623
|
Added "read_verilog -dump_rtlil"
|
2016-07-27 15:40:17 +02:00 |
Clifford Wolf
|
7fef5ff104
|
Using $initstate in "initial assume" and "initial assert"
|
2016-07-21 14:37:28 +02:00 |
Clifford Wolf
|
5c166e76e5
|
Added $initstate cell type and vlog function
|
2016-07-21 14:23:22 +02:00 |
Clifford Wolf
|
d7763634b6
|
After reading the SV spec, using non-standard predict() instead of expect()
|
2016-07-21 13:34:33 +02:00 |
Clifford Wolf
|
721f1f5ecf
|
Added basic support for $expect cells
|
2016-07-13 16:56:17 +02:00 |
Clifford Wolf
|
9a101dc1f7
|
Fixed mem assignment in left-hand-side concatenation
|
2016-07-08 14:31:06 +02:00 |
Ruben Undheim
|
a8200a773f
|
A few modifications after pull request comments
- Renamed Design::packages to Design::verilog_packages
- No need to include ast.h in rtlil.h
|
2016-06-18 14:23:38 +02:00 |
Ruben Undheim
|
178ff3e7f6
|
Added support for SystemVerilog packages with localparam definitions
|
2016-06-18 10:53:55 +02:00 |
Clifford Wolf
|
766032c5f8
|
Fixed procedural assignments to non-unique lvalues, e.g. {y,y} = {a,b}
|
2016-05-27 17:55:03 +02:00 |
Clifford Wolf
|
ee071586c5
|
Fixed access-after-delete bug in mem2reg code
|
2016-05-27 17:25:33 +02:00 |
Clifford Wolf
|
e9ceec26ff
|
fixed typos in error messages
|
2016-05-27 16:37:36 +02:00 |
Clifford Wolf
|
570014800a
|
Include <cmath> in yosys.h
|
2016-05-08 10:50:39 +02:00 |
Clifford Wolf
|
0bc95f1e04
|
Added "yosys -D" feature
|
2016-04-21 23:28:37 +02:00 |
Clifford Wolf
|
5a09fa4553
|
Fixed handling of parameters and const functions in casex/casez pattern
|
2016-04-21 15:31:54 +02:00 |
Clifford Wolf
|
5328a85149
|
Do not set "nosync" on task outputs, fixes #134
|
2016-03-24 12:16:47 +01:00 |
Clifford Wolf
|
4f0d4899ce
|
Added support for $stop system task
|
2016-03-21 16:19:51 +01:00 |
Clifford Wolf
|
e5d42ebb4d
|
Added $display %m support, fixed mem leak in $display, fixes #128
|
2016-03-19 11:51:13 +01:00 |
Clifford Wolf
|
ef4207d5ad
|
Fixed localparam signdness, fixes #127
|
2016-03-18 12:15:00 +01:00 |
Clifford Wolf
|
b6d08f39ba
|
Set "nosync" attribute on internal task/function wires
|
2016-03-18 10:53:29 +01:00 |
Clifford Wolf
|
bcc873b805
|
Fixed some visual studio warnings
|
2016-02-13 17:31:24 +01:00 |
Rick Altherr
|
34969d4140
|
genrtlil: avoid converting SigSpec to set<SigBit> when going through removeSignalFromCaseTree()
|
2016-01-31 09:20:16 -08:00 |
Clifford Wolf
|
c86fbae3d1
|
Fixed handling of re-declarations of wires in tasks and functions
|
2015-11-23 17:09:57 +01:00 |
Clifford Wolf
|
7ae3d1b5a9
|
More bugfixes in handling of parameters in tasks and functions
|
2015-11-12 13:02:36 +01:00 |
Clifford Wolf
|
34f2b84fb6
|
Fixed handling of parameters and localparams in functions
|
2015-11-11 10:54:35 +01:00 |
Clifford Wolf
|
207736b4ee
|
Import more std:: stuff into Yosys namespace
|
2015-10-25 19:30:49 +01:00 |
Clifford Wolf
|
e51dcc83d0
|
Fixed complexity of assigning to vectors in constant functions
|
2015-10-01 12:15:35 +02:00 |
Clifford Wolf
|
9caeadf797
|
Fixed detection of unconditional $readmem[hb]
|
2015-09-30 15:46:51 +02:00 |
Clifford Wolf
|
f9d7df0869
|
Bugfixes in $readmem[hb]
|
2015-09-25 13:49:48 +02:00 |
Clifford Wolf
|
b2544cfcf7
|
Fixed segfault in AstNode::asReal
|
2015-09-25 12:38:01 +02:00 |
Clifford Wolf
|
924d9d6e86
|
Added read-enable to memory model
|
2015-09-25 12:23:11 +02:00 |
Clifford Wolf
|
1b8cb9940e
|
Fixed AstNode::mkconst_bits() segfault on zero-sized constant
|
2015-09-24 11:21:20 +02:00 |
Clifford Wolf
|
089c1e176f
|
Bugfix in handling of multi-dimensional memories
|
2015-09-23 07:56:17 +02:00 |
Clifford Wolf
|
559929e341
|
Warning for $display/$write outside initial block
|
2015-09-23 07:16:03 +02:00 |
Clifford Wolf
|
6176f4d081
|
Fixed multi-level prefix resolving
|
2015-09-22 20:52:02 +02:00 |
Andrew Zonenberg
|
c469f22144
|
Improvements to $display system task
|
2015-09-19 10:33:37 +02:00 |
Clifford Wolf
|
9db05d17fe
|
Added AST_INITIAL checks for $finish and $display
|
2015-09-18 09:50:57 +02:00 |
Andrew Zonenberg
|
7141f65533
|
Initial implementation of $display()
|
2015-09-18 09:36:46 +02:00 |
Andrew Zonenberg
|
e446e651cb
|
Initial implementation of $finish()
|
2015-09-18 09:30:25 +02:00 |
Clifford Wolf
|
eb38722e98
|
Fixed handling of memory read without address
|
2015-08-22 14:46:42 +02:00 |
Larry Doolittle
|
6c00704a5e
|
Another block of spelling fixes
Smaller this time
|
2015-08-14 23:27:05 +02:00 |
Larry Doolittle
|
022f570563
|
Keep gcc from complaining about uninitialized variables
|
2015-08-14 23:26:49 +02:00 |
Clifford Wolf
|
84bf862f7c
|
Spell check (by Larry Doolittle)
|
2015-08-14 10:56:05 +02:00 |
Clifford Wolf
|
8d6d5c30d9
|
Added WORDS parameter to $meminit
|
2015-07-31 10:40:09 +02:00 |
Clifford Wolf
|
4513ff1b85
|
Fixed nested mem2reg
|
2015-07-29 16:37:08 +02:00 |
Clifford Wolf
|
6c84341f22
|
Fixed trailing whitespaces
|
2015-07-02 11:14:30 +02:00 |
Clifford Wolf
|
13983e8318
|
Fixed handling of parameters with reversed range
|
2015-06-08 14:03:06 +02:00 |
Clifford Wolf
|
99b8746d27
|
Fixed signedness of genvar expressions
|
2015-05-29 20:08:00 +02:00 |
Clifford Wolf
|
422794c584
|
Const-fold parameter defs on-demand in AstNode::detectSignWidthWorker()
|
2015-03-01 11:20:22 +01:00 |
Clifford Wolf
|
1f1deda888
|
Added non-std verilog assume() statement
|
2015-02-26 18:47:39 +01:00 |
Clifford Wolf
|
d5ce9a32ef
|
Added deep recursion warning to AST simplify
|
2015-02-20 10:33:20 +01:00 |
Clifford Wolf
|
dc1a0f06fc
|
Parser support for complex delay expressions
|
2015-02-20 10:21:36 +01:00 |
Clifford Wolf
|
c2ba4fb2fd
|
Convert floating point cell parameters to strings
|
2015-02-18 23:35:23 +01:00 |
Clifford Wolf
|
e9368a1d7e
|
Various fixes for memories with offsets
|
2015-02-14 14:21:15 +01:00 |
Clifford Wolf
|
7f1a1759d7
|
Added "read_verilog -nomeminit" and "nomeminit" attribute
|
2015-02-14 11:21:12 +01:00 |
Clifford Wolf
|
a8e9d37c14
|
Creating $meminit cells in verilog front-end
|
2015-02-14 10:49:30 +01:00 |
Clifford Wolf
|
cd919abdf1
|
Added AstNode::simplify() recursion counter
|
2015-02-13 12:33:12 +01:00 |
Clifford Wolf
|
234a45a3d5
|
Ignore explicit assignments to constants in HDL code
|
2015-02-08 00:58:03 +01:00 |
Clifford Wolf
|
c8305e3a6d
|
Fixed a bug with autowire bit size
(removed leftover from when we tried to auto-size the wires)
|
2015-02-08 00:48:23 +01:00 |
Clifford Wolf
|
2a9ad48eb6
|
Added ENABLE_NDEBUG makefile options
|
2015-01-24 12:16:46 +01:00 |
Clifford Wolf
|
df9d096a7d
|
Ignoring more system task and functions
|
2015-01-15 13:08:19 +01:00 |
Clifford Wolf
|
a588a4a5c9
|
Fixed handling of "input foo; reg [0:0] foo;"
|
2015-01-15 12:53:12 +01:00 |
Clifford Wolf
|
8e8e791fb5
|
Consolidate "Blocking assignment to memory.." msgs for the same line
|
2015-01-15 12:41:52 +01:00 |
Clifford Wolf
|
eefe78be09
|
Fixed memory->start_offset handling
|
2015-01-01 12:56:01 +01:00 |
Clifford Wolf
|
0bb6b24c11
|
Added global yosys_celltypes
|
2014-12-29 14:30:33 +01:00 |
Clifford Wolf
|
90bc71dd90
|
dict/pool changes in ast
|
2014-12-29 03:11:50 +01:00 |
Clifford Wolf
|
137f35373f
|
Changed more code to dict<> and pool<>
|
2014-12-28 19:24:24 +01:00 |
Clifford Wolf
|
12ca6538a4
|
Fixed mem2reg warning message
|
2014-12-27 03:26:30 +01:00 |
Clifford Wolf
|
a6c96b986b
|
Added Yosys::{dict,nodict,vector} container types
|
2014-12-26 10:53:21 +01:00 |
Clifford Wolf
|
edb3c9d0c4
|
Renamed extend() to extend_xx(), changed most users to extend_u0()
|
2014-12-24 09:51:17 +01:00 |
Clifford Wolf
|
fe829bdbdc
|
Added log_warning() API
|
2014-11-09 10:44:23 +01:00 |
Clifford Wolf
|
37aa2e02db
|
AST simplifier: optimize constant AST_CASE nodes before recursively descending
|
2014-10-29 08:29:51 +01:00 |
Clifford Wolf
|
c4a2b3c1e9
|
Improvements in $readmem[bh] implementation
|
2014-10-26 23:29:36 +01:00 |
Clifford Wolf
|
70b2efdb05
|
Added support for $readmemh/$readmemb
|
2014-10-26 20:33:10 +01:00 |
Clifford Wolf
|
26cbe4a4e5
|
Fixed constant "cond ? string1 : string2" with strings of different size
|
2014-10-25 18:23:53 +02:00 |
Clifford Wolf
|
750c615e7f
|
minor indenting corrections
|
2014-10-19 18:42:03 +02:00 |
Parviz Palangpour
|
de8adb8ec5
|
Builds on Mac 10.9.2 with LLVM 3.5.
|
2014-10-19 11:14:43 -05:00 |
Clifford Wolf
|
84ffe04075
|
Fixed various VS warnings
|
2014-10-18 15:20:38 +02:00 |
William Speirs
|
fda52f05f2
|
Wrapped math in int constructor
|
2014-10-17 11:28:14 +02:00 |
Clifford Wolf
|
6b05a9e807
|
Fixed handling of invalid array access in mem2reg code
|
2014-10-16 00:44:23 +02:00 |
Clifford Wolf
|
35fbc0b35f
|
Do not the 'z' modifier in format string (another win32 fix)
|
2014-10-11 11:42:08 +02:00 |
Clifford Wolf
|
4569a747f8
|
Renamed SIZE() to GetSize() because of name collision on Win32
|
2014-10-10 17:07:24 +02:00 |
Clifford Wolf
|
f9a307a50b
|
namespace Yosys
|
2014-09-27 16:17:53 +02:00 |
Clifford Wolf
|
48b00dccea
|
Another $clog2 bugfix
|
2014-09-08 12:25:23 +02:00 |
Clifford Wolf
|
680eaaac41
|
Fixed $clog2 (off by one error)
|
2014-09-06 19:31:04 +02:00 |
Clifford Wolf
|
deff416ea7
|
Fixed assignment of out-of bounds array element
|
2014-09-06 17:58:27 +02:00 |
Ruben Undheim
|
79cbf9067c
|
Corrected spelling mistakes found by lintian
|
2014-09-06 08:47:06 +02:00 |
Clifford Wolf
|
8927aa6148
|
Removed $bu0 cell type
|
2014-09-04 02:07:52 +02:00 |
Clifford Wolf
|
98442e019d
|
Added emscripten (emcc) support to build system and some build fixes
|
2014-08-22 16:20:22 +02:00 |
Clifford Wolf
|
74af3a2b70
|
Archibald Rust and Clifford Wolf: ffi-based dpi_call()
|
2014-08-22 14:22:09 +02:00 |
Clifford Wolf
|
ad146c2582
|
Fixed small memory leak in ast simplify
|
2014-08-21 17:33:40 +02:00 |
Clifford Wolf
|
6c5cafcd8b
|
Added support for DPI function with different names in C and Verilog
|
2014-08-21 17:22:04 +02:00 |
Clifford Wolf
|
085c8e873d
|
Added AstNode::asInt()
|
2014-08-21 17:11:51 +02:00 |
Clifford Wolf
|
490d7a5bf2
|
Fixed memory leak in DPI function calls
|
2014-08-21 13:09:47 +02:00 |
Clifford Wolf
|
7bfc4ae120
|
Added Verilog/AST support for DPI functions (dpi_call() still unimplemented)
|
2014-08-21 12:43:51 +02:00 |
Clifford Wolf
|
38addd4c67
|
Added support for global tasks and functions
|
2014-08-21 12:42:28 +02:00 |
Clifford Wolf
|
640d9fc551
|
Added "via_celltype" attribute on task/func
|
2014-08-18 14:29:30 +02:00 |
Clifford Wolf
|
acb435b6cf
|
Added const folding of AST_CASE to AST simplifier
|
2014-08-18 00:02:30 +02:00 |
Clifford Wolf
|
64713647a9
|
Improved AST ProcessGenerator performance
|
2014-08-17 02:17:49 +02:00 |
Clifford Wolf
|
d491fd8c19
|
Use stackmap<> in AST ProcessGenerator
|
2014-08-17 00:57:24 +02:00 |
Clifford Wolf
|
83e2698e10
|
AST ProcessGenerator: replaced subst_*_{from,to} with subst_*_map
|
2014-08-16 19:31:59 +02:00 |
Clifford Wolf
|
c7afbd9d8e
|
Fixed bug in "read_verilog -ignore_redef"
|
2014-08-15 01:53:22 +02:00 |
Clifford Wolf
|
978a933b6a
|
Added RTLIL::SigSpec::to_sigbit_map()
|
2014-08-14 23:14:47 +02:00 |
Clifford Wolf
|
c83b990458
|
Changed the AST genWidthRTLIL subst interface to use a std::map
|
2014-08-14 23:02:07 +02:00 |
Clifford Wolf
|
85e3cc12ac
|
Fixed handling of task outputs
|
2014-08-14 22:26:10 +02:00 |
Clifford Wolf
|
1bf7a18fec
|
Added module->ports
|
2014-08-14 16:22:52 +02:00 |
Clifford Wolf
|
d259abbda2
|
Added AST_MULTIRANGE (arrays with more than 1 dimension)
|
2014-08-06 15:52:54 +02:00 |
Clifford Wolf
|
91dd87e60b
|
Improved scope resolution of local regs in Verilog+AST frontend
|
2014-08-05 12:15:53 +02:00 |
Clifford Wolf
|
0129d41efa
|
Fixed AST handling of variables declared inside a functions main block
|
2014-08-05 08:35:51 +02:00 |
Clifford Wolf
|
768eb846c4
|
More bugfixes related to new RTLIL::IdString
|
2014-08-02 18:14:21 +02:00 |
Clifford Wolf
|
b9bd22b8c8
|
More cleanups related to RTLIL::IdString usage
|
2014-08-02 13:19:57 +02:00 |
Clifford Wolf
|
14412e6c95
|
Preparations for RTLIL::IdString redesign: cleanup of existing code
|
2014-08-02 00:45:25 +02:00 |
Clifford Wolf
|
bd74ed7da4
|
Replaced sha1 implementation
|
2014-08-01 19:01:10 +02:00 |
Clifford Wolf
|
cdae8abe16
|
Renamed port access function on RTLIL::Cell, added param access functions
|
2014-07-31 16:38:54 +02:00 |
Clifford Wolf
|
e6d33513a5
|
Added module->design and cell->module, wire->module pointers
|
2014-07-31 14:11:39 +02:00 |