iss: Add conditional exit of cosimulation based on instruction address and memory writes#705
Merged
iss: Add conditional exit of cosimulation based on instruction address and memory writes#705
Conversation
Jozott00
requested changes
Feb 14, 2026
Contributor
Jozott00
left a comment
There was a problem hiding this comment.
Looks very good! I think once the exit on write with value is implemented, we can merge this.
fad149b to
b381a7a
Compare
Jozott00
approved these changes
Feb 26, 2026
9e4f460 to
793f6ac
Compare
793f6ac to
ad93158
Compare
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 adds new configuration options to tell the Co-Simulation broker to stop Co-Simulation before the clients finished executing. It is now possible to exit if a certain address is reached or if a memory write at some address (and some written value) occurred. These addresses / values can either be constant values or symbols based on the input file.
For example, if you want to exit on the label
cosim_exit(assume that this label has a fixed location of0x12345678), given some assembly:Either set the following flag when executing the broker:
--exit-on-exec "cosim_exit"(by label/symbol name)--exit-on-exec "0x12345678"(by hex value)--exit-on-exec "305419896"(by decimal value)Or through the config file under
[testing.exit_condition]:on_address = 0x12345678on_address = 305419896on_label = "cosim_exit"(settingon_labeloverrideson_address)Checking memory writes is still WIP ( @Jozott00 )