diff --git a/qemu/target-sparc/translate.c b/qemu/target-sparc/translate.c index bfcd3330..27486900 100644 --- a/qemu/target-sparc/translate.c +++ b/qemu/target-sparc/translate.c @@ -3631,6 +3631,17 @@ static void disas_sparc_insn(DisasContext * dc, unsigned int insn, bool hook_ins case 0x19: /* System tick compare */ gen_store_gpr(dc, rd, tcg_ctx->cpu_stick_cmpr); break; + case 0x1a: /* UltraSPARC-T1 Strand status */ + /* XXX HYPV check maybe not enough, UA2005 & UA2007 describe + * this ASR as impl. dep + */ + CHECK_IU_FEATURE(dc, HYPV); + { + TCGv t = gen_dest_gpr(dc, rd); + tcg_gen_movi_tl(tcg_ctx, t, 1UL); + gen_store_gpr(dc, rd, t); + } + break; case 0x10: /* Performance Control */ case 0x11: /* Performance Instrumentation Counter */ case 0x12: /* Dispatch Control */