This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: DCE eliminating valid statement for ACATS c34007p
On Tuesday 06 September 2005 15:05, Gabriel Dos Reis wrote:
> Richard Guenther <richard.guenther@gmail.com> writes:
> | On 9/6/05, Richard Kenner <kenner@vlsi1.ultra.nyu.edu> wrote:
> | > I don't think we ever defined "valid GENERIC" that way.
> | >
> | > About a year ago, when we tried to define it, that's what we came up
> | > with. If that isn't the definition, then what *is*? The problem is
> | > that we have no document that says what is and is not valid GENERIC.
> | > At least the proposed definition can answer the question of whether or
> | > not something is valid.
> |
> | The only useful definition is that valid GENERIC is what the gimplifier
> | can turn into valid GIMPLE, which is much more well-defined ;) Modulo
> | bugs in the gimplifier of course ...
>
> And the potential "bugs in the gimplifier" are precisely the reasons
> why that definition isn't helfpul. Why in this case, Kenner's problem
> isn't one of those potential "bugs in the gimplifier"?
Because it doesn't make sense to take the address of a COMPOUND_EXPR
for example? As Kenner puts it himself:
"This turned out to be the "well known" problem that the Ada
front end is making an ADDR_EXPR of odd things, in this case
a COMPOUND_EXPR."
So there you have it: a well known problem in the Ada front end, not
a bug in the gimplifier.
Gr.
Steven