Commit graph

187 commits

Author SHA1 Message Date
30b9a5e48d
change NameId to have an opaque Id so output firrtl doesn't depend on how many modules of the same name were ever created 2024-10-07 19:06:01 -07:00
eed0afc6ab
add some utility From<Interned<T>> impls 2024-10-07 19:05:20 -07:00
2e8b73d2fc
rename fire/fire_data to firing/firing_data 2024-10-06 19:04:48 -07:00
e05c368688
change register names to end in _reg by convention 2024-10-06 18:50:09 -07:00
b7f1101164
reduce parallelism to fit within the number of available cpus even when running sby in prove mode (which likes to run 2 smt solvers in parallel) 2024-10-04 17:03:51 -07:00
0d54b9a2a9
queue formal proof passes! 2024-10-03 23:07:14 -07:00
343805f80b
fix #[hdl] to work with unusual identifier hygiene from macros 2024-10-03 23:04:14 -07:00
4084a70485
switch default solver to z3 2024-10-03 01:43:46 -07:00
3e2fb9b94f
WIP getting queue formal to pass -- passes for capacity <= 2 2024-10-03 01:08:01 -07:00
0cf01600b3
add mod formal and move assert/assume/cover stuff to it 2024-10-01 19:56:17 -07:00
f3d6528f5b
make annotations easier to use 2024-10-01 19:54:17 -07:00
f35d88d2bb
remove unused valueless.rs 2024-10-01 18:41:41 -07:00
e8c393f3bb
sort pub mod items 2024-10-01 18:40:52 -07:00
d0b406d288
add more annotation kinds 2024-10-01 18:33:32 -07:00
2a25dd9d7b
fix annotations getting lost 2024-10-01 18:31:44 -07:00
6e0b6c000d
remove stray debugging prints 2024-10-01 18:30:46 -07:00
d089095667
change default to --simplify-enums=replace-with-bundle-of-uints 2024-10-01 00:07:48 -07:00
9d66fcc548
improve ExportOptions support in assert_export_firrtl! 2024-10-01 00:05:39 -07:00
186488a82e
remove FIXME now that simplify_enums is fixed 2024-09-30 23:31:45 -07:00
edcea1adc3
add firrtl comments when connecting expressions with different types 2024-09-30 22:33:27 -07:00
30a38bc8da
fix simplify_enums to properly handle nested enums and connects with different types 2024-09-30 22:31:16 -07:00
1e2831da47
add validation of connects and matches when validating module
this is useful for catching errors in transformation passes
2024-09-30 21:20:35 -07:00
d2ba313f0f
fix simplify_memories trying to connect Bool with UInt 2024-09-30 21:19:20 -07:00
04752c5037
add test for connect_any with nested enums with different-sized variant bodies
simplify_enums is currently broken in that case
2024-09-25 21:55:52 -07:00
e661aeab11
add WIP formal proof for queue() 2024-09-25 02:00:06 -07:00
5fc7dbd6e9
add assert_formal helper for running formal proofs in rust tests 2024-09-25 02:00:06 -07:00
45dbb554d0
add formal subcommand 2024-09-25 02:00:06 -07:00
bb860d54cc
add command line options for selecting which transforms to apply when generating firrtl 2024-09-25 02:00:06 -07:00
efc3a539ed
support redirecting subprocesses' stdout/stderr to print!() so it gets captured for rust tests 2024-09-25 02:00:06 -07:00
f32c0a7863
switch to #[derive(Parser)] instead of #[derive(Args)] 2024-09-25 01:28:11 -07:00
4ff01690a7
clean up deps and move missed deps to workspace 2024-09-25 01:22:35 -07:00
28aad19bf5
add assert/assume/cover 2024-09-23 19:10:51 -07:00
716c65edcd
add WIP version of queue() 2024-09-22 18:59:12 -07:00
f6146048d1
add memory::splat_mask to generate mask types from a Bool 2024-09-22 18:57:30 -07:00
a701f99fd6
add repeat() 2024-09-22 18:56:26 -07:00
78edfc97b2
split int::IntCmp into expr::HdlPartialEq and expr::HdlPartialOrd 2024-09-22 17:28:46 -07:00
9ad4ec0f39
add ty.uninit() 2024-09-22 17:26:23 -07:00
8449854cac
add ToExpr for usize/isize/NonZero<T> 2024-09-22 17:19:58 -07:00
790bb15408
remove reset_default from proc-macro, forgot to remove when removing from RegBuilder 2024-09-22 16:03:20 -07:00
10ae95fac1
add missing copyright headers 2024-09-22 15:30:05 -07:00
51ce7b079e
add ReadyValid<T> 2024-09-20 19:11:30 -07:00
ff269e5def
add utility functions on HdlOption, inspired by Option's API 2024-09-20 18:49:12 -07:00
df55a514e4
add support for incomplete_wire -- a wire that you can supply the type of later 2024-09-20 18:46:56 -07:00
ff94dda922
support #[hdl] on functions -- enables #[hdl] usage in function body 2024-09-20 18:42:24 -07:00
a8c804ef4a
some final cleanups 2024-09-19 23:52:32 -07:00
2d293ae87b
#[hdl] match works! 2024-09-19 23:51:54 -07:00
9887d70f41
fix handling of const and size type generics when generating Index impls 2024-09-19 18:45:04 -07:00
2c1afd1cd6
const generics on hdl_module work! 2024-09-17 15:39:23 -07:00
76ea7f82c3
WIP adding const generics 2024-09-16 16:47:10 -07:00
5835b995a9
WIP: use HdlOption[the_type_var] or UInt[123 + n] for creating types 2024-08-21 22:27:21 -07:00