Skip to content

fix Zcmp extension fault handling - #3409

Open
zxz2004626 wants to merge 3 commits into
openhwgroup:masterfrom
zxz2004626:fix-zcmp
Open

fix Zcmp extension fault handling#3409
zxz2004626 wants to merge 3 commits into
openhwgroup:masterfrom
zxz2004626:fix-zcmp

Conversation

@zxz2004626

Copy link
Copy Markdown
Contributor
  • I have searched for similar pull requests
  • I am a human engaging in an interpersonal interaction. During this interaction, my words are my own and are not generated. If relevant, I provide links to my sources.

This PR is to fix issue #3408 .

The SPEC 28.1.13.3. PUSH/POP Fault handling requires the entire Zcmp PUSH/POP sequence is re-executed after returning from the trap handler.

The SPEC 28.1.13.7. cm.push, SPEC 28.1.13.8. cm.pop, SPEC 28.1.13.9. cm.popretz, SPEC 28.1.13.10. cm.popret statements
"The final section of pseudocode executes atomically, and only executes if the section above completes without any exceptions or interrupt" requires that adjusting the stack register, writing to the a0 register and returning should be executed atomically.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants