Commit Graph

1038 Commits

Author SHA1 Message Date
Zachary Snow 96e0aff7f4 handle TF decl shadowing within packed array conversion 2019-04-17 20:05:55 -04:00
Zachary Snow 8d77856b1e StmtLHS traversal includes LHSs for loop parts 2019-04-17 17:44:12 -04:00
Zachary Snow 07b64bd1f2 clearer messaging surrounding unsupported interface conversion features 2019-04-17 01:44:03 -04:00
Zachary Snow 8b8d62c6e2 add an additional (fixed) linux build to Travis CI 2019-04-16 20:39:03 -04:00
Zachary Snow 5bc58ea6f4 switch to macOS Travis CI builds 2019-04-16 18:27:16 -04:00
Zachary Snow d4284163dc explicitly use bash to avoid dash compatability issues when running tests 2019-04-16 16:35:53 -04:00
Zachary Snow 369e9f2f19 updated Stack snapshot; handled pattern matching failure issues introduced in GHC 8.6 2019-04-16 15:52:38 -04:00
Zachary Snow 75e2fba597 explicitly size literals in converted default struct patterns 2019-04-15 23:28:03 -04:00
Zachary Snow da9452bd26 fix PackedArray handling of bit select followed by range select 2019-04-11 18:29:30 -04:00
Zachary Snow 88c537c93f fixed handling of 3+ dimensional packed arrays 2019-04-11 17:30:29 -04:00
Zachary Snow afad70de1a updated relong test folder README 2019-04-11 16:46:20 -04:00
Zachary Snow 55aebec3ad flatten generate blocks into their parent description where trivially possible 2019-04-11 15:42:46 -04:00
Zachary Snow 231b7f9936 interface conversion respects port direction when inlining bindings 2019-04-11 14:08:50 -04:00
Zachary Snow c168ec4794 added some error checking for struct pattern conversion 2019-04-10 18:33:33 -04:00
Zachary Snow 377600078a struct conversion attempts to size unsized constants when packing patterns 2019-04-10 14:07:38 -04:00
Zachary Snow 006e0e0830 fixed struct pattern field ordering 2019-04-10 14:06:44 -04:00
Zachary Snow 346d7efb3c added new cache_request test from hdl examples 2019-04-10 13:15:43 -04:00
Zachary Snow e4cd8f4c09 simplify handles division and unsized decimal constants 2019-04-09 13:07:43 -04:00
Zachary Snow 2ee837f7b0 restore port-decl hoisting for cleaner output 2019-04-09 12:50:56 -04:00
Zachary Snow dca3a55fa6 support for indexed part select in first procedural Stmt 2019-04-08 22:02:49 -04:00
Zachary Snow 9b51d7566b more expression simplification 2019-04-08 21:57:50 -04:00
Zachary Snow 9a38225b1d several major fixes surrounding packed arrays
- entirely new PackedArray conversion (always flattens)
- typedef and struct correctly order packed ranges when combining types
- Stmt LHS traversal no longer traverses nested statements to avoid double conversion
- Logic conversion applies to `initial` blocks`
- new and modified tests to cover these cases
2019-04-08 21:28:33 -04:00
Zachary Snow fb3d68e339 propper support for indexed part select addressing 2019-04-05 13:53:52 -04:00
Zachary Snow 011d88b544 PackedArray conversion supports arbitrary endianness 2019-04-04 19:40:19 -04:00
Zachary Snow f47446653d Updated README 2019-04-03 23:40:28 -04:00
Zachary Snow f9d46d548e cleanup of Enum conversion; additional test 2019-04-03 21:31:56 -04:00
Zachary Snow 383754fa7a final major round of splitting and cleanup in the SystemVerilog module 2019-04-03 20:24:09 -04:00
Zachary Snow 6d0f7dd0a7 significantly stronger support, and proper handling of assertions 2019-04-03 19:08:30 -04:00
Zachary Snow e79c95c5f0 some cleanup throughout the SystemVerilog module 2019-04-03 13:45:43 -04:00
Zachary Snow 39f377e022 lexer has useful tagging of tokens from a macro expansion 2019-04-03 13:05:33 -04:00
Zachary Snow 2f91e25aa2 more lexer tests 2019-04-03 00:16:30 -04:00
Zachary Snow 788a71d1be initial lexer tests; general test harness 2019-04-02 23:11:16 -04:00
Zachary Snow a18270a3bd many lexer fixes
- added support for macros with default arguments
- fixed bug where nested preprocessor conditionals would not be skipped
- macro expansion respects escaped quotation marks
- macro expansion considers whole identifiers, rather than substituting in wildly
2019-04-02 23:05:42 -04:00
Zachary Snow f59ed11ef5 add support for specifying compile-time defines 2019-04-02 16:19:59 -04:00
Zachary Snow 5351dee80a minor scoping/ordering fixes for pesky VCS restrictions 2019-04-02 15:36:29 -04:00
Zachary Snow ba7ffdf14d $bits conversion handles types with more than 1 dimension 2019-04-02 13:44:47 -04:00
Zachary Snow 86195d9ea1 interface conversion obeys function/task identifier shadowing 2019-04-02 13:35:15 -04:00
Zachary Snow f13275bfa1 fix Struct and Interface conversion for expressions within LHSs 2019-04-02 01:00:02 -04:00
Zachary Snow c53b39319d added support and conversion handling of the $bits system function
This also entailed further fleshing out the expression traversal helper
to cover expressions in generate blocks, which could, of course, use
$bits.
2019-04-02 00:16:09 -04:00
Zachary Snow 5ea2ec9ddf added conversion for name task and function arguments 2019-04-01 13:16:21 -04:00
Zachary Snow f1ac4fc04f fixed PackedArray conversion assigning to reg for Local arrays 2019-04-01 02:45:36 -04:00
Zachary Snow 00d12c7ae5 fixed combined ranges incorrect upper bound calculation 2019-04-01 02:26:40 -04:00
Zachary Snow 9b8a95029b more robust and full-featured interface conversion 2019-04-01 01:23:44 -04:00
Zachary Snow 0a3e9f4f49 more range-bit edge cases in Struct conversion 2019-03-31 17:35:00 -04:00
Zachary Snow 650c602be9 struct conversion handles bit expressions and expressions outside of assignments 2019-03-31 17:00:55 -04:00
Zachary Snow b8d31d2a41 support for packed array flattening in tasks and functions 2019-03-31 16:43:19 -04:00
Zachary Snow b148117935 fix conversion ordering 2019-03-31 15:57:28 -04:00
Zachary Snow 7883e263f9 several conversion bug fixes
- convert default pattern used to fill a vector
- convert Logic in parameter and localparam types
- interface conversion should happen early for type resolution later on
- interface conversion handles renaming of usages of inlined decls
2019-03-31 15:01:10 -04:00
Zachary Snow dc759dbb68 support for parameters of all types; fix named argument display bug 2019-03-31 14:25:09 -04:00
Zachary Snow c8e776265c fix ports bound to decls inlined from an interface expansion 2019-03-30 22:15:48 -04:00