On 7/25/25 04:22, Peter Maydell wrote:
@@ -428,6 +467,33 @@ static bool target_restore_tpidr2_record(CPUARMState *env,
return true;
}
+static bool target_restore_zt_record(CPUARMState *env,
+ struct target_zt_context *zt, int size,
+ int svcr)
+{
+ uint16_t nregs;
+ uint64_t *z;
+
+ if (!cpu_isar_feature(aa64_sme2, env_archcpu(env))) {
+ return false;
+ }
I think this is better placed with case TARGET_ZT_MAGIC.
+ if (!(FIELD_EX64(env->svcr, SVCR, ZA))) {
Need to check svcr the argument, which has not yet been stored to env.
You even knew that from the comment before calling this function. :-)
r~