Changeset 99379 in vbox
- Timestamp:
- Apr 12, 2023 10:30:59 AM (2 years ago)
- svn:sync-xref-src-repo-rev:
- 156805
- Location:
- trunk
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/vmm/cpumctx-armv8.h
r99378 r99379 141 141 /** The SCTLR_EL1 register. */ 142 142 CPUMCTXSYSREG Sctlr; 143 /** THe TCR_EL1 register. */ 144 CPUMCTXSYSREG Tcr; 143 145 /** The TTBR0_EL1 register. */ 144 146 CPUMCTXSYSREG Ttbr0; … … 158 160 uint64_t fExtrn; 159 161 160 uint64_t au64Padding1[ 3];162 uint64_t au64Padding1[2]; 161 163 } CPUMCTX; 162 164 … … 192 194 /** The PSTATE value is kept externally. */ 193 195 #define CPUMCTX_EXTRN_PSTATE UINT64_C(0x0000000000000040) 194 /** The SCTRL_EL1/T TBR{0,1}_EL1 system registers are kept externally. */195 #define CPUMCTX_EXTRN_SCTLR_T TBRUINT64_C(0x0000000000000080)196 /** The SCTRL_EL1/TCR_EL1/TTBR{0,1}_EL1 system registers are kept externally. */ 197 #define CPUMCTX_EXTRN_SCTLR_TCR_TTBR UINT64_C(0x0000000000000080) 196 198 197 199 /** The X0 register value is kept externally. */ -
trunk/include/VBox/vmm/dbgf.h
r99376 r99379 2155 2155 DBGFREG_ARMV8_SPSR_EL1, 2156 2156 DBGFREG_ARMV8_SPSR_EL2, 2157 DBGFREG_ARMV8_PSTATE = DBGFREG_ARMV8_SPSR_EL2, 2157 2158 DBGFREG_ARMV8_SCTLR_EL1, 2159 DBGFREG_ARMV8_TCR_EL1, 2158 2160 DBGFREG_ARMV8_TTBR0_EL1, 2159 2161 DBGFREG_ARMV8_TTBR1_EL1, 2160 DBGFREG_ARMV8_PSTATE = DBGFREG_ARMV8_SPSR_EL2,2161 2162 DBGFREG_ARMV8_ELR_EL1, 2162 2163 -
trunk/src/VBox/VMM/VMMR3/CPUMDbg-armv8.cpp
r99376 r99379 276 276 CPU_REG_RW_AS("spsr_el1", SPSR_EL1, U64, Spsr, cpumR3RegGet_Generic, cpumR3RegSet_Generic, NULL, NULL ), 277 277 CPU_REG_RW_AS("sctlr_el1", SCTLR_EL1, U64, Sctlr, cpumR3RegGet_Generic, cpumR3RegSet_Generic, NULL, NULL ), 278 CPU_REG_RW_AS("tcr_el1", TCR_EL1, U64, Tcr, cpumR3RegGet_Generic, cpumR3RegSet_Generic, NULL, NULL ), 278 279 CPU_REG_RW_AS("ttbr0_el1", TTBR0_EL1, U64, Ttbr0, cpumR3RegGet_Generic, cpumR3RegSet_Generic, NULL, NULL ), 279 280 CPU_REG_RW_AS("ttbr1_el1", TTBR1_EL1, U64, Ttbr1, cpumR3RegGet_Generic, cpumR3RegSet_Generic, NULL, NULL ), -
trunk/src/VBox/VMM/VMMR3/NEMR3Native-darwin-armv8.cpp
r99377 r99379 177 177 } s_aCpumSysRegs[] = 178 178 { 179 { HV_SYS_REG_SP_EL0, CPUMCTX_EXTRN_SP, RT_UOFFSETOF(CPUMCTX, aSpReg[0].u64) }, 180 { HV_SYS_REG_SP_EL1, CPUMCTX_EXTRN_SP, RT_UOFFSETOF(CPUMCTX, aSpReg[1].u64) }, 181 { HV_SYS_REG_SPSR_EL1, CPUMCTX_EXTRN_SPSR, RT_UOFFSETOF(CPUMCTX, Spsr.u64) }, 182 { HV_SYS_REG_ELR_EL1, CPUMCTX_EXTRN_ELR, RT_UOFFSETOF(CPUMCTX, Elr.u64) }, 183 { HV_SYS_REG_SCTLR_EL1, CPUMCTX_EXTRN_SCTLR_TTBR, RT_UOFFSETOF(CPUMCTX, Sctlr.u64) }, 184 { HV_SYS_REG_TTBR0_EL1, CPUMCTX_EXTRN_SCTLR_TTBR, RT_UOFFSETOF(CPUMCTX, Ttbr0.u64) }, 185 { HV_SYS_REG_TTBR1_EL1, CPUMCTX_EXTRN_SCTLR_TTBR, RT_UOFFSETOF(CPUMCTX, Ttbr1.u64) }, 179 { HV_SYS_REG_SP_EL0, CPUMCTX_EXTRN_SP, RT_UOFFSETOF(CPUMCTX, aSpReg[0].u64) }, 180 { HV_SYS_REG_SP_EL1, CPUMCTX_EXTRN_SP, RT_UOFFSETOF(CPUMCTX, aSpReg[1].u64) }, 181 { HV_SYS_REG_SPSR_EL1, CPUMCTX_EXTRN_SPSR, RT_UOFFSETOF(CPUMCTX, Spsr.u64) }, 182 { HV_SYS_REG_ELR_EL1, CPUMCTX_EXTRN_ELR, RT_UOFFSETOF(CPUMCTX, Elr.u64) }, 183 { HV_SYS_REG_SCTLR_EL1, CPUMCTX_EXTRN_SCTLR_TCR_TTBR, RT_UOFFSETOF(CPUMCTX, Sctlr.u64) }, 184 { HV_SYS_REG_TCR_EL1, CPUMCTX_EXTRN_SCTLR_TCR_TTBR, RT_UOFFSETOF(CPUMCTX, Tcr.u64) }, 185 { HV_SYS_REG_TTBR0_EL1, CPUMCTX_EXTRN_SCTLR_TCR_TTBR, RT_UOFFSETOF(CPUMCTX, Ttbr0.u64) }, 186 { HV_SYS_REG_TTBR1_EL1, CPUMCTX_EXTRN_SCTLR_TCR_TTBR, RT_UOFFSETOF(CPUMCTX, Ttbr1.u64) }, 186 187 }; 187 188 … … 419 420 "pc=%016VR{pc} pstate=%016VR{pstate}\n" 420 421 "sp_el0=%016VR{sp_el0} sp_el1=%016VR{sp_el1} elr_el1=%016VR{elr_el1}\n" 421 "sctlr_el1=%016VR{sctlr_el1} ttbr0_el1=%016VR{ttbr0_el1} ttbr1_el1=%016VR{ttbr1_el1}\n" 422 "sctlr_el1=%016VR{sctlr_el1} tcr_el1=%016VR{tcr_el1}\n" 423 "ttbr0_el1=%016VR{ttbr0_el1} ttbr1_el1=%016VR{ttbr1_el1}\n" 422 424 ); 423 425 char szInstr[256]; RT_ZERO(szInstr); … … 462 464 463 465 if ( hrc == HV_SUCCESS 464 && (fWhat & (CPUMCTX_EXTRN_SPSR | CPUMCTX_EXTRN_ELR | CPUMCTX_EXTRN_SP | CPUMCTX_EXTRN_SCTLR_T TBR)))466 && (fWhat & (CPUMCTX_EXTRN_SPSR | CPUMCTX_EXTRN_ELR | CPUMCTX_EXTRN_SP | CPUMCTX_EXTRN_SCTLR_TCR_TTBR))) 465 467 { 466 468 /* System registers. */ … … 650 652 651 653 if ( hrc == HV_SUCCESS 652 && (pVCpu->cpum.GstCtx.fExtrn & (CPUMCTX_EXTRN_SPSR | CPUMCTX_EXTRN_ELR | CPUMCTX_EXTRN_SP ))653 != (CPUMCTX_EXTRN_SPSR | CPUMCTX_EXTRN_ELR | CPUMCTX_EXTRN_SP ))654 && (pVCpu->cpum.GstCtx.fExtrn & (CPUMCTX_EXTRN_SPSR | CPUMCTX_EXTRN_ELR | CPUMCTX_EXTRN_SP | CPUMCTX_EXTRN_SCTLR_TCR_TTBR)) 655 != (CPUMCTX_EXTRN_SPSR | CPUMCTX_EXTRN_ELR | CPUMCTX_EXTRN_SP | CPUMCTX_EXTRN_SCTLR_TCR_TTBR)) 654 656 { 655 657 /* System registers. */
Note:
See TracChangeset
for help on using the changeset viewer.