Internships/ProjectIdeas/CentralRegisterRegistry: Difference between revisions
(Created page with "=== Central Register Registry === '''Summary:''' Provide a new internal API for accessing register values Currently there are a number of places that need to access guest re...") |
No edit summary |
||
Line 5: | Line 5: | ||
Currently there are a number of places that need to access guest register values including: | Currently there are a number of places that need to access guest register values including: | ||
* -d cpu output | |||
* hmp/qmp info registers | |||
* gdbstub | |||
and places that would like to access the register values like the TCG plugins sub-system. It's time to bring | and places that would like to access the register values like the TCG plugins sub-system. | ||
Currently this is all handled by each individual front-end interfacing to the various sub-systems. It's time to bring that functionality under a single roof so front-ends just notify a central registry of how to access values and the central code can deal with interfacing with the other subsystems. Then quality of life improvements could be added like: | |||
* customising the registers the -d cpu displays | |||
* giving access to other registers in QMP/HMP | |||
* de-duplicating the GDB XML generation for extra registers | |||
* hooking in TCG plugins | |||
'''Links:''' | '''Links:''' |
Latest revision as of 13:41, 14 February 2022
Central Register Registry
Summary: Provide a new internal API for accessing register values
Currently there are a number of places that need to access guest register values including:
- -d cpu output
- hmp/qmp info registers
- gdbstub
and places that would like to access the register values like the TCG plugins sub-system.
Currently this is all handled by each individual front-end interfacing to the various sub-systems. It's time to bring that functionality under a single roof so front-ends just notify a central registry of how to access values and the central code can deal with interfacing with the other subsystems. Then quality of life improvements could be added like:
- customising the registers the -d cpu displays
- giving access to other registers in QMP/HMP
- de-duplicating the GDB XML generation for extra registers
- hooking in TCG plugins
Links:
Details:
- Skill level: intermediate
- Language: C
- Mentor: Alex Bennée <alex.bennee@linaro.org> ("stsquad" on IRC)
- Suggested by: Alex Bennée