> 2023年5月7日 18:34,Maciej W. Rozycki <ma...@orcam.me.uk> 写道:
>
> On Wed, 3 May 2023, Jiaxun Yang wrote:
>
>> Since it’s possible to run R2- binary on R2+ processor, we’d better find a
>> semantic that do eliminate speculation on all processors. While SSNOPs
>> on R2+ processors is pretty much undefined, there is no guarantee that
>> SSNOP sequence can eliminate speculation.
>
> Not exactly undefined on R2+, SSNOP is still required to single-issue, so
> it does act as an execution barrier. Good point otherwise.
>
> Both EHB and J[AL]R.HB are backwards compatible however (except for an
> obscure 4Kc J[AL]R.HB erratum I came across once and which may be no
> longer relevant), so I think the legacy sequence ought to just return via
> JR.HB as well, therefore providing the required semantics with newer
> hardware. If it does trap for 4Kc, then the OS can emulate it (and we can
> ignore it for bare metal, deferring to whoever might be interested for a
> workaround).
Hmm, I just checked MIPS-IV manual, it seems like HB bit (bit 10) is defined as
zero for both JR and JALR.
Is it actually omitted in implementation?
Thanks
Jiaxun