Patchwork Fix VIEW_CONVERT_EXPR size estimate

login
register
mail settings
Submitter Jan Hubicka
Date Dec. 21, 2010, 10:32 a.m.
Message ID <20101221103242.GB5441@kam.mff.cuni.cz>
Download mbox | patch
Permalink /patch/76274/
State New
Headers show

Comments

Jan Hubicka - Dec. 21, 2010, 10:32 a.m.
Hi,
inline metric counts view_convert_expr as non-trivial operation, unlike other
converts.  In the SSE code in PR 47000 this matters since most of our SSE
intrincics involve vector conversion that compile into view_convert_expr.  This
does not fix the PR 47000 itself as the problem the PR is about (lack of
inlining when SSE code is used) is already non-existent on mainline.

Bootstrapped/regtested x86_64-linux, comitted.

Patch

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 168107)
+++ ChangeLog	(working copy)
@@ -1,3 +1,8 @@ 
+2010-12-21  Jan Hubicka   <jh@suse.cz>
+
+	PR middle-end/47000
+	* tree-inline.c (estimate_operator_cost): Handle VIEW_CONVERT_EXPR.
+
 2010-12-21  Jie Zhang  <jie@codesourcery.com>
 
 	* config/arm/arm-ldmstm.ml: Fix a typo in comment.
Index: tree-inline.c
===================================================================
--- tree-inline.c	(revision 168107)
+++ tree-inline.c	(working copy)
@@ -3281,6 +3281,7 @@  estimate_operator_cost (enum tree_code c
     CASE_CONVERT:
     case COMPLEX_EXPR:
     case PAREN_EXPR:
+    case VIEW_CONVERT_EXPR:
       return 0;
 
     /* Assign cost of 1 to usual operations.