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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
           Assignee|unassigned at gcc dot gnu.org      |rguenth at gcc dot 
gnu.org

--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c
index fd69b366bf4..db46af25d33 100644
--- a/gcc/tree-cfg.c
+++ b/gcc/tree-cfg.c
@@ -3226,6 +3226,13 @@ verify_types_in_gimple_reference (tree expr, bool
require_lvalue)
          debug_generic_stmt (expr);
          return true;
        }
+      if (MR_DEPENDENCE_CLIQUE (expr) > 1
+         && MR_DEPENDENCE_CLIQUE (expr) > cfun->last_clique)
+       {
+         error ("invalid clique in %qs", code_name);
+         debug_generic_stmt (expr);
+         return true;
+       }
     }
   else if (TREE_CODE (expr) == TARGET_MEM_REF)
     {
@@ -3245,6 +3252,13 @@ verify_types_in_gimple_reference (tree expr, bool
require_lvalue)
          debug_generic_stmt (expr);
          return true;
        }
+      if (MR_DEPENDENCE_CLIQUE (expr) > 1
+         && MR_DEPENDENCE_CLIQUE (expr) > cfun->last_clique)
+       {
+         error ("invalid clique in %qs", code_name);
+         debug_generic_stmt (expr);
+         return true;
+       }
     }
   else if (TREE_CODE (expr) == INDIRECT_REF)
     {

shows

f951: Error: invalid clique in ‘mem_ref’
MEM <real(kind=8)[0:D.4084]> [(real(kind=8)[0:D.3937] *)p5.78_5];

# VUSE <.MEM_66>
_57 = MEM <real(kind=8)[0:D.4084]> [(real(kind=8)[0:D.3937] *)p5.78_5][_56];
...
during GIMPLE pass: fixup_cfg
f951: internal compiler error: verify_gimple failed
0x13f8a41 verify_gimple_in_cfg(function*, bool)
        /space/rguenther/src/gcc/gcc/tree-cfg.c:5459

so that's the IL created by parloop outlining which is fed back as new
function to the main optimization pipeline.

I will have a look - the unroll-and-jam ICE is simply the only place this
is verified currently.

Reply via email to