https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89691

--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
Index: gcc/tree-pretty-print.c
===================================================================
--- gcc/tree-pretty-print.c     (revision 269569)
+++ gcc/tree-pretty-print.c     (working copy)
@@ -1830,7 +1830,8 @@ dump_generic_node (pretty_printer *pp, t
          && (POINTER_TYPE_P (TREE_TYPE (node))
              || (TYPE_PRECISION (TREE_TYPE (node))
                  < TYPE_PRECISION (integer_type_node))
-             || exact_log2 (TYPE_PRECISION (TREE_TYPE (node))) == -1))
+             || exact_log2 (TYPE_PRECISION (TREE_TYPE (node))) == -1
+             || tree_int_cst_sgn (node) < 0))
        {
          pp_string (pp, "_Literal (");
          dump_generic_node (pp, TREE_TYPE (node), spc, flags, false);

fixes this and makes -gimple dumps of the following consumable by -fgimple.

int foo (int i)
{
  int j = -1 + i;
  return j + i;
}

Reply via email to