ivtmp problem in ACATS c85006e

Diego Novillo dnovillo@redhat.com
Tue Jan 18 23:12:00 GMT 2005


Richard Kenner wrote:
> I keep hoping this will go away, but it doesn't.
> 
> Can somebody give me some suggestions as to how to debug it?
> 
> c85006e.adb: In function 'C85006E':
> c85006e.adb:38: error: Definition in block 206 does not dominate use in block 1108
> for SSA_NAME: D.3021_6076in statement:
> ivtmp.1749_80845 = &(*D.3022_6077)[5 ...]{lb: D.3021_6076 sz: 1}[5]{lb: 5 sz: 1\};
> 
> This is the last remaining ICE for ACATS.

Sometimes happens when some newly exposed symbol does not get fully 
renamed.  I would start by checking where D.3021_6076 is generated.

To test a hunch, see if this makes the problem go away (I'm hoping it 
won't).  If it does, would you file a PR and assign it to me?


Thanks.  Diego.


--- tree-into-ssa.c     29 Dec 2004 21:45:01 -0000      2.21.2.8
+++ tree-into-ssa.c     18 Jan 2005 23:03:09 -0000
@@ -385,7 +385,7 @@ mark_def_sites (struct dom_walk_data *wa
    stmt = bsi_stmt (bsi);
    get_stmt_operands (stmt);

-  REWRITE_THIS_STMT (stmt) = 0;
+  REWRITE_THIS_STMT (stmt) = 1;

    /* If a variable is used before being set, then the variable is live
       across a block boundary, so mark it live-on-entry to BB.  */



More information about the Gcc mailing list