public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Laurent GUERBY <laurent@guerby.net>
To: Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
Cc: gcc@gcc.gnu.org
Subject: Re: Slightly different Ada RTS build verify_ssa error
Date: Fri, 17 Sep 2004 21:44:00 -0000	[thread overview]
Message-ID: <1095455552.6762.144.camel@pc.site> (raw)
In-Reply-To: <10409161135.AA02661@vlsi1.ultra.nyu.edu>

On Thu, 2004-09-16 at 13:35, Richard Kenner wrote:
> The latest checkins seem to have fixed a few things, but I now get this error
> message, which looks slightly different from what I got before:
> 
> ../../xgcc -B../../ -c -g -O2      -W -Wall -gnatpg  g-regexp.adb -o g-regexp.o
> g-regexp.adb: In function 'GNAT.REGEXP.COMPILE.CREATE_PRIMARY_TABLE.CREATE_SIMPLE':
> g-regexp.adb:521: error: Missing definition
> for SSA_NAME: k.111D.2244_174
> in statement:
> #   C.108D.2240_273 = V_MAY_DEF <C.108D.2240_515>;
> #   TMT.393D.3787_272 = V_MAY_DEF <TMT.393D.3787_491>;
> #   TMT.394D.3788_271 = V_MAY_DEF <TMT.394D.3788_398>;
> #   TMT.395D.3789_270 = V_MAY_DEF <TMT.395D.3789_540>;
> #   TMT.396D.3790_269 = V_MAY_DEF <TMT.396D.3790_120>;
> #   TMT.397D.3791_268 = V_MAY_DEF <TMT.397D.3791_504>;
> #   TMT.398D.3792_264 = V_MAY_DEF <TMT.398D.3792_321>;
> #   VUSE <D.2548_277>;
> *D.2546_175 = gnat__regexp__set (D.2548, D.2545_170, k.111D.2244_174, D.2211_173);
> 
> Note that the first line shows how to reproduce this.

On x86 I still get the original error:

../../xgcc -B../../ -c -g -O2 -fPIC      -W -Wall -gnatpg  g-regexp.adb -o g-regexp.o
g-regexp.adb: In function 'GNAT.REGEXP.COMPILE.CREATE_SECONDARY_TABLE':
g-regexp.adb:1087: error: Definition in block 5 does not dominate use in block 110
for SSA_NAME: D.1826_717
in statement:
ivtmp.868D.4703_563 = &(*table.51D.1822_144)[J99b.52D.1827_3]{lb: 1 sz: D.1826_717 * 4}[0];

+===========================GNAT BUG DETECTED==============================+
| 4.0.0 20040917 (experimental) (i686-pc-linux-gnu) verify_ssa failed.     |
| Error detected at g-regexp.adb:1389:1                                    |

But I'm able to workaround it with the patch at the end of this message.
Note that permuting the two for loops restores the ICE.

With the patch, bootstrap with --disable-shared succeeds, but
ACATS is worse than on x86_64:

http://gcc.gnu.org/ml/gcc-testresults/2004-09/msg00737.html

The difference in the number of ACATS failures comes from 40 ICEs 
"verify_ssa failed" on x86,  similar to the g-regexp.adb one.

Laurent

Index: g-regexp.adb
===================================================================
RCS file: /cvs/gcc/gcc/gcc/ada/g-regexp.adb,v
retrieving revision 1.8
diff -u -r1.8 g-regexp.adb
--- g-regexp.adb        6 Jul 2004 13:57:30 -0000       1.8
+++ g-regexp.adb        17 Sep 2004 18:52:56 -0000
@@ -1096,8 +1096,7 @@
          Last_Index : constant State_Index := First_Table'Last (1);
          type Meta_State is array (1 .. Last_Index) of Boolean;

-         Table : Regexp_Array (1 .. Last_Index, 0 .. Alphabet_Size) :=
-                   (others => (others => 0));
+         Table : Regexp_Array (1 .. Last_Index, 0 .. Alphabet_Size);

          Meta_States : array (1 .. Last_Index + 1) of Meta_State :=
                          (others => (others => False));
@@ -1142,6 +1141,12 @@
       --  Start of procesing for Create_Secondary_Table

       begin
+         for Column_I in Table'Range (2) loop
+            for State_I in Table'Range (1) loop
+               Table (State_I, Column_I) := 0;
+            end loop;
+         end loop;
+
          --  Create a new state

          Closure (Meta_States (Current_State), Start_State);



      reply	other threads:[~2004-09-17 21:12 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-09-16 13:23 Richard Kenner
2004-09-17 21:44 ` Laurent GUERBY [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1095455552.6762.144.camel@pc.site \
    --to=laurent@guerby.net \
    --cc=gcc@gcc.gnu.org \
    --cc=kenner@vlsi1.ultra.nyu.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).