[SPARC] Prevent -mfix-ut699 from generating b2bst errata sequences
authorMartin Aberg <maberg@gaisler.com>
Wed, 29 Nov 2017 15:41:45 +0000 (15:41 +0000)
committerDaniel Hellstrom <danielh@gcc.gnu.org>
Wed, 29 Nov 2017 15:41:45 +0000 (16:41 +0100)
commit6f9bc5a70fb1066611e42efea9547fa36f398065
treebb3802df86c7f46f3da644f73d16e6a8ee882952
parent97c30075e88f65351d4140a53a0f9acec76a075a
[SPARC] Prevent -mfix-ut699 from generating b2bst errata sequences

The sequence
  st
  fdivd / fsqrtd
  std
was generated in some cases with -mfix-ut699 when there was
a st before the div/sqrt. This sequence could trigger the b2bst errata.

Now the following safe sequence is generated instead:
  st
  nop
  fdivd / fsqrtd
  std

2017-11-29  Martin Aberg  <maberg@gaisler.com>

gcc/
* config/sparc/sparc.md (divdf3_fix): Add NOP and adjust length
        to prevent b2bst errata sequence.
        (sqrtdf2_fix): Likewise.

From-SVN: r255238
gcc/ChangeLog
gcc/config/sparc/sparc.md