Wanda 
							
						 
						
							
							
							
							
								
							
							
								751e0f4b57 
								
							 
						 
						
							
							
								
								ir: kill Fragment.ports  
							
							
							
						 
						
							2024-02-27 08:26:30 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Amelia Cuss 
							
						 
						
							
							
							
							
								
							
							
								a586df89ad 
								
							 
						 
						
							
							
								
								lib.wiring.connect: diagnostic when no connection made.  
							
							... 
							
							
							
							If a connect() call results in no connections being made, and it's
because there were no outputs specified at all, issue an error.
Tests enumerate cases per
https://github.com/amaranth-lang/amaranth/pull/1153#issuecomment-1962810678 .
Co-authored-by: Catherine <whitequark@whitequark.org> 
							
						 
						
							2024-02-25 09:33:46 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Catherine 
							
						 
						
							
							
							
							
								
							
							
								09029cdd91 
								
							 
						 
						
							
							
								
								hdl._ir: remember origins of a fragment during elaboration.  
							
							... 
							
							
							
							This isn't expected to result in a significant increase in memory use,
so for now it's enabled by default. Elaboration chains where it is not
desired to preserve origins can delete the `origins` attribute from
the fragment and nothing will be stored.
The interface `Fragment.origins` remains private, as is the rest of
the `Fragment` interface (including itself), but it enables certain
codebases that currently use a much more invasive technique to rely on
reading a single private field. 
							
						 
						
							2024-02-22 19:03:55 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Amelia Cuss 
							
						 
						
							
							
							
							
								
							
							
								c40cfc9fb5 
								
							 
						 
						
							
							
								
								lib.enum: honor enum.nonmember.  
							
							... 
							
							
							
							Use _EnumDict._member_names to determine which members to consider.
This way we don't need to redo sunder/dunder checks, and `nonmember`s
(introduced in py3.11) are correctly excluded.
This is a defacto public API, given it remains usable from py3.8
until py3.12 inclusive.  (_member_names changes from a list to a
keys-only dict for performance reasons in py3.11, but they iterate the
same.) In current Python main (i.e. what will most likely be 3.13), a
"member_names" property is added which returns those keys. 
							
						 
						
							2024-02-19 23:06:22 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								890e099ec3 
								
							 
						 
						
							
							
								
								Implement RFC 45: Move hdl.Memory to lib.Memory.  
							
							
							
						 
						
							2024-02-19 22:24:58 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								6d65dc1366 
								
							 
						 
						
							
							
								
								hdl, back.rtlil: track and emit module/submodule locations.  
							
							
							
						 
						
							2024-02-19 21:41:32 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								6058ad35cf 
								
							 
						 
						
							
							
								
								hdl._ast: make Shape immutable and hashable.  
							
							... 
							
							
							
							Fixes  #1127 . 
						
							2024-02-16 15:21:05 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								24a392887a 
								
							 
						 
						
							
							
								
								Implement RFC 43: Rename reset= to init=.  
							
							
							
						 
						
							2024-02-15 22:52:24 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								e3324e1456 
								
							 
						 
						
							
							
								
								hdl._dsl: fix using 0-width Switch with integer keys.  
							
							... 
							
							
							
							Fixes  #1133 . 
						
							2024-02-14 19:13:14 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								5ffb48b5fb 
								
							 
						 
						
							
							
								
								hdl._ast: fix using 0-width Switch with integer keys.  
							
							... 
							
							
							
							This comes up in `AssignmentLegalizer`-produced `Switch`es for
`ArrayProxy`. 
							
						 
						
							2024-02-14 11:52:35 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								0ecd06a7e5 
								
							 
						 
						
							
							
								
								sim: fix using 0-width Switch.  
							
							
							
						 
						
							2024-02-14 11:51:19 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								0da439cce1 
								
							 
						 
						
							
							
								
								hdl._ast: deprecate ValueCastable.lowermethod.  
							
							
							
						 
						
							2024-02-13 05:06:06 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								e2fd819742 
								
							 
						 
						
							
							
								
								hdl._ast: fix shift_right and as_signed edge cases.  
							
							
							
						 
						
							2024-02-13 04:52:38 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Catherine 
							
						 
						
							
							
							
							
								
							
							
								0056e982c5 
								
							 
						 
						
							
							
								
								docs/reference: document Value, ValueCastable, ValueLike.  
							
							... 
							
							
							
							Co-authored-by: Wanda <wanda@phinode.net>
Co-authored-by: mcclure <mcclure@users.noreply.github.com> 
							
						 
						
							2024-02-13 03:22:04 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								4014f6429c 
								
							 
						 
						
							
							
								
								Implement RFC 27 amendment: deprecate add_sync_process, not add_process.  
							
							
							
						 
						
							2024-02-12 18:26:48 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								2d42d649ee 
								
							 
						 
						
							
							
								
								tests: stop using implicit ports.  
							
							
							
						 
						
							2024-02-12 13:24:54 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Catherine 
							
						 
						
							
							
							
							
								
							
							
								6f44438e58 
								
							 
						 
						
							
							
								
								hdl._ir,hdl._nir,back.rtlil: new intermediate representation.  
							
							... 
							
							
							
							The new intermediate representation will enable global analyses
on Amaranth code without lowering it to another representation
such as RTLIL.
This commit also changes the RTLIL builder to use the new IR.
Co-authored-by: Wanda <wanda@phinode.net> 
							
						 
						
							2024-02-11 09:03:49 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Catherine 
							
						 
						
							
							
							
							
								
							
							
								78981232d9 
								
							 
						 
						
							
							
								
								hdl.xfrm: add assignment legalizer.  
							
							... 
							
							
							
							Co-authored-by: Wanda <wanda@phinode.net> 
							
						 
						
							2024-02-11 09:03:49 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								45dbce13df 
								
							 
						 
						
							
							
								
								hdl: consistently use "comb" for combinatorial domain.  
							
							... 
							
							
							
							Fixes  #1097 . 
						
							2024-02-09 19:32:55 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								b6c5294e50 
								
							 
						 
						
							
							
								
								hdl.MemoryInstance: refactor and add first-class simulation support.  
							
							
							
						 
						
							2024-02-09 17:36:15 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								f4daf74634 
								
							 
						 
						
							
							
								
								sim: Add tests for memory access.  
							
							
							
						 
						
							2024-02-09 17:36:15 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								6e06fc013f 
								
							 
						 
						
							
							
								
								hdl.ir: associate statements with domains.  
							
							... 
							
							
							
							Fixes  #1079 . 
						
							2024-02-09 05:33:16 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								09854fa775 
								
							 
						 
						
							
							
								
								hdl.ast: make it impossible to construct *Castable instances.  
							
							... 
							
							
							
							Fixes  #1072 . 
						
							2024-02-09 05:26:58 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Catherine 
							
						 
						
							
							
							
							
								
							
							
								9e75962c35 
								
							 
						 
						
							
							
								
								Implement RFC 27: Testbench processes for the simulator.  
							
							... 
							
							
							
							Co-authored-by: Wanda <wanda@phinode.net> 
							
						 
						
							2024-02-06 23:12:07 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								f48b8650c4 
								
							 
						 
						
							
							
								
								sim: fix simulation loop when process catches an injected exception.  
							
							
							
						 
						
							2024-02-06 18:55:11 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Vegard Storheil Eriksen 
							
						 
						
							
							
							
							
								
							
							
								5e2f3b7992 
								
							 
						 
						
							
							
								
								Implement RFC 42: Const from shape-castable.  
							
							
							
						 
						
							2024-02-06 10:18:12 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								089213e19f 
								
							 
						 
						
							
							
								
								Implement RFC 46: Change Shape.cast(range(1)) to unsigned(0).  
							
							
							
						 
						
							2024-02-06 10:05:10 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Catherine 
							
						 
						
							
							
							
							
								
							
							
								357ffb680c 
								
							 
						 
						
							
							
								
								hdl: remove Repl per RFC 10.  
							
							... 
							
							
							
							Closes  #770 . 
						
							2024-01-31 03:01:35 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Catherine 
							
						 
						
							
							
							
							
								
							
							
								ea3d6c9557 
								
							 
						 
						
							
							
								
								docs/reference: document compat guarantee, importing, shapes.  
							
							... 
							
							
							
							This commit also contains a related semantic change: it adds `Shape`
and `ShapeCastable` to the `__all__` list in `amaranth.hdl`. This is
consistent with the policy that is laid out in the new documentation,
which permits such additions without notice.
Co-authored-by: mcclure <mcclure@users.noreply.github.com> 
							
						 
						
							2024-01-30 22:54:18 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Catherine 
							
						 
						
							
							
							
							
								
							
							
								5dd1223cf8 
								
							 
						 
						
							
							
								
								amaranth.hdl: start all private names with an underscore.  
							
							... 
							
							
							
							This change completes commit 9dc0617e and makes all the tests pass.
It corresponds with the ongoing langauge reference documentation effort.
Fixes  #781 . 
							
						 
						
							2024-01-30 17:20:45 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Catherine 
							
						 
						
							
							
							
							
								
							
							
								8678d5fa14 
								
							 
						 
						
							
							
								
								hdl.dsl: warn if a case is defined after a default case.  
							
							
							
						 
						
							2024-01-30 02:54:48 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								e9299ccd0e 
								
							 
						 
						
							
							
								
								hdl.ast: change warning on out-of-range reset to an error, improve it.  
							
							... 
							
							
							
							Fixes  #1019 . 
						
							2024-01-30 02:35:26 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								b40c18fb00 
								
							 
						 
						
							
							
								
								hdl.ast: suggest bit_select or word_select when indexing with Value.  
							
							... 
							
							
							
							Fixes  #1044 . 
						
							2024-01-18 20:06:55 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								ae36b596bb 
								
							 
						 
						
							
							
								
								hdl.mem: Switch to first-class IR representation for memories.  
							
							... 
							
							
							
							Fixes  #611 . 
						
							2024-01-17 08:10:28 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								bf8faea51e 
								
							 
						 
						
							
							
								
								hdl.ast: raise a sensible error for xxx in Value  
							
							
							
						 
						
							2024-01-14 00:36:44 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								86d14f584e 
								
							 
						 
						
							
							
								
								Implement RFC 39: Change semantics of no-argument m.Case().  
							
							
							
						 
						
							2024-01-13 22:33:54 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								7f76914b74 
								
							 
						 
						
							
							
								
								Implement RFC 17: Remove log2_int.  
							
							... 
							
							
							
							Reexports of `amaranth.utils` functions are removed from
`amaranth._utils` to avoid a circular import issue (for `deprecated`).
Since this is a private module, this should not be a problem. 
							
						 
						
							2024-01-11 04:45:17 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								ea258fad71 
								
							 
						 
						
							
							
								
								Change uses of Case() to Default() in preparation for RFC 39.  
							
							
							
						 
						
							2024-01-11 04:44:02 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Jaro Habiger 
							
						 
						
							
							
							
							
								
							
							
								ded84fe9d6 
								
							 
						 
						
							
							
								
								sim: fix ValueCastable not being recognized as a coroutine command  
							
							
							
						 
						
							2024-01-05 14:30:38 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Jaro Habiger 
							
						 
						
							
							
							
							
								
							
							
								cc9fe89049 
								
							 
						 
						
							
							
								
								hdl.ast: fix Array not being indexable by ValueCastable  
							
							
							
						 
						
							2024-01-03 13:46:16 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								0849e1af0b 
								
							 
						 
						
							
							
								
								hdl.ast: make Slice const-castable.  
							
							... 
							
							
							
							Fixes  #1006 . 
						
							2023-12-30 11:28:03 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								6780c838b2 
								
							 
						 
						
							
							
								
								hdl.ast: fix Const.cast(Cat(...))  handling for signed numbers.  
							
							
							
						 
						
							2023-12-30 11:27:08 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								8cd8cdde2b 
								
							 
						 
						
							
							
								
								Implement RFC 20: Remove non-FWFT FIFOs.  
							
							... 
							
							
							
							Fixes  #875 . 
						
							2023-12-13 11:41:19 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Catherine 
							
						 
						
							
							
							
							
								
							
							
								9d4ffab104 
								
							 
						 
						
							
							
								
								compat: remove.  
							
							... 
							
							
							
							Fixes  #692 . 
						
							2023-12-13 11:20:12 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Catherine 
							
						 
						
							
							
							
							
								
							
							
								750cbbc3c7 
								
							 
						 
						
							
							
								
								hdl: remove deprecated Sample, Past, Stable, Rose, Fell.  
							
							
							
						 
						
							2023-12-13 11:13:14 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Catherine 
							
						 
						
							
							
							
							
								
							
							
								475b0f35dd 
								
							 
						 
						
							
							
								
								Implement RFC 19: Remove amaranth.lib.scheduler.  
							
							... 
							
							
							
							Closes  #874 . 
						
							2023-12-13 09:53:54 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Catherine 
							
						 
						
							
							
							
							
								
							
							
								a2aa07cbc7 
								
							 
						 
						
							
							
								
								lib.wiring: document  amaranth-lang/rfcs#2 . WIP  
							
							... 
							
							
							
							Co-authored-by: Charlotte <charlotte@hrzn.ee> 
							
						 
						
							2023-12-11 22:57:30 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Jean-François Nguyen 
							
						 
						
							
							
							
							
								
							
							
								d154bddf17 
								
							 
						 
						
							
							
								
								lib.wiring: preserve insertion order in SignatureMembers.__iter__.  
							
							
							
						 
						
							2023-12-11 22:34:57 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								8e6ae9e6e0 
								
							 
						 
						
							
							
								
								Implement RFC 38: Component signature immutability.  
							
							... 
							
							
							
							Fixes  #996 . 
						
							2023-12-11 19:51:32 +00:00 
							
								 
							
						 
					 
				
					
						
							
							
								Wanda 
							
						 
						
							
							
							
							
								
							
							
								6ad0d21cc9 
								
							 
						 
						
							
							
								
								Implement RFC 37: Make `Signature` immutable.  
							
							... 
							
							
							
							Fixes  #995 . 
						
							2023-12-11 19:01:32 +00:00