OSDN Git Service

PR middle-end/38641
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 27 Dec 2008 19:38:20 +0000 (19:38 +0000)
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 27 Dec 2008 19:38:20 +0000 (19:38 +0000)
* gimple-pretty-print.c (dump_binary_rhs): Print
VEC_WIDEN_MULT_HI_EXPR, VEC_WIDEN_MULT_LO_EXPR,
VEC_PACK_TRUNC_EXPR, VEC_PACK_SAT_EXPR, VEC_PACK_FIX_TRUNC_EXPR,
VEC_EXTRACT_EVEN_EXPR, VEC_EXTRACT_ODD_EXPR
VEC_INTERLEAVE_HIGH_EXPR and VEC_INTERLEAVE_LOW_EXPR similarly
to COMPLEX_EXPR, MIN_EXPR and MAX_EXPR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@142935 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/gimple-pretty-print.c

index 2c08722..21310d9 100644 (file)
@@ -1,5 +1,13 @@
 2008-12-27  Jakub Jelinek  <jakub@redhat.com>
 
+       PR middle-end/38641
+       * gimple-pretty-print.c (dump_binary_rhs): Print
+       VEC_WIDEN_MULT_HI_EXPR, VEC_WIDEN_MULT_LO_EXPR,
+       VEC_PACK_TRUNC_EXPR, VEC_PACK_SAT_EXPR, VEC_PACK_FIX_TRUNC_EXPR,
+       VEC_EXTRACT_EVEN_EXPR, VEC_EXTRACT_ODD_EXPR
+       VEC_INTERLEAVE_HIGH_EXPR and VEC_INTERLEAVE_LOW_EXPR similarly
+       to COMPLEX_EXPR, MIN_EXPR and MAX_EXPR.
+
        PR middle-end/38633
        * tree-cfg.c (replace_block_vars_by_duplicates): Only call
        replace_by_duplicate_decl for VAR_DECLs or CONST_DECLs.
index d334d85..16ff6e1 100644 (file)
@@ -308,30 +308,29 @@ dump_unary_rhs (pretty_printer *buffer, gimple gs, int spc, int flags)
 static void
 dump_binary_rhs (pretty_printer *buffer, gimple gs, int spc, int flags)
 {
-  switch (gimple_assign_rhs_code (gs))
+  const char *p;
+  enum tree_code code = gimple_assign_rhs_code (gs);
+  switch (code)
     {
     case COMPLEX_EXPR:
-      pp_string (buffer, "COMPLEX_EXPR <");
-      dump_generic_node (buffer, gimple_assign_rhs1 (gs), spc, flags, false);
-      pp_string (buffer, ", ");
-      dump_generic_node (buffer, gimple_assign_rhs2 (gs), spc, flags, false);
-      pp_string (buffer, ">");
-      break;
-      
     case MIN_EXPR:
-      pp_string (buffer, "MIN_EXPR <");
-      dump_generic_node (buffer, gimple_assign_rhs1 (gs), spc, flags, false);
-      pp_string (buffer, ", ");
-      dump_generic_node (buffer, gimple_assign_rhs2 (gs), spc, flags, false);
-      pp_string (buffer, ">");
-      break;
-      
     case MAX_EXPR:
-      pp_string (buffer, "MAX_EXPR <");
+    case VEC_WIDEN_MULT_HI_EXPR:
+    case VEC_WIDEN_MULT_LO_EXPR:
+    case VEC_PACK_TRUNC_EXPR:
+    case VEC_PACK_SAT_EXPR:
+    case VEC_PACK_FIX_TRUNC_EXPR:
+    case VEC_EXTRACT_EVEN_EXPR:
+    case VEC_EXTRACT_ODD_EXPR:
+    case VEC_INTERLEAVE_HIGH_EXPR:
+    case VEC_INTERLEAVE_LOW_EXPR:
+      for (p = tree_code_name [(int) code]; *p; p++)
+       pp_character (buffer, TOUPPER (*p));
+      pp_string (buffer, " <");
       dump_generic_node (buffer, gimple_assign_rhs1 (gs), spc, flags, false);
       pp_string (buffer, ", ");
       dump_generic_node (buffer, gimple_assign_rhs2 (gs), spc, flags, false);
-      pp_string (buffer, ">");
+      pp_character (buffer, '>');
       break;
 
     default: