diff options
author | Segher Boessenkool <segher@kernel.crashing.org> | 2018-08-31 10:52:13 +0200 |
---|---|---|
committer | Segher Boessenkool <segher@gcc.gnu.org> | 2018-08-31 10:52:13 +0200 |
commit | ec26512503c854cdb09d5b6397e041644149eb04 (patch) | |
tree | 7f38b4b85a63d15e4ebc41a4b125830a113b9497 /gcc | |
parent | 8e7dfe7144a4bca1db98be1aa7e637edb3c3e42f (diff) | |
download | gcc-ec26512503c854cdb09d5b6397e041644149eb04.zip gcc-ec26512503c854cdb09d5b6397e041644149eb04.tar.gz gcc-ec26512503c854cdb09d5b6397e041644149eb04.tar.bz2 |
rs6000: Make lround<mode>di2 depend on TARGET_FPRND (PR86684)
TARGET_FPRND should be on for everything ISA 2.04 and later, and
TARGET_VSX implies ISA 2.06 or later; but it is possible to disable
TARGET_FPRND (separately via -mno-fprnd, but also implicitly)
currently, and then things fall down. This patch makes things not
fall down.
PR target/86684
PR target/87149
* config/rs6000/rs6000.md (lround<mode>di2): Gate on TARGET_FPRND.
From-SVN: r264011
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.md | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f1be88b..3d2be97 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2018-08-31 Segher Boessenkool <segher@kernel.crashing.org> + + PR target/86684 + PR target/87149 + * config/rs6000/rs6000.md (lround<mode>di2): Gate on TARGET_FPRND. + 2018-08-31 Jakub Jelinek <jakub@redhat.com> PR middle-end/87138 diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md index 49e2090..c4ef878 100644 --- a/gcc/config/rs6000/rs6000.md +++ b/gcc/config/rs6000/rs6000.md @@ -5985,7 +5985,7 @@ (set (match_operand:DI 0 "gpc_reg_operand") (unspec:DI [(match_dup 2)] UNSPEC_FCTID))] - "TARGET_HARD_FLOAT && TARGET_VSX" + "TARGET_HARD_FLOAT && TARGET_VSX && TARGET_FPRND" { operands[2] = gen_reg_rtx (<MODE>mode); }) |