Zachary Snow
a8346f2f88
actually fix unbased unsized literals in ternary exprs
2020-06-06 17:01:27 -04:00
Zachary Snow
71d174877d
use new cabal build-tool-depends syntax
2020-06-06 13:48:28 -04:00
Zachary Snow
355b62da70
pack arrays in ternary expressions assigned to other arrays
2020-06-06 13:42:30 -04:00
Zachary Snow
5b4fdfe7df
upgrade cabal file format
2020-06-06 00:00:21 -04:00
Zachary Snow
7e20b74147
logic conversion handles shadowing
2020-06-05 21:41:03 -04:00
Zachary Snow
80bfbc1e8a
fix unbased unsized literals in ternary exprs
2020-06-05 21:40:59 -04:00
Zachary Snow
9249c9fa2b
typdef conversion obeys generate scoping
2020-06-05 21:38:31 -04:00
Zachary Snow
ae392d4536
fix single bit enum sizing
...
- single bit localparams retain explicit range
- fix $bits on unsized literals
- use Implicit over Maybe for underlying type
2020-06-05 21:32:02 -04:00
Zachary Snow
97b2d1d166
fix declaration order of generated enum items
2020-06-05 21:32:02 -04:00
Zachary Snow
ecf047e36e
fix declaration order of nested package items
2020-06-05 21:31:58 -04:00
Zachary Snow
b6f4f690e7
support simple bundle interfaces
...
- fix position modport-to-modport bindings
- inout logics converted to regs become outputs
2020-06-03 20:26:17 -04:00
b1f6c1c4
589261a91b
add .gitattributes for GitHub Linguist ( #87 )
...
Some .v files are incorrectly identified by GitHub Linguist as Coq or Vlang
files, which confuses people who browse the repo on GitHub. According to
https://github.com/github/linguist#using-gitattributes adding a .gitattributes
file can solve this problem.
2020-06-02 18:24:59 -04:00
Zachary Snow
ec760964c7
remove empty initial blocks ( resolves #89 )
2020-06-02 08:29:12 -04:00
Zachary Snow
478f0d19d2
fix premature typename cast conversion ( resolves #88 )
2020-06-01 18:19:47 -04:00
Zachary Snow
9042145695
substitute localparams into type params
2020-05-31 22:01:40 -04:00
Zachary Snow
ea81d55cdc
fix duplicate param type modules
2020-05-31 22:00:57 -04:00
Zachary Snow
790312d25d
vim modelines for Lex.x and Parse.y
2020-05-06 19:03:32 -04:00
Zachary Snow
a0c3112b6c
flatten tf blocks with decls
2020-05-05 19:32:37 -04:00
Zachary Snow
9e7768b66a
simplify folded procedural branches
2020-05-05 18:50:20 -04:00
Zachary Snow
fc9b0b5978
streamline stream conversion
2020-05-05 18:42:45 -04:00
Zachary Snow
3e85885def
fix conversion of multi-packed arrays in packages
2020-05-04 19:22:36 -04:00
Zachary Snow
2ac236dd03
add CMU acknowledgement
2020-04-16 18:12:05 -04:00
Zachary Snow
f381476161
support nested interfaces
2020-04-13 22:50:41 -04:00
Zachary Snow
c5ef5ea9e2
additional expression simplification
...
- constant folding supports hex numbers
- simplify mod
- simplify pow
- elaborate !(a == b) into a != b
2020-04-05 23:12:54 -04:00
Zachary Snow
df7277a6a0
simplification applies to exprs in decls
2020-04-05 22:13:19 -04:00
Zachary Snow
543a104683
upgrade to stackage lts-14.26
2020-04-05 13:45:31 -04:00
Zachary Snow
b8d512e31f
remove unneeded imports
2020-04-05 13:45:22 -04:00
Zachary Snow
c262324a36
removed Unique dependency
...
- made stream conversion pure
- type param conversion uses Set for instance uniqueness
- updated NOTICE and resolutions
2020-04-05 13:09:52 -04:00
Zachary Snow
409f80ea83
cleanup workflows
2020-03-30 21:41:13 -04:00
Zachary Snow
a38d49982a
fix release artifact uploads
2020-03-30 19:52:41 -04:00
Zachary Snow
3831dcffee
bump release version
2020-03-30 19:50:04 -04:00
Zachary Snow
bcafef8d01
allow empty list_of_parameter_assignments
2020-03-30 19:27:44 -04:00
Zachary Snow
279a19ab9d
refactored CI workflow
...
- added Windows build
- separate build and test jobs
- per-OS release artifact generation
2020-03-30 19:13:16 -04:00
Zachary Snow
1687b1c5c1
allow empty parameter_port_list ( resolves #83 )
2020-03-25 23:55:19 -04:00
Zachary Snow
e7381c4db2
fix double multipack conversion of Exprs in LHSs
2020-03-24 22:02:38 -04:00
Rupert Swarbrick
78f3db8803
Fail more gracefully on mismatched `if/`elsif/`else/`endif
...
Without this patch, a stray `endif caused sv2v to take the tail of an
empty list. Now we raise a lexical error.
To do this, the patch pulls the "push" and "pop" logic for the
preprocessor condition stack into separate helper
functions (pushCondStack and popCondStack). It also defines some
helper functions for manipulating Cond's.
The patch also adds a documentation comment explaining what the
different values of Code meant (because I had to squint to work it
out).
2020-03-23 20:19:25 -04:00
Zachary Snow
5ad4849454
fix slicing direction for multi-packed arrays
2020-03-22 19:37:58 -04:00
Zachary Snow
35e75c0604
language support for strengths
2020-03-20 21:13:57 -04:00
Zachary Snow
bd68ab0852
faster parsing of very long files
2020-03-20 18:53:06 -04:00
Zachary Snow
c03dba096f
pack sliced arrays ( resolves #78 )
2020-03-18 23:40:21 -04:00
Zachary Snow
f44e3e808a
add option to skip preprocessing
2020-03-18 20:02:20 -04:00
Rupert Swarbrick
f5881919c1
Allow exclusion of Assert conversion
...
Yosys does support some asserts nowadays. Allowing sv2v to not strip
them out means that you can check formal properties without needing
hierarchical references (which Yosys really doesn't cope well with!)
2020-03-16 23:34:05 -04:00
Zachary Snow
dd9f040f1f
improved handling of genvars
2020-02-23 22:30:17 -05:00
Zachary Snow
da087cc2c1
release v0.0.2
2020-02-22 19:53:35 -05:00
Zachary Snow
b2504afe71
package convertion perf tweak
2020-02-21 21:17:47 -05:00
Zachary Snow
95524c46ad
remove excess patterns from struct conversion
2020-02-21 21:03:33 -05:00
Zachary Snow
400c009480
traversal performance improvements
2020-02-20 23:57:41 -05:00
Zachary Snow
a415d9eb3d
fix type propagation of struct fields bit accesses
2020-02-20 00:19:14 -05:00
Zachary Snow
470fa01eb2
updated casting conventions
...
- explicit enum casts in source are converted to size casts
- conversion for basic pattern array literals of unsized numbers
- unsized number array literals preserve signing
- more aggressive ternary simplification
2020-02-19 18:58:25 -05:00
Zachary Snow
976f582287
push struct and multi-packed ternaries into ranges
...
- the ternary expressions were previously used to decide the direction
of generated part selects
- this fixes an issue where ternaries were generated for LHSs
2020-02-18 21:25:20 -05:00