Zachary Snow
b09fdaf76a
simplify shadowing notes non-trivial localparams too
2023-08-08 22:30:36 -04:00
Zachary Snow
5b035613ee
constant fold || and &&
2023-08-08 22:25:39 -04:00
CORRADI Quentin
619bde4be1
support for attributes in unary, binary, and ternary expressions
...
Co-authored-by: qcorradi <q.corradi22@imperial.ac.uk>
Co-authored-by: Zachary Snow <zach@zachjs.com>
2023-07-31 22:52:28 -04:00
Zachary Snow
211bce6bb1
bump iverilog version in CI
2023-07-31 22:44:41 -04:00
Zachary Snow
07caba64a5
simplify non-ANSI style port declaration dimensions
2023-07-31 21:31:34 -04:00
Zachary Snow
19b479d893
fix incorrect indentation in PortDecl.hs
2023-07-31 21:27:14 -04:00
Zachary Snow
bef9b1a3f0
allow inout task and function ports
2023-07-26 23:42:51 -04:00
Zachary Snow
896b375df0
replace tabs with spaces in test/dump/example.sv
2023-07-09 14:52:41 -04:00
Zachary Snow
d0e3b794bc
bump iverilog and use explicit named port connections in tests
2023-07-08 12:23:01 -04:00
Zachary Snow
0f8224023b
test runner simplifications
2023-06-24 15:47:22 -04:00
Zachary Snow
a29564459b
remove long-deprecated CLI flag aliases
2023-06-24 13:11:21 -04:00
Zachary Snow
1c74178417
use the tag alone as the version for future releases
2023-06-24 12:51:42 -04:00
Zachary Snow
6082cae4d1
release v0.0.11
2023-06-22 00:11:49 -04:00
Zachary Snow
2017201d1b
minor changelog clarification
2023-06-22 00:10:41 -04:00
Zachary Snow
2d32fe9c2d
minor help text updates
2023-06-22 00:05:06 -04:00
Zachary Snow
04d65bb388
added --write directory mode with one file per module
2023-06-21 08:25:42 -04:00
Zachary Snow
911243dac4
add --top for filtering uninstantiated modules
2023-06-18 22:36:43 -04:00
Zachary Snow
3b2a55a69c
better error message for indexed atoms
2023-06-18 22:18:20 -04:00
Zachary Snow
c103d0cb67
bump license year
2023-06-18 15:02:05 -04:00
Zachary Snow
a05659cd06
better unfinished conditional directive error message
2023-06-17 12:56:23 -04:00
Zachary Snow
80095810b9
remove unneeded FlexibleInstances pragma in Type.hs
2023-06-13 23:07:21 -04:00
Zachary Snow
51c90baf5e
support for loading from library directories
2023-06-13 22:53:36 -04:00
Zachary Snow
aa429204ea
minor AlwaysKW coverage improvements
2023-06-10 23:52:17 -04:00
Zachary Snow
3db3fc0caf
bump iverilog version in CI
2023-06-10 23:29:01 -04:00
Zachary Snow
2bb9c82c1e
drop Eq instance for AlwaysKW Kind
2023-06-06 23:59:29 -04:00
CORRADI Quentin
4756f49750
avoid dangling procedural else
...
* Remove unneeded begin/end when the loop is a do/while
* Dangling else check passes through statement attributes (bug fix)
* Dangling else check passes through most control flow structures to reduce unneeded begin/end
* Add test case and update changelog
---------
Co-authored-by: qcorradi <q.corradi22@imperial.ac.uk>
Co-authored-by: Zachary Snow <zach@zachjs.com>
2023-06-06 00:08:56 -04:00
qcorradi
485ffffa01
always kw conversion visits items with attributes
...
* Fixing a bug where always_* are not converted when attributed
* Added tests and updated Changelog for the attributed always_* fix
2023-05-30 23:39:47 -04:00
Zachary Snow
a129e3bc68
add test suite documentation
2023-05-30 22:36:54 -04:00
Zachary Snow
e1948689dd
support newer iverilog versions
...
- Add script to drop parameters from VCDs.
- Bump the version of iverilog used in CI. I couldn't use anything never
than eab37efb due a pending iverilog issue.
- Standardize around Python 3 in test cases.
2023-05-29 19:05:33 -04:00
Zachary Snow
03610606aa
remove unneeded escapes in extractFlag
2023-05-29 15:32:27 -04:00
Zachary Snow
0a7b0250e7
fix 1364-2001 and 1364-2001-noconfig keywords mixup
...
- swap 1364-2001 and 1364-2001-noconfig
- fix existing begin_keywords test
- add keyword test suite for all keywords
2023-05-15 22:21:23 -04:00
Zachary Snow
2aff725ea2
drop tf block edge case
...
- The deleted chunk in TFBlock has been unreachable since 57ef23ef . The
RemoveComments change would make it reachable by dropping the leading
Null in a task or function body.
- The optimization in TFBlock was unsound because the nested block could
shadow identifiers used (but not defined) in the tail of the outer
block.
- The optimization is not clearly necessary, so I'm dropping it for now.
- Expand tf_block test coverage.
2023-05-14 23:18:58 -04:00
Zachary Snow
0fb3a41ed3
additional test coverage
...
- test deprecated flags
- test struct const edge cases
- test implicit net edge cases
- test dump-prefix
2023-05-14 00:54:22 -04:00
Zachary Snow
6c4ee8f4bc
keep explicitly unconnected port bindings
...
These are now kept while still supporting optional trailing commas and
without introducing pass-through inconsistencies.
2023-05-10 08:48:15 -04:00
Zachary Snow
83f2dbde6b
clean up interface check decl type
2023-05-08 23:55:58 -04:00
Zachary Snow
11a5d0479d
support for sequence and property declarations
2023-05-07 16:45:06 -04:00
Zachary Snow
646cb21b49
updated readme
2023-05-07 14:15:31 -04:00
Zachary Snow
1b8aace145
check for module or interface names used as type names
2023-05-07 13:45:56 -04:00
Zachary Snow
b7738a3238
don't use positional error message on extra named bindings
2023-04-26 09:07:18 -04:00
Zachary Snow
e4c47363bb
ignore port connection attributions
2023-04-21 08:29:27 -04:00
Zachary Snow
eca8714de7
skip start of block before looking for its end
2023-03-07 23:54:56 -05:00
Zachary Snow
4ce177c074
multipack conversion visits exprs within types
2023-02-22 00:15:39 -05:00
Zachary Snow
9bab0448e3
drop explicit string type from parameters
2023-01-07 18:27:25 -07:00
Zachary Snow
c840bcd623
prefer larger base when concatenating numbers
2022-12-24 09:56:27 -07:00
Zachary Snow
96a108ded7
constant folding extensions
...
- fold string literal comparisons
- fold non-decimal bit shifts
- fold non-decimal integer comparisons
- fold decimal bitwise AND and OR
- simplify cast expressions before elaboration
- remove duplicate cast expression traversal
- flatten concatenated numbers in a single pass
2022-12-24 01:12:50 -07:00
Zachary Snow
e09aea48e0
type inference for localparams performed lazily
...
The implicit type of a localparam is not always needed. This improves
performance when complex localparam expressions are processed.
2022-12-24 01:01:38 -07:00
Zachary Snow
9de4d44305
simplify handles shadowing via vars and genvars
2022-12-24 00:51:05 -07:00
Zachary Snow
72ab639699
forbid non-void return inside void functions
2022-12-23 19:55:44 -07:00
Zachary Snow
36cff4ab0f
bump actions/cache to v3
2022-10-29 14:08:50 -04:00
Zachary Snow
c49fad1dba
drop unneeded module-scoped references
2022-10-29 13:22:53 -04:00