aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorH.J. Lu <hongjiu.lu@intel.com>2011-07-28 12:32:23 +0000
committerH.J. Lu <hjl@gcc.gnu.org>2011-07-28 05:32:23 -0700
commit40b9321d846877a8c56f0cbda91ab977d982d527 (patch)
treeb904224259e026f11ded58e2b098a57b0844fdf1 /gcc
parent95f89bb3f81e5e9552ec269b48f046e576bda3cc (diff)
downloadgcc-40b9321d846877a8c56f0cbda91ab977d982d527.zip
gcc-40b9321d846877a8c56f0cbda91ab977d982d527.tar.gz
gcc-40b9321d846877a8c56f0cbda91ab977d982d527.tar.bz2
Only expand strlen to Pmode.
2011-07-28 H.J. Lu <hongjiu.lu@intel.com> PR target/47364 * config/i386/i386.md (strlen<mode>): Replace SWI48x with P. From-SVN: r176868
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/i386/i386.md10
2 files changed, 10 insertions, 5 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 8016e51..cd54848 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2011-07-28 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR target/47364
+ * config/i386/i386.md (strlen<mode>): Replace SWI48x with P.
+
2011-07-28 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
* config/arm/vfp.md ("*movdf_vfp"): Handle the VFP constraints
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index a4435c2..fce4268 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -15824,11 +15824,11 @@
(set_attr "prefix_rep" "1")])
(define_expand "strlen<mode>"
- [(set (match_operand:SWI48x 0 "register_operand" "")
- (unspec:SWI48x [(match_operand:BLK 1 "general_operand" "")
- (match_operand:QI 2 "immediate_operand" "")
- (match_operand 3 "immediate_operand" "")]
- UNSPEC_SCAS))]
+ [(set (match_operand:P 0 "register_operand" "")
+ (unspec:P [(match_operand:BLK 1 "general_operand" "")
+ (match_operand:QI 2 "immediate_operand" "")
+ (match_operand 3 "immediate_operand" "")]
+ UNSPEC_SCAS))]
""
{
if (ix86_expand_strlen (operands[0], operands[1], operands[2], operands[3]))