aboutsummaryrefslogtreecommitdiff
path: root/target/ppc/spr_common.h
diff options
context:
space:
mode:
authorNicholas Miehlbradt <nicholas@linux.ibm.com>2022-12-20 04:23:29 +0000
committerDaniel Henrique Barboza <danielhb413@gmail.com>2022-12-21 14:17:55 -0300
commit395b5d5b455ac3f6ebf9534454b7187a1d6118a4 (patch)
tree7a4413290f12bb03683a3ba04bb500420fcddb57 /target/ppc/spr_common.h
parent320c5ad8fffe8ce7562fcc34975398bb4bb50666 (diff)
target/ppc: Implement the DEXCR and HDEXCR
Define the DEXCR and HDEXCR as special purpose registers. Each register occupies two SPR indicies, one which can be read in an unprivileged state and one which can be modified in the appropriate priviliged state, however both indicies refer to the same underlying value. Note that the ISA uses the abbreviation UDEXCR in two different contexts: the userspace DEXCR, the SPR index which can be read from userspace (implemented in this patch), and the ultravisor DEXCR, the equivalent register for the ultravisor state (not implemented). Signed-off-by: Nicholas Miehlbradt <nicholas@linux.ibm.com> Reviewed-by: Daniel Henrique Barboza <danielhb413@gmail.com> Message-Id: <20221220042330.2387944-2-nicholas@linux.ibm.com> Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
Diffstat (limited to 'target/ppc/spr_common.h')
-rw-r--r--target/ppc/spr_common.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/target/ppc/spr_common.h b/target/ppc/spr_common.h
index b5a5bc6895..8437eb0340 100644
--- a/target/ppc/spr_common.h
+++ b/target/ppc/spr_common.h
@@ -195,6 +195,7 @@ void spr_read_ebb_upper32(DisasContext *ctx, int gprn, int sprn);
void spr_write_ebb_upper32(DisasContext *ctx, int sprn, int gprn);
void spr_write_hmer(DisasContext *ctx, int sprn, int gprn);
void spr_write_lpcr(DisasContext *ctx, int sprn, int gprn);
+void spr_read_dexcr_ureg(DisasContext *ctx, int gprn, int sprn);
#endif
void register_low_BATs(CPUPPCState *env);