Commit Graph

842 Commits

Author SHA1 Message Date
Ethan Sifferman 31ffa439f7 cleaned up SystemTasks.hs 2024-09-02 12:00:25 -04:00
Ethan Sifferman 4181b94c0f tests pass 2024-09-02 12:00:25 -04:00
Ethan Sifferman bcb6d9b249 initial support for system tasks 2024-09-02 12:00:25 -04:00
Zachary Snow 12d977f070 visit nested LHSs in enum, typedef, and typeof conversions 2024-09-01 20:39:58 -04:00
Zachary Snow 4e989bc029 remove extra space after signed in scalar types 2024-08-05 00:11:20 -04:00
Zachary Snow 1b2734324e fix bare input signed declarations for inlined modules 2024-08-04 23:52:48 -04:00
Zachary Snow 52197df325 add bugpoint mode
This mode reduces the size of test cases that encounter conversion
errors or produce incorrect output. The logic developed slowly over the
past three years. It is in a state that I find useful when fielding bug
reports, but has some room for improvement in terms of constraints and
filtering.
2024-06-19 23:06:34 -04:00
Zachary Snow 73a9cc6750 logic conversion handles tf output ports 2024-06-17 23:47:38 -04:00
Zachary Snow 1c902773b4 parser support for not, strong, weak, nexttime, and s_nexttime 2024-06-17 22:42:12 -04:00
Zachary Snow d3dbaf0684 handle resetall when creating implicit nets 2024-06-15 22:29:53 -04:00
Zachary Snow 6eda946f57 handle directives when writing to a directory 2024-06-15 22:15:30 -04:00
Zachary Snow fdfa597115 upgrade system severity task AST representation 2024-06-09 18:31:06 -04:00
Zachary Snow 4dc672bbfa bump license year 2024-05-05 18:24:21 -04:00
Zachary Snow 988f76b92b broaden compiler support
- build in CI using snapshots from lts-13 through lts-22 and nightly
- allow building with alex >= 3.2 and happy >= 1.19
- fallback to cabal version string with incompatible versions of githash
2024-05-05 16:00:35 -04:00
Zachary Snow 307289f699 upgrade to GHC 9.6.4 2024-05-01 09:07:31 -04:00
Zachary Snow 05cafc3d2a scope bit-indexed modport binding 2024-05-01 09:07:31 -04:00
Zachary Snow fb604109bf don't sign-extend signed unsized numbers with a leading 1 bit
I'm opting for iverilog's interpretation of the specifications here. The
commercial simulators I tested seem to agree.
2024-05-01 09:07:31 -04:00
Ethan Sifferman df01650444
Added `full_case` and `parallel_case` attributes (#274) 2024-03-10 23:45:01 -04:00
Zachary Snow 9825bb9bcb tweak codegen for bitwise binary followed by reduction unary 2024-01-04 22:09:04 -07:00
Zachary Snow f9917d94da execute always_comb/latch at time zero 2023-12-26 09:21:19 -07:00
Zachary Snow 756dbbb84f support stream within mux 2023-12-17 20:37:25 -05:00
Zachary Snow 81d822562a fix stringToInteger byte order 2023-12-07 23:43:19 -05:00
Zachary Snow e9c01d2434 support wait statements 2023-12-03 13:16:01 -05:00
Zachary Snow 2579bc8302 translate input reg to input wire 2023-11-05 11:02:51 -05:00
Zachary Snow 6ffa31ff9a small coverage improvements 2023-11-04 22:24:59 -04:00
Zachary Snow cd7b53c658 fix multipack conversion type and expr traversal 2023-11-04 20:36:51 -04:00
Zachary Snow fe90c7bbf4 fix inline explicit struct casts 2023-11-04 17:31:11 -04:00
Zachary Snow a4639fa9ef special case typenames when resolving pattern identifiers 2023-11-04 13:31:09 -04:00
Zachary Snow d5b9c1da59 visit function args in empty args conversion 2023-11-04 11:36:08 -04:00
Zachary Snow 18f333524e remove extra task/function name traversals 2023-11-01 23:41:29 -04:00
Zachary Snow 764a11af7f more warnings for empty output scenarios 2023-08-20 13:56:03 -04:00
Zachary Snow aa451b66a2 stronger typename checks 2023-08-13 15:17:21 -04:00
Zachary Snow deed2d9fc5 enable PatternSynonyms and TupleSections everywhere 2023-08-11 22:58:15 -04:00
Zachary Snow ba94920ee0 assign a unique identifier to every genvar 2023-08-11 21:52:03 -04:00
Zachary Snow a209335c30 disambiguate typenames and interface names 2023-08-09 22:45:52 -04:00
Zachary Snow b09fdaf76a simplify shadowing notes non-trivial localparams too 2023-08-08 22:30:36 -04:00
Zachary Snow 5b035613ee constant fold || and && 2023-08-08 22:25:39 -04:00
CORRADI Quentin 619bde4be1
support for attributes in unary, binary, and ternary expressions
Co-authored-by: qcorradi <q.corradi22@imperial.ac.uk>
Co-authored-by: Zachary Snow <zach@zachjs.com>
2023-07-31 22:52:28 -04:00
Zachary Snow 07caba64a5 simplify non-ANSI style port declaration dimensions 2023-07-31 21:31:34 -04:00
Zachary Snow 19b479d893 fix incorrect indentation in PortDecl.hs 2023-07-31 21:27:14 -04:00
Zachary Snow bef9b1a3f0 allow inout task and function ports 2023-07-26 23:42:51 -04:00
Zachary Snow a29564459b remove long-deprecated CLI flag aliases 2023-06-24 13:11:21 -04:00
Zachary Snow 1c74178417 use the tag alone as the version for future releases 2023-06-24 12:51:42 -04:00
Zachary Snow 2d32fe9c2d minor help text updates 2023-06-22 00:05:06 -04:00
Zachary Snow 04d65bb388 added --write directory mode with one file per module 2023-06-21 08:25:42 -04:00
Zachary Snow 911243dac4 add --top for filtering uninstantiated modules 2023-06-18 22:36:43 -04:00
Zachary Snow 3b2a55a69c better error message for indexed atoms 2023-06-18 22:18:20 -04:00
Zachary Snow c103d0cb67 bump license year 2023-06-18 15:02:05 -04:00
Zachary Snow a05659cd06 better unfinished conditional directive error message 2023-06-17 12:56:23 -04:00
Zachary Snow 80095810b9 remove unneeded FlexibleInstances pragma in Type.hs 2023-06-13 23:07:21 -04:00