Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Split iflags into 4 registers #299

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open

Conversation

diegonehab
Copy link
Contributor

@diegonehab diegonehab commented Dec 23, 2024

This PR splits the iflags register in to 4 64-bit registers: iprv, iflags_X, iflags_Y, iflags_H.
This simplifies the implementation and paves the way for a lot of further simplifications because we do not have to implement read/modify/write when accessing pieces of a single 64-bit register anymore.
This even reduces the number of accesses in the access-log for send_cmio_response.
The PR goes further and removes the special register access functions from the C and Lua API.
Now every access must go through cm_read_reg/cm_write_reg.

@diegonehab diegonehab added the enhancement New feature or request label Dec 23, 2024
@diegonehab diegonehab added this to the v0.19.0 milestone Dec 23, 2024
@diegonehab diegonehab self-assigned this Dec 23, 2024
@diegonehab
Copy link
Contributor Author

@mpernambuco This may impact solidity step, because we don't have to read iflags anymore when we want to write part of it. I think this may be automatic in the uarch, but may not be automatic in send_cmio_response. Can you check?

This simplifies the implementation and paves the way for a lot of
further simplifications.
@diegonehab diegonehab force-pushed the refactor/split-iflags branch from 1f7c63c to 0b141d8 Compare December 23, 2024 23:09
@diegonehab diegonehab marked this pull request as ready for review December 24, 2024 08:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: Todo
Development

Successfully merging this pull request may close these issues.

1 participant