This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 0/5] i386: Optimize for Jump Conditional Code Erratum


* H. J. Lu:

> Microcode update for Jump Conditional Code Erratum may cause performance
> loss for some workloads:
>
> https://www.intel.com/content/www/us/en/support/articles/000055650.html
>
> Here is the set of assembler patches to mitigate performance impact by
> aligning branches within 32-byte boundary.  The impacted instructions
> are:
>
>   a. Conditional jump.
>   b. Fused conditional jump.
>   c. Unconditional jump.
>   d. Call.
>   e. Ret.
>   f. Indirect jump and call.
>
> The new -mbranches-within-32B-boundaries command-line option aligns
> conditional jump, fused conditional jump and unconditional jump within
> 32-byte boundary.

Should this mitigation be enabled by default?

According to the whitepaper, this mitigation has some overhead on
non-affected CPUs (some Intel Atom-type CPUs are mentioned).  Is there a
way to avoid this overhead, so that the decision to enable this by
default is easier?

Thanks,
Florian


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]