Skip to content

Incorrect behavior when using CSR Instructions to access non-existent registers #19

@EAlexJ

Description

@EAlexJ

At the moment, CSR Instructions are not behaving as intended when accessing non-existent CSRs.
The issue is that after an unsuccessful / illegal read the instruction does not get aborted, rather it continues executing. In the case of CSRRW for example, this leads to writing the read value into rd.

This occurs as there are no checks after calling read_mem or write_mem to determine if they were successful.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions