Remove testsuite/gcc.c-torture/execute/20000603-1.c

Diego Novillo dnovillo@redhat.com
Sat Feb 21 13:45:00 GMT 2004


On Thu, 2004-02-05 at 21:02, Richard Henderson wrote:
> On Thu, Feb 05, 2004 at 06:04:15PM -0500, Diego Novillo wrote:
> > a, UID 2, type memory tag: TMT.8, is written to, is dereferenced to store
> > b, UID 3, type memory tag: TMT.7, is written to, is dereferenced to load
> > TMT.7, UID 10
> > TMT.8, UID 11, is written to, may aliases: { a }
> [...]
> > With your modifications, we get:
> > 
> > a, UID 3, type memory tag: TMT.10, is written to, is dereferenced to store
> > b, UID 4, type memory tag: TMT.9, is written to, is dereferenced to load
> > TMT.9, UID 12, may aliases: { a }
> > TMT.10, UID 13, is written to, may aliases: { a }
> 
> Is this with or without inlining?
> 
With inlining, of course.  Without inlining DCE won't dare touch the
store to '*a' because 'a' is a PARM_DECLs, which equates to a global in
its view.

> The test clearly wants the function not to be inlined.
> Perhaps add __attribute__((noinline)) and see...
> 
Without inlining the test is guaranteed to pass.  But how does noinline
make the test any more valid?  Isn't it still invoking undefined
behaviour?


Thanks.  Diego.



More information about the Gcc-patches mailing list