From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28268 invoked by alias); 13 Jan 2010 19:01:45 -0000 Received: (qmail 26530 invoked by uid 48); 13 Jan 2010 19:01:20 -0000 Date: Wed, 13 Jan 2010 19:01:00 -0000 Message-ID: <20100113190120.26525.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug tree-optimization/42732] [graphite] ICE: verify_ssa failed In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "spop at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2010-01/txt/msg01553.txt.bz2 ------- Comment #2 from spop at gcc dot gnu dot org 2010-01-13 19:01 ------- > pdv_d.f:89:0: error: definition in block 40 does not dominate use in block 212 > for SSA_NAME: prephitmp.28_439 in statement: > D.2771_606 = D.2770_605 <= prephitmp.28_439; The error comes from the fact that we are not clearing the scev information anymore in between the code generation of two scops. In this particular case, we have two scops, the second scop contains a loop for which the number of iterations is a variable computed in the first scop, and because we do not update the niter/scev info we keep referring to the old SSA_NAME, prephitmp.28_439. A solution would be to rename all the scev info based on the rename_map that is computed by the translation of the first scop. I am working on a patch to do that. Sebastian -- spop at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|unassigned at gcc dot gnu |spop at gcc dot gnu dot org |dot org | Status|NEW |ASSIGNED Last reconfirmed|2010-01-13 17:36:09 |2010-01-13 19:01:20 date| | Summary|ICE: verify_ssa failed |[graphite] ICE: verify_ssa | |failed http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42732