From c86135dec7521ca3a877fa455b449dd8aa068a9c Mon Sep 17 00:00:00 2001
From: Aaron Sawdey <acsawdey@linux.vnet.ibm.com>
Date: Tue, 14 Mar 2017 14:43:03 +0000
Subject: [PATCH] This showed up in power9 code for __divkf3 software float
support and caused a...
This showed up in power9 code for __divkf3 software float support and
caused a divd to be emitted where we needed a divdu.
===================================================================
@@ -3063,8 +3063,8 @@
&& ! reg_mentioned_p (operands[3], operands[1])
&& ! reg_mentioned_p (operands[3], operands[2])"
[(set (match_dup 0)
- (div:GPR (match_dup 1)
- (match_dup 2)))
+ (udiv:GPR (match_dup 1)
+ (match_dup 2)))
(set (match_dup 3)
(mult:GPR (match_dup 0)
(match_dup 2)))
2017-03-14 Aaron Sawdey <acsawdey@linux.vnet.ibm.com>
Backport from mainline
2017-02-28 Aaron Sawdey <acsawdey@linux.vnet.ibm.com>
PR target/79752
* config/rs6000/rs6000.md (peephole2 for udiv/umod): Should emit
udiv rather than div since input pattern is unsigned.
From-SVN: r246127
---
gcc/ChangeLog | 9 +++++++++
gcc/config/rs6000/rs6000.md | 4 ++--
2 files changed, 11 insertions(+), 2 deletions(-)
@@ -1,3 +1,12 @@
+2017-03-14 Aaron Sawdey <acsawdey@linux.vnet.ibm.com>
+
+ Backport from mainline
+ 2017-02-28 Aaron Sawdey <acsawdey@linux.vnet.ibm.com>
+
+ PR target/79752
+ * config/rs6000/rs6000.md (peephole2 for udiv/umod): Should emit
+ udiv rather than div since input pattern is unsigned.
+
2017-03-14 Richard Biener <rguenther@suse.de>
Backport from mainline
@@ -3063,8 +3063,8 @@
&& ! reg_mentioned_p (operands[3], operands[1])
&& ! reg_mentioned_p (operands[3], operands[2])"
[(set (match_dup 0)
- (div:GPR (match_dup 1)
- (match_dup 2)))
+ (udiv:GPR (match_dup 1)
+ (match_dup 2)))
(set (match_dup 3)
(mult:GPR (match_dup 0)
(match_dup 2)))
--
2.24.0