Commit graph

33 commits

Author SHA1 Message Date
Jacob Lifshay 4909724995
add more thorough checks that bounds are properly handled on #[hdl] structs 2024-10-10 23:34:46 -07:00
Jacob Lifshay d0694cbd52
add disabled test for #[hdl] struct S4<W: KnownSize, W2: KnownSize> which type errors 2024-10-10 22:58:15 -07:00
Jacob Lifshay 1a2149b040
silence warnings for field names that start with _ 2024-10-10 20:53:29 -07:00
Jacob Lifshay 59cef3f398
add PhantomData as a hdl bundle 2024-10-10 20:48:09 -07:00
Jacob Lifshay ed1aea41f3
clean up some clippy warnings 2024-10-07 21:49:18 -07:00
Jacob Lifshay 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
Jacob Lifshay e05c368688
change register names to end in _reg by convention 2024-10-06 18:50:09 -07:00
Jacob Lifshay 0d54b9a2a9
queue formal proof passes! 2024-10-03 23:07:14 -07:00
Jacob Lifshay 343805f80b
fix #[hdl] to work with unusual identifier hygiene from macros 2024-10-03 23:04:14 -07:00
Jacob Lifshay 3e2fb9b94f
WIP getting queue formal to pass -- passes for capacity <= 2 2024-10-03 01:08:01 -07:00
Jacob Lifshay f3d6528f5b
make annotations easier to use 2024-10-01 19:54:17 -07:00
Jacob Lifshay d0b406d288
add more annotation kinds 2024-10-01 18:33:32 -07:00
Jacob Lifshay d089095667
change default to --simplify-enums=replace-with-bundle-of-uints 2024-10-01 00:07:48 -07:00
Jacob Lifshay 186488a82e
remove FIXME now that simplify_enums is fixed 2024-09-30 23:31:45 -07:00
Jacob Lifshay edcea1adc3
add firrtl comments when connecting expressions with different types 2024-09-30 22:33:27 -07:00
Jacob Lifshay 30a38bc8da
fix simplify_enums to properly handle nested enums and connects with different types 2024-09-30 22:31:16 -07:00
Jacob Lifshay 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
Jacob Lifshay 28aad19bf5
add assert/assume/cover 2024-09-23 19:10:51 -07:00
Jacob Lifshay 9ad4ec0f39
add ty.uninit() 2024-09-22 17:26:23 -07:00
Jacob Lifshay ff94dda922
support #[hdl] on functions -- enables #[hdl] usage in function body 2024-09-20 18:42:24 -07:00
Jacob Lifshay a8c804ef4a
some final cleanups 2024-09-19 23:52:32 -07:00
Jacob Lifshay 2d293ae87b
#[hdl] match works! 2024-09-19 23:51:54 -07:00
Jacob Lifshay 9887d70f41
fix handling of const and size type generics when generating Index impls 2024-09-19 18:45:04 -07:00
Jacob Lifshay 2c1afd1cd6
const generics on hdl_module work! 2024-09-17 15:39:23 -07:00
Jacob Lifshay 5835b995a9
WIP: use HdlOption[the_type_var] or UInt[123 + n] for creating types 2024-08-21 22:27:21 -07:00
Jacob Lifshay cd99dbc849
properly bound with StaticValue or StaticType<MaskType: StaticType> 2024-07-30 20:25:37 -07:00
Jacob Lifshay 2dce478d48
rename FixedType->StaticType, fixed_type()->static_type(), hdl(fixed_type)->hdl(static), IsFixedLen->IsStaticLen 2024-07-30 20:16:00 -07:00
Jacob Lifshay b33566841d
make #[hdl_module] support functions with generic parameters 2024-07-25 22:20:38 -07:00
Jacob Lifshay 86827def91
rename ClockDomain fields to clk and rst for consistency 2024-07-16 19:46:08 -07:00
Jacob Lifshay 63fd038729
correctly handle hdl byte literal suffixes 2024-07-16 19:45:12 -07:00
Jacob Lifshay c2e5ea8e89
implement #[hdl] [a; N] -- an array repeat expression 2024-07-16 17:19:17 -07:00
Jacob Lifshay d610858144
move Value derive macro re-export to same place as Value trait 2024-07-16 16:51:54 -07:00
Jacob Lifshay 0b958e7852
initial public commit 2024-06-10 23:09:13 -07:00