This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: gcc.c-torture/unsorted/pass.c: what is it supposed to test?
- From: Diego Novillo <dnovillo at redhat dot com>
- To: Jeff Law <law at redhat dot com>
- Cc: "Joseph S. Myers" <jsm at polyomino dot org dot uk>, "gcc at gcc dot gnu dot org" <gcc at gcc dot gnu dot org>, Jason Merrill <jason at redhat dot com>
- Date: Fri, 27 Feb 2004 13:26:48 -0500
- Subject: Re: gcc.c-torture/unsorted/pass.c: what is it supposed to test?
- Organization: Red Hat Canada
- References: <200402271817.i1RIHdNi026550@speedy.slc.redhat.com>
On Fri, 2004-02-27 at 13:17, law@redhat.com wrote:
> To do anything "bad" with such a node it would have to be casted back to
> a pointer, then dereferenced. If that happens then I'm pretty sure all
> the right things would happen.
>
Ah, but the points-to chaser will see a pointer being assigned into a
non-pointer scalar and throw its hands up, saying "I don't know what
you're pointing to". TBAA will then DTRT based on the types, but we
will lose precision. Not the end of the world, of course.
> So it seems to me that we merely need to note which pointer variables are
> casted into integers (easy to identify during one of our IL scans) and
> just mark the objects that the pointer may point to as call-clobbered. That's
> a little over-conservative, but should "DTRT".
>
Yup. Which is exactly what I am about to commit in a few minutes.
Diego.