[Patch, AArch64, BFD, LD] Cortex-A53 erratum 835769 linker workaround.
Marcus Shawcroft
marcus.shawcroft@gmail.com
Fri Oct 24 10:27:00 GMT 2014
More information about the Binutils mailing list
Fri Oct 24 10:27:00 GMT 2014
- Previous message (by thread): [Patch, AArch64, BFD, LD] Cortex-A53 erratum 835769 linker workaround.
- Next message (by thread): [Patch, AArch64, BFD, LD] [2.24] Cortex-A53 erratum 835769 linker workaround.
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 22 October 2014 15:07, Tejas Belagod <tejas.belagod@arm.com> wrote: > Hi, > > Some early revisions of the Cortex-A53 have an erratum (835769) whereby > it is possible for a 64-bit multiply-accumulate instruction in AArch64 state > to generate an incorrect result. The details are quite complex and hard to > determine statically, since branches in the code may exist in some > circumstances, but all cases end with a memory (load, store, or > prefetch) instruction followed immediately by the multiply-accumulate > operation. > > We employ a linker patching technique, whereby we move the potentially > affected multiply-accumulate instruction into a patch region and > replace the original instruction with a branch to the patch. > > This patch achieves the linker patch. Also, a patch to turn this on from the > compiler driver has been submitted independently to the gcc lists. > > The fix is disabled by default and can be turned on by the > --fix-cortex-a53-835769 linker option. > > Tested on aarch64-none-linux-gnu (and bootstrap with the option) and built > and run various large benchmarks with it. > > Ok for trunk? OK /Marcus
- Previous message (by thread): [Patch, AArch64, BFD, LD] Cortex-A53 erratum 835769 linker workaround.
- Next message (by thread): [Patch, AArch64, BFD, LD] [2.24] Cortex-A53 erratum 835769 linker workaround.
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Binutils mailing list