Conversation
…from directory without default program
ABenC377
previously approved these changes
Jun 5, 2024
FinnWilkinson
requested changes
Jun 11, 2024
Contributor
FinnWilkinson
left a comment
There was a problem hiding this comment.
I really like this concept of being able to add extra information to an instruction when an exception occurs. Could you also add this to the aarch64 instruction class and ExceptionHandler?
jj16791
reviewed
Jun 26, 2024
Contributor
Author
|
#rerun tests |
jj16791
reviewed
Jul 5, 2024
Contributor
jj16791
left a comment
There was a problem hiding this comment.
Holding off on approval until #414 (comment) has been resolved
FinnWilkinson
requested changes
Jul 5, 2024
FinnWilkinson
approved these changes
Jul 5, 2024
ABenC377
approved these changes
Jul 5, 2024
jj16791
approved these changes
Jul 5, 2024
JosephMoore25
approved these changes
Jul 8, 2024
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR updates logic used to decode compressed instructions. Previously, assertions were used to check for invalid usages of instructions but unfortunately these could be falsely triggered by speculated instructions which did not retire. Logic has been updated to cause an exception if one of these instructions reaches the commit stage. RISC-V instruction objects now carry a small string to provide extra information when the exception is printed.
Instructions with parameters that encode HINTS are now allowed to pass freely through the pipeline as they will cause no architectural state change. Quote from the spec: "HINTs are encoded as integer computational instructions with rd=x0. Hence, like the NOP instruction, HINTs do not change any architecturally visible state, except for advancing the pc and any applicable performance counters. Implementations are always allowed to ignore the encoded hints. ... [They] are usually used to communicate performance hints to the microarchitecture"