diff options
author | Daniel Cederman <cederman@gaisler.com> | 2017-11-29 15:23:40 +0000 |
---|---|---|
committer | Daniel Hellstrom <danielh@gcc.gnu.org> | 2017-11-29 16:23:40 +0100 |
commit | 47c72733ab0cc1ca5b7bb196298ce9ecd91c1896 (patch) | |
tree | 6d04b95f61c870986f2a7454cab083392e50b7d0 /gcc/combine.c | |
parent | aed173734df52b9c48425840c0977c34c23a882a (diff) | |
download | gcc-47c72733ab0cc1ca5b7bb196298ce9ecd91c1896.zip gcc-47c72733ab0cc1ca5b7bb196298ce9ecd91c1896.tar.gz gcc-47c72733ab0cc1ca5b7bb196298ce9ecd91c1896.tar.bz2 |
[SPARC] Errata workaround for GRLIB-TN-0010
This patch provides a workaround for the errata described in GRLIB-TN-0010.
If the workaround is enabled it will:
* Insert a NOP between load instruction and atomic
instruction (swap, ldstub, casa).
* Insert a NOP at branch target if load in delay slot
and atomic instruction at branch target.
It is applicable to UT700.
2017-11-29 Daniel Cederman <cederman@gaisler.com>
gcc/
* config/sparc/sparc.c (atomic_insn_p): New function.
(sparc_do_work_around_errata): Insert NOP instructions to
prevent sequences that could trigger the TN-0010 errata for
UT700.
* config/sparc/sync.md (atomic_compare_and_swap_leon3_1): Make
instruction referable in atomic_insns_p.
From-SVN: r255236
Diffstat (limited to 'gcc/combine.c')
0 files changed, 0 insertions, 0 deletions