aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp
diff options
context:
space:
mode:
authorDaniel Cederman <cederman@gaisler.com>2017-11-29 15:15:48 +0000
committerDaniel Hellstrom <danielh@gcc.gnu.org>2017-11-29 16:15:48 +0100
commitdcacda0cc1c9ecd23c15e8403e8025129502fed9 (patch)
treee20f603705106c0bdc0546ee661b6c279d4ba2ea /gcc/cp
parentf7300fff74becf365cdadd23c9447521da852e84 (diff)
downloadgcc-dcacda0cc1c9ecd23c15e8403e8025129502fed9.zip
gcc-dcacda0cc1c9ecd23c15e8403e8025129502fed9.tar.gz
gcc-dcacda0cc1c9ecd23c15e8403e8025129502fed9.tar.bz2
[SPARC] Errata workaround for GRLIB-TN-0012
This patch provides a workaround for the errata described in GRLIB-TN-0012. If the workaround is enabled it will: * Prevent any floating-point operation from being placed in the delay slot of an annulled integer branch. * Place a NOP at the branch target of an integer branch if it is a floating-point operation or a floating-point branch. It is applicable to GR712RC. 2017-11-29 Daniel Cederman <cederman@gaisler.com> gcc/ * config/sparc/sparc.c (fpop_insn_p): New function. (sparc_do_work_around_errata): Insert NOP instructions to prevent sequences that could trigger the TN-0012 errata for GR712RC. (pass_work_around_errata::gate): Also test sparc_fix_gr712rc. * config/sparc/sparc.md (fix_gr712rc): New attribute. (in_branch_annul_delay): Prevent floating-point instructions in delay slot of annulled integer branch. From-SVN: r255234
Diffstat (limited to 'gcc/cp')
0 files changed, 0 insertions, 0 deletions