[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: src/external/gpl3/binutils/dist
Module Name: src
Committed By: bouyer
Date: Sat Aug 27 13:19:39 UTC 2011
Add a fix-loongson2f-btb option to gas, from OpenBSD.
This works around a bug in the branch prediction logic of the
CPU which can cause a hard hang. The existing fix-loongson2f-jump
works around the same bug, but by 'fixing' the jump target to be within the
same 256MB region as the kernel. This will (silently) cause a jump
to the wrong address if the jump is intentionally to some other
region (e.g. a call to pmon).
fix-loongson2f-btb instead works around the issue by adding an explicit flush
of the branch target buffer (via a write to a cop0 register) before every
jump register instruction.
To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/external/gpl3/binutils/dist/gas/config/tc-mips.c
cvs rdiff -u -r1.3 -r1.4 src/external/gpl3/binutils/dist/gas/doc/c-mips.texi
cvs rdiff -u -r1.3 -r1.4 \
cvs rdiff -u -r1.5 -r1.6 src/external/gpl3/binutils/dist/opcodes/mips-opc.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Main Index |
Thread Index |