Commit Graph

375 Commits

Author SHA1 Message Date
Zachary Snow d578aee5d9 conflate the preprocessor and lexer
This should make it much easier to add support for ``, `", macros with
arguments, etc., in the future.
2019-03-29 05:33:17 -04:00
Zachary Snow e69895af54 initial setup for combining pre-processor and lexer 2019-03-29 01:10:46 -04:00
Zachary Snow 0d9ed3e1fa updated CLI to support include dirs and multiple files 2019-03-28 19:55:53 -04:00
Zachary Snow 7e37fe4338 fix nested conditional preprocessor directives 2019-03-28 18:04:28 -04:00
Zachary Snow 848f8cbd61 support for ++ and -- as bare Stmts 2019-03-28 15:08:05 -04:00
Zachary Snow 69a5585a7f updated IEEE standard references in README 2019-03-27 03:41:41 -04:00
Zachary Snow 98d65c4cea switch to parallel builds 2019-03-27 03:41:02 -04:00
Zachary Snow e4efb4803b fix broken for inits parsing; beefed up relong test script to catch such mistakes 2019-03-27 03:33:28 -04:00
Zachary Snow ef42fc04fd use builtin $clog2 in test/relong/array.v 2019-03-27 02:32:11 -04:00
Zachary Snow a646a85867 Travis CI 2019-03-27 02:23:57 -04:00
Zachary Snow 713fb8a658 support for more complex for loop components 2019-03-27 01:53:26 -04:00
Zachary Snow 1c1740f1e3 support for constant size casts 2019-03-27 00:34:17 -04:00
Zachary Snow 5de77ab62d fix function and task input types 2019-03-26 23:51:31 -04:00
Zachary Snow edaff3dcf6 added conversion to make functions and tasks use only one statement 2019-03-26 21:43:27 -04:00
Zachary Snow 4b3966aa25 added hdl-examples tests 2019-03-26 21:32:02 -04:00
Zachary Snow 6cc4654ad6 support for real numbers 2019-03-26 15:21:06 -04:00
Zachary Snow 39f6bbb3d8 preliminary support for extern and module/interface lifetimes 2019-03-26 15:10:16 -04:00
Zachary Snow 0352414e0f surprisingly non-disgusting addition of attribute instances to module items and statements 2019-03-26 01:54:16 -04:00
Zachary Snow 0e2658fdca fix string literal lexing 2019-03-25 19:42:20 -04:00
Zachary Snow a2d0872d6f support for delays on continuous assignments 2019-03-25 19:31:06 -04:00
Zachary Snow ec06b2b97a support for basic event triggers 2019-03-25 19:06:54 -04:00
Zachary Snow a803284be8 support for instantiations with a range 2019-03-25 19:06:35 -04:00
Zachary Snow ed816ac5dc fix silly bugs from AST reorg 2019-03-25 14:40:57 -04:00
Zachary Snow 8907ac861d split out Decl, LHS, and Stmt into separate AST modules 2019-03-25 13:29:35 -04:00
Zachary Snow 77f0d23d4b starting work to clean up and segment AST 2019-03-22 19:39:28 -04:00
Zachary Snow cecd141e57 revamped support system with most SystemVerilog types and signed types 2019-03-22 17:45:31 -04:00
Zachary Snow 45d16a30db support non-blocking assignments with delay or event controls 2019-03-22 02:47:25 -04:00
Zachary Snow 9259fef249 tolerate spaces in numeric literals in line with the spec 2019-03-22 02:01:48 -04:00
Zachary Snow 90bd6b3492 added support for n-input gates and n-output gates 2019-03-22 01:32:43 -04:00
Zachary Snow 7f8c2e336b simple conversion for unbased unsized literals 2019-03-19 13:40:25 -04:00
Zachary Snow 071d56a1ea more accurate handling of tagged blocks 2019-03-18 14:41:09 -04:00
Zachary Snow 35d8644f2a fix PackedArray with whole array uses by allowing top-level Expr and LHS traversal 2019-03-18 14:27:14 -04:00
Zachary Snow 1d2eccb32a preliminary support for defparam 2019-03-18 12:37:46 -04:00
Zachary Snow acfbdb07f8 completely rewrote preprocessor; more extensive directive support (include, timescale) 2019-03-18 05:00:23 -04:00
Zachary Snow 73b11b3662 move interface conversion assign bindings to be after inlining 2019-03-08 18:23:38 -05:00
Zachary Snow e187de5623 support for commas in event expressions 2019-03-08 17:29:44 -05:00
Zachary Snow 4bc3eb8d2c more gracefully unknown type handling in Struct conversion 2019-03-08 17:17:30 -05:00
Zachary Snow bddb8ceaff fix multiple instantiations on one line 2019-03-08 17:01:49 -05:00
Zachary Snow b5b9fdb37e support for null call arguments 2019-03-08 16:55:03 -05:00
Zachary Snow b4b6ea348d support for "unbased_unsized_literal" 2019-03-08 16:37:20 -05:00
Zachary Snow 943b7adc08 support for more complex LHSs with dots in decl token parser 2019-03-08 16:26:47 -05:00
Zachary Snow 2150e8a4bb support optional tags in more places 2019-03-08 16:03:29 -05:00
Zachary Snow f40c71dc03 ParseDecl forbids non-EQ assignment operators in declarations 2019-03-08 14:47:20 -05:00
Zachary Snow d7f641b850 pivoted to general Verilog-2005 targeting 2019-03-08 11:02:40 -05:00
Zachary Snow 9f0857d68e some fixes for 'VTR' targetted conversions 2019-03-07 20:03:35 -05:00
Zachary Snow b2b1c9e52c allow .* as element of partial port bindings 2019-03-07 18:20:34 -05:00
Zachary Snow f97e069ef0 fix DT parsing of ports with implicit types 2019-03-07 18:16:38 -05:00
Zachary Snow 9ec9435cb0 support for binary blocking assignment operators in statements 2019-03-07 18:16:28 -05:00
Zachary Snow dd5b03431d allow block item declarations for un-named blocks 2019-03-07 15:39:19 -05:00
Zachary Snow e006e36ddc preliminary support for tasks 2019-03-07 13:58:20 -05:00