public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* [RFH][tuples] Make Ada work
@ 2008-07-20 18:39 Richard Guenther
  2008-07-20 20:09 ` Arnaud Charlet
  2008-07-21 12:25 ` Diego Novillo
  0 siblings, 2 replies; 4+ messages in thread
From: Richard Guenther @ 2008-07-20 18:39 UTC (permalink / raw)
  To: gcc; +Cc: ebotcazou, kenner


The Ada status on tuples is now that you can build it (on i686 at least)
but gnatmake is miscompiled (or rather, the global initializer stuff
doesn't work - all the ___elabs are missing, as you can see in
for example gnat.dg/renaming3.adb failing if you just use gnat1 from
tuples in a trunk tree).

You need the patch below to allow the gnat/rts build to succeed, but
I'm lost with the above now - this is failures at -O0 after all - so
I expect some help from you Ada guys here.

Thanks,
Richard.

2008-07-20  Richard Guenther  <rguenther@suse.de>

	* gimple.c (gimple_has_side_effects): Disable asserts.
	(gimple_rhs_has_side_effects): Likewise.

Index: gcc/gimple.c
===================================================================
*** gcc/gimple.c	(revision 138006)
--- gcc/gimple.c	(working copy)
*************** gimple_has_side_effects (const_gimple s)
*** 2318,2324 ****
        for (i = 0; i < gimple_num_ops (s); i++)
  	if (TREE_SIDE_EFFECTS (gimple_op (s, i)))
  	  {
! 	    gcc_assert (gimple_has_volatile_ops (s));
  	    return true;
  	  }
      }
--- 2318,2326 ----
        for (i = 0; i < gimple_num_ops (s); i++)
  	if (TREE_SIDE_EFFECTS (gimple_op (s, i)))
  	  {
! 	    /* FIXME tuples.  This assign is over-eager at least
! 	       for Ada.
! 	    gcc_assert (gimple_has_volatile_ops (s)); */
  	    return true;
  	  }
      }
*************** gimple_rhs_has_side_effects (const_gimpl
*** 2367,2373 ****
  	if (TREE_SIDE_EFFECTS (gimple_op (s, i))
              || TREE_THIS_VOLATILE (gimple_op (s, i)))
  	  {
! 	    gcc_assert (gimple_has_volatile_ops (s));
  	    return true;
  	  }
      }
--- 2369,2377 ----
  	if (TREE_SIDE_EFFECTS (gimple_op (s, i))
              || TREE_THIS_VOLATILE (gimple_op (s, i)))
  	  {
! 	    /* FIXME tuples.  This assign is over-eager at least
! 	       for Ada.
! 	    gcc_assert (gimple_has_volatile_ops (s)); */
  	    return true;
  	  }
      }
*************** gimple_rhs_has_side_effects (const_gimpl
*** 2378,2384 ****
  	if (TREE_SIDE_EFFECTS (gimple_op (s, i))
              || TREE_THIS_VOLATILE (gimple_op (s, i)))
  	  {
! 	    gcc_assert (gimple_has_volatile_ops (s));
  	    return true;
  	  }
      }
--- 2382,2390 ----
  	if (TREE_SIDE_EFFECTS (gimple_op (s, i))
              || TREE_THIS_VOLATILE (gimple_op (s, i)))
  	  {
! 	    /* FIXME tuples.  This assign is over-eager at least
! 	       for Ada.
! 	    gcc_assert (gimple_has_volatile_ops (s)); */
  	    return true;
  	  }
      }

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [RFH][tuples] Make Ada work
  2008-07-20 18:39 [RFH][tuples] Make Ada work Richard Guenther
@ 2008-07-20 20:09 ` Arnaud Charlet
  2008-07-21 12:25 ` Diego Novillo
  1 sibling, 0 replies; 4+ messages in thread
From: Arnaud Charlet @ 2008-07-20 20:09 UTC (permalink / raw)
  To: Richard Guenther; +Cc: gcc, ebotcazou, kenner, Olivier Hainque

> The Ada status on tuples is now that you can build it (on i686 at least)
> but gnatmake is miscompiled (or rather, the global initializer stuff
> doesn't work - all the ___elabs are missing, as you can see in
> for example gnat.dg/renaming3.adb failing if you just use gnat1 from
> tuples in a trunk tree).

The missing _elabs is more likely a missing change in gigi rather
than a miscompilation.

> You need the patch below to allow the gnat/rts build to succeed, but
> I'm lost with the above now - this is failures at -O0 after all - so
> I expect some help from you Ada guys here.

Understood.

Arno

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [RFH][tuples] Make Ada work
  2008-07-20 18:39 [RFH][tuples] Make Ada work Richard Guenther
  2008-07-20 20:09 ` Arnaud Charlet
@ 2008-07-21 12:25 ` Diego Novillo
  2008-07-21 12:33   ` Richard Guenther
  1 sibling, 1 reply; 4+ messages in thread
From: Diego Novillo @ 2008-07-21 12:25 UTC (permalink / raw)
  To: Richard Guenther; +Cc: gcc, ebotcazou, kenner

On 7/20/08 1:43 PM, Richard Guenther wrote:

> --- 2318,2326 ----
>         for (i = 0; i < gimple_num_ops (s); i++)
>   	if (TREE_SIDE_EFFECTS (gimple_op (s, i)))
>   	  {
> ! 	    /* FIXME tuples.  This assign is over-eager at least
> ! 	       for Ada.
> ! 	    gcc_assert (gimple_has_volatile_ops (s)); */

I can't parse the comment.  What do you mean by 'This assign is over-eager'?


Diego.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [RFH][tuples] Make Ada work
  2008-07-21 12:25 ` Diego Novillo
@ 2008-07-21 12:33   ` Richard Guenther
  0 siblings, 0 replies; 4+ messages in thread
From: Richard Guenther @ 2008-07-21 12:33 UTC (permalink / raw)
  To: Diego Novillo; +Cc: gcc, ebotcazou, kenner

On Mon, 21 Jul 2008, Diego Novillo wrote:

> On 7/20/08 1:43 PM, Richard Guenther wrote:
> 
> > --- 2318,2326 ----
> >         for (i = 0; i < gimple_num_ops (s); i++)
> >   	if (TREE_SIDE_EFFECTS (gimple_op (s, i)))
> >   	  {
> > ! 	    /* FIXME tuples.  This assign is over-eager at least
> > ! 	       for Ada.
> > ! 	    gcc_assert (gimple_has_volatile_ops (s)); */
> 
> I can't parse the comment.  What do you mean by 'This assign is over-eager'?

I fixed the real cause of the asserts triggering.  See

http://gcc.gnu.org/ml/gcc-patches/2008-07/msg01545.html

Richard.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2008-07-21 12:25 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-07-20 18:39 [RFH][tuples] Make Ada work Richard Guenther
2008-07-20 20:09 ` Arnaud Charlet
2008-07-21 12:25 ` Diego Novillo
2008-07-21 12:33   ` Richard Guenther

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).