You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Introduce a ranged index operator for CoreDSL (currently, this is only supported for bit ranges, and with constant indices!)
X[rd] = MEM[base+3:base];
Make loads as wide as the assignment target, and stores as wide as the value to be written. This would be the first context-sensitive type rule in the language, and hence doesn't fit well into the overall semantics.
The text was updated successfully, but these errors were encountered:
jopperm
changed the title
Address spaces accesses in load/store instruction are too narrow
Address space accesses in load/store instructions are too narrow
Jun 24, 2022
Problem
We currently define the main memory address space as:
RISCV_ISA_CoreDSL/RISCVBase.core_desc
Line 48 in 28abf7c
Then, a single index expression like in here:
RISCV_ISA_CoreDSL/RV32I.core_desc
Lines 129 to 137 in 28abf7c
... would only yield a
char
result (as declared), which is then wrongly sign-extended to 32-bits.Possible solutions
The text was updated successfully, but these errors were encountered: