Changeset 100724 in vbox for trunk/include
- Timestamp:
- Jul 28, 2023 8:17:21 AM (17 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/vmm/cpumctx-armv8.h
r100723 r100724 119 119 #ifndef VBOX_FOR_DTRACE_LIB 120 120 AssertCompileSize(CPUMCTXSYSREG, 8); 121 #endif 121 122 122 123 … … 137 138 /** Pointer to a const debug register state. */ 138 139 typedef const CPUMCTXSYSREGDBG *PCCPUMCTXSYSREGDBG; 140 #ifndef VBOX_FOR_DTRACE_LIB 141 AssertCompileSize(CPUMCTXSYSREGDBG, 16); 142 #endif 143 144 145 /** 146 * A pointer authentication key register state (low and high), these are held together 147 * because they will be accessed together very often and thus minimizes 148 * stress on the cache. 149 */ 150 typedef struct CPUMCTXSYSREGPAKEY 151 { 152 /** The low key register. */ 153 CPUMCTXSYSREG Low; 154 /** The high key register. */ 155 CPUMCTXSYSREG High; 156 } CPUMCTXSYSREGPAKEY; 157 /** Pointer to a pointer authentication key register state. */ 158 typedef CPUMCTXSYSREGPAKEY *PCPUMCTXSYSREGPAKEY; 159 /** Pointer to a const pointer authentication key register state. */ 160 typedef const CPUMCTXSYSREGPAKEY *PCCPUMCTXSYSREGPAKEY; 161 #ifndef VBOX_FOR_DTRACE_LIB 162 AssertCompileSize(CPUMCTXSYSREGPAKEY, 16); 139 163 #endif 140 164 … … 167 191 /** The VBAR_EL1 register. */ 168 192 CPUMCTXSYSREG VBar; 169 /** Breakpoint registers, DBGB{C,V} <n>_EL1. */193 /** Breakpoint registers, DBGB{C,V}n_EL1. */ 170 194 CPUMCTXSYSREGDBG aBp[16]; 171 /** Watchpoint registers, DBGW{C,V} <n>_EL1. */195 /** Watchpoint registers, DBGW{C,V}n_EL1. */ 172 196 CPUMCTXSYSREGDBG aWp[16]; 197 /** APDA key register state. */ 198 CPUMCTXSYSREGPAKEY Apda; 199 /** APDB key register state. */ 200 CPUMCTXSYSREGPAKEY Apdb; 201 /** APGA key register state. */ 202 CPUMCTXSYSREGPAKEY Apga; 203 /** APIA key register state. */ 204 CPUMCTXSYSREGPAKEY Apia; 205 /** APIB key register state. */ 206 CPUMCTXSYSREGPAKEY Apib; 173 207 174 208 /** Floating point control register. */ … … 194 228 uint64_t CntvCValEl0; 195 229 196 uint64_t au64Padding2[ 6];230 uint64_t au64Padding2[4]; 197 231 } CPUMCTX; 198 232 … … 257 291 /** Debug system registers are kept externally. */ 258 292 #define CPUMCTX_EXTRN_SYSREG_DEBUG UINT64_C(0x0000000000010000) 293 /** PAuth key system registers are kept externally. */ 294 #define CPUMCTX_EXTRN_SYSREG_PAUTH_KEYS UINT64_C(0x0000000000020000) 259 295 /** Various system registers (rarely accessed) are kept externally. */ 260 #define CPUMCTX_EXTRN_SYSREG_MISC UINT64_C(0x00000000000 20000)296 #define CPUMCTX_EXTRN_SYSREG_MISC UINT64_C(0x0000000000040000) 261 297 262 298 /** Mask of bits the keepers can use for state tracking. */
Note:
See TracChangeset
for help on using the changeset viewer.