Zachary Snow
3e85885def
fix conversion of multi-packed arrays in packages
2020-05-04 19:22:36 -04:00
Zachary Snow
f381476161
support nested interfaces
2020-04-13 22:50:41 -04:00
Zachary Snow
e7381c4db2
fix double multipack conversion of Exprs in LHSs
2020-03-24 22:02:38 -04:00
Zachary Snow
5ad4849454
fix slicing direction for multi-packed arrays
2020-03-22 19:37:58 -04:00
Zachary Snow
c03dba096f
pack sliced arrays ( resolves #78 )
2020-03-18 23:40:21 -04: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
Zachary Snow
8f2d7dd5c7
fixed multiple issues with struct and multi-packed conversions
...
- struct conversion handles directionality of fields
- struct conversion supports minus part selects
- fixed incorrect handling of directional part selects in multi-packed
conversion
- multi-packed conversion defines standard ranges in terms of
directional part selects for clarity
- fixed potential loop due to overeager untagging in multi-packed
conversion
2020-02-17 13:57:48 -05:00
Zachary Snow
5f0ccee065
conversion for unsized integer arrays
2020-02-17 12:12:51 -05:00
Zachary Snow
20dc92f6d8
fix typeof integer slices
2020-02-16 23:39:48 -05:00
Zachary Snow
ad21277eb5
support macro names comprised of macro args and macros
2020-02-16 22:18:12 -05:00
Zachary Snow
9af38e7870
globally imported items are selectively nested
2020-02-16 15:44:03 -05:00
Zachary Snow
29b5136503
test runner supports explicit list of tests
2020-02-15 17:34:21 -05:00
Zachary Snow
799141af42
enum conversion covers nested module items ( resolves #70 )
2020-02-15 17:14:59 -05:00
Zachary Snow
463cdcb2c1
support complex sizes in size casts ( resolves #69 )
2020-02-15 16:48:09 -05:00
Zachary Snow
fe8839eaec
fix struct typing of ternary expressions ( resolves #73 )
2020-02-15 14:44:49 -05:00
Zachary Snow
b124a561f2
updated binary and unary operator printing ( resolves #72 )
2020-02-15 14:11:17 -05:00
Zachary Snow
aea64e903c
pack arrays assigned to other arrays
2020-02-13 23:59:01 -05:00
Zachary Snow
104f98011e
support for string literals with macros
...
- adds support for using macros and macro arguments within the argument
list to other macros
- fixes an issue where macros with arguments would have extraneous
whitespace
- fixes handling of multiline string literals
2020-02-12 23:58:41 -05:00
Zachary Snow
c876c447e6
fix interface inlining renaming
2020-02-09 22:17:48 -05:00
Zachary Snow
4cf65dd4e2
support for struct type parameters
...
- param type conversion properly supports deferred param type resolution
- fixed struct conversion incomplete Subroutine traversal
- struct conversion excludes param types from conversion
- parameters are defaulted to have integer type
2020-02-09 17:31:24 -05:00
Zachary Snow
2f8ee303de
keyword args conversion covers tasks
2020-02-09 14:17:18 -05:00
Zachary Snow
14644cd1ed
fix output of empty generate loops
2020-02-09 14:01:05 -05:00
Zachary Snow
8a008c3024
interface conversion supports positional port bindings
...
- also fixes an issue where system tasks were inadvertently prefixed
during the interface conversion
2020-02-09 13:42:45 -05:00
Zachary Snow
7a00c36a70
jump conversion keeps timing controls at the top level
2020-02-09 11:53:21 -05:00
Zachary Snow
4b3b09d2db
allow extraneous semicolons in generate blocks
2020-02-08 22:15:35 -05:00
Zachary Snow
3c08767b63
redesigned preprocessor and lexer
2020-02-06 23:33:13 -05:00
Zachary Snow
2dcd35ade7
support typedefs with unpacked dimensions
2020-02-02 21:40:43 -05:00
Zachary Snow
9694799a23
more consistent procedural assignment support
2020-02-01 15:52:52 -05:00
Zachary Snow
610d9abacf
support for gates with delays
2020-01-31 20:24:37 -05:00
Zachary Snow
dd0eb5981d
added source trace comments
...
- Trace comments cover module items, decls, and stmts
- Added pseudo-lexer to Alex parser for monadic Position production
- Added Position to every DeclToken
- Removed Comment PackageItem
- Added CommentStmt and CommentDecl
- Fixed traversal skipping outer MIAttr ModuleItems
- Generally cleaned up Parser modules
2020-01-30 22:17:17 -05:00
Zachary Snow
ad98c14547
fix handling of macros at EOF ( resolves #62 )
2020-01-27 19:18:58 -05:00
Zachary Snow
17e17ebd7f
fix struct array pattern conversion ( resolves #60 )
2020-01-20 17:26:03 -08:00
Zachary Snow
cf4c2a5491
expanded support for macros in preprocessor directives
2020-01-14 23:19:39 -05:00
Zachary Snow
e62074c756
type operator full select support
2020-01-11 22:52:12 -05:00
Zachary Snow
22d6ba4927
support evaluating functions as statements
2020-01-11 21:06:09 -05:00
Zachary Snow
2bd24b6086
expand type operator support
2020-01-11 20:35:51 -05:00
Zachary Snow
b58248fc2c
support type operator on simple expressions
2020-01-11 16:22:07 -05:00
Zachary Snow
8cc649a090
made tests in basic suite yosys-friendly
...
- multipack
- multipack_port
- package_order
- struct_array
2020-01-05 15:29:12 -05:00
Zachary Snow
7ea5b60d0b
support for inside case statements
2019-12-21 20:41:19 -05:00
Zachary Snow
7f2fe54b11
fix jump statement conversion
2019-12-09 21:17:01 -05:00
Zachary Snow
fb5fd39388
support for inside expression ranges and wildcards
2019-12-08 17:36:25 -05:00
Zachary Snow
92d827f3a5
preserve else block association, with timings
2019-11-20 20:44:09 -05:00
Zachary Snow
35a0587d2c
preserve else block association ( resolved #56 )
2019-11-20 20:18:56 -05:00
Zachary Snow
95299c6f56
conversion of structs with multi-dim fields ( resolves #53 )
2019-11-19 23:15:25 -05:00
Zachary Snow
49e4f7872d
conversion for always_latch ( resolves #54 )
2019-11-18 19:26:54 -05:00
Zachary Snow
c936b39bd2
use system functions for signedness casts
2019-10-20 16:18:18 -04:00
Zachary Snow
06411d70f1
support converting interfaces with parameters
2019-10-20 15:58:37 -04:00
Zachary Snow
3597f4a6be
support for methods (no conversion) and interface TFs
2019-10-19 16:22:46 -04:00