3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2026-02-14 21:01:50 +00:00
yosys/frontends
Andrew Pullin deadaa9220 ast: Add support for array-to-array assignment
This commit adds support for SystemVerilog array-to-array assignment
operations that were previously unsupported:

1. Direct array assignment: `b = a;`
2. Array ternary expressions: `out = sel ? a : b;`

Both single-dimensional and multi-dimensional unpacked arrays are
supported. The implementation expands these array operations during
AST simplification into element-wise assignments.

Example of now-supported syntax:
```systemverilog
wire [7:0] state_regs[8];
wire [7:0] r[8];
wire [7:0] sel[8];
assign sel = condition ? state_regs : r;
```

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-23 11:06:08 -08:00
..
aiger Remove .c_str() from parameters to log_debug() 2025-09-23 19:10:33 +12:00
aiger2 Enable xaiger2 pass when not in NDEBUG 2025-11-21 14:23:32 -08:00
ast ast: Add support for array-to-array assignment 2026-01-23 11:06:08 -08:00
blif Forbid creating IdStrings and incrementing autoidx during multithreaded phases, and add dynamic checks for that 2025-11-25 21:57:46 +00:00
json Use fast path for 32-bit Const integer constructor in more places 2025-09-16 03:17:24 +00:00
liberty read_liberty: support loopy retention cells 2025-11-20 13:21:32 +01:00
rpc Remove .c_str() from parameters to log_debug() 2025-09-23 19:10:33 +12:00
rtlil Add -legalize option to read_rtlil 2025-12-21 21:47:48 +00:00
verific verific: Fix -sv2017 message and formatting 2026-01-20 08:07:26 +01:00
verilog read_verilog: remove log I left behind by accident 2026-01-13 18:47:23 +01:00