Commit Graph

258 Commits

Author SHA1 Message Date
Zachary Snow fabdc08493 fix package resolution of nested typedefs (resolves #11) 2019-08-27 21:32:03 -04:00
Zachary Snow 737791aebd expose nested type traversal 2019-08-27 19:28:04 -04:00
Zachary Snow a9f502a696 traverse covers typedefs in packages and exprs in types 2019-08-26 21:08:31 -04:00
Zachary Snow 086826714d nicer error message for missing struct fields 2019-08-26 20:20:38 -04:00
Zachary Snow 89e4f2a248 allow newlines before left paren of macro arguments 2019-08-11 17:55:42 -04:00
Zachary Snow 81f5fb500f added conversion for packed unions 2019-08-08 23:12:49 -04:00
Zachary Snow 8a67a91166 added language support for (untagged) unions 2019-08-08 23:12:06 -04:00
Zachary Snow ae239f16b7 updated usage documentation 2019-08-07 22:10:03 -04:00
Zachary Snow 9b7d003ea4 support for empty packages (resolves #9) 2019-08-07 21:58:20 -04:00
Zachary Snow 4fd7b6c2f2 better support for struct array parameters
This includes support for
- parsing dimensioned alias parameters
- flattening non-var decls with multiple packed dimensions
- converting arrays of structs
- inferring struct types for decls with initializations
2019-08-06 23:11:09 -04:00
Zachary Snow e82537fa97 add support for localparams in module parameter list (resolves #7) 2019-08-06 19:53:19 -04:00
Zachary Snow 90bc30d4be add --oneunit, which treats all input files as being part of one compilation unit 2019-08-05 22:00:04 -04:00
Zachary Snow 376f0d3f2a updated Travis CI macOS version 2019-08-03 23:36:37 -04:00
Zachary Snow 8119cdd6b1 added test coverage for compilation unit package resolution 2019-08-03 23:08:26 -04:00
Zachary Snow 9c160c3d20 added support for package imports in module headers 2019-08-03 21:50:26 -04:00
Zachary Snow 35ac09aa75 struct conversion handles complex expression nesting 2019-05-16 10:51:57 -04:00
Dave Eckhardt dadcd6ae24 Wording tweaks in comments. 2019-05-15 23:02:52 -04:00
Zachary Snow 02e948f283 test runner automatically handles tests with top-level module inside both inputs 2019-05-10 10:48:40 -04:00
Zachary Snow 3bef2b9cdb struct conversion handles alternate and mixed integer vector field types 2019-05-10 10:41:31 -04:00
Zachary Snow 44ea16e3eb ensure, rather than check, traverseScopesM invariant (perf optimization) 2019-05-01 13:37:50 -04:00
Zachary Snow 04337988cc standardized handling of resolution across source files 2019-04-30 15:44:52 -04:00
Zachary Snow d2c06b58bc initial work towards fleshing out package conversion 2019-04-30 01:57:04 -04:00
Zachary Snow 91dd144137 check for multi-dim arrays and SV types in test runner 2019-04-25 15:22:45 -04:00
Zachary Snow 3fde36d9de more portable basic enum test 2019-04-24 20:34:53 -04:00
Zachary Snow fc3e79ddd0 basic conversion for int, byte, shortint, and longint 2019-04-24 14:00:08 -04:00
Zachary Snow 50d00f9dc4 placate VCS in packed_array_shadow test 2019-04-24 04:16:42 -04:00
Zachary Snow 2d003c6ded conversion for package-scoped tasks, functions, and typenames 2019-04-24 04:01:33 -04:00
Zachary Snow bc23aebc55 added language support for package-scoped calls and typenames 2019-04-24 03:37:47 -04:00
Zachary Snow 9373f3049a added note about state of package conversion 2019-04-23 20:37:59 -04:00
Zachary Snow 2aa39289a3 added preliminary package conversion 2019-04-23 20:22:03 -04:00
Zachary Snow 33dc4b3f88 conversions are applied per-file
- NestTF refactored to cover all package items
- fixed issue where type traverse skipped typedefs
2019-04-23 18:51:39 -04:00
Zachary Snow da38776d73 decls are now package items 2019-04-23 17:12:56 -04:00
Zachary Snow d01df6110b preliminary language support for packages 2019-04-23 15:53:51 -04:00
Zachary Snow 4178751b22 interface conversion handles decls with unpacked dimensions 2019-04-23 15:48:25 -04:00
Zachary Snow 4e34217472 struct conversion handles decls with unpacked dimensions 2019-04-23 15:48:25 -04:00
Dave Eckhardt 5583eaeca8 README.md: wording tweaks. 2019-04-23 15:48:11 -04:00
Zachary Snow 85d22d8d03 support for generate constructs outside of generate regions and genvar declarations in generate loops 2019-04-23 14:38:44 -04:00
Zachary Snow 68cccff2b1 updated README with acknowledgments 2019-04-23 14:07:59 -04:00
Dave Eckhardt 9725ed3992 README.md: wording tweaks. 2019-04-23 13:48:00 -04:00
Zachary Snow b59c66032c test runner checks for iverilog warnings 2019-04-23 01:53:02 -04:00
Zachary Snow dce924051a added $bits and stability checks to test runner 2019-04-23 01:35:54 -04:00
Zachary Snow d36ae19e4c fix $bits resolution of params/localparams 2019-04-23 01:35:21 -04:00
Zachary Snow 925f11cf31 expression traversal visits LHS range and bit expressions 2019-04-23 01:16:57 -04:00
Zachary Snow 04983b0cd5 fixed off by 1 in logic conversion 2019-04-23 00:33:41 -04:00
Zachary Snow 7734fa539d added Reid's new tests 2019-04-23 00:33:27 -04:00
Zachary Snow c8894cebde random documentation and cleanup 2019-04-23 00:23:32 -04:00
Zachary Snow 88579c6d1f logic conversion fixes produced reg-to-output bindings
- generally cleaned up and documented the Logic conversion
- made exprToLHS a shared helper function, now uses Maybe
- ported existing local exprToLHS helpers to the new one
2019-04-22 20:44:35 -04:00
Zachary Snow 55a5443786 logic conversion makes continuous assignments procedural where necessary 2019-04-22 15:10:34 -04:00
Zachary Snow d41dcb2bc9 struct conversion supports struct literals as task/function args 2019-04-22 13:58:14 -04:00
Zachary Snow addc550028 minor code cleanup for struct conversion 2019-04-22 02:48:22 -04:00