This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa] labels after returns
- From: Andrew Pinski <pinskia at physics dot uc dot edu>
- To: law at redhat dot com
- Cc: gcc mailing list <gcc at gcc dot gnu dot org>, Andrew Pinski <pinskia at physics dot uc dot edu>, Diego Novillo <dnovillo at redhat dot com>
- Date: Mon, 12 Apr 2004 13:27:04 -0400
- Subject: Re: [tree-ssa] labels after returns
- References: <200404121635.i3CGZ8Cr032706@speedy.slc.redhat.com>
On Apr 12, 2004, at 12:35, law@redhat.com wrote:
Didn't you go through FC packages fixing these things up?
Err, I certainly didn't trip over this building the FC2 stuff. If you
look
at Andrew's testcase it's actually from c-torture and clearly there's
some
target dependent lameness involved since we're not tripping over this
(at least not in a clearly visible way from the testsuite's point of
view)
on i686-pc-linux-gnu.
The target dependent lameness is that every local label has to defined
in the assembly file
and not be a non local label; local labels are defined as starting with
a `L'.
So Darwin is showing that the labels are missing from the assembly file
while Linux would not
care and assemble the file and have an extern reference to that label.
So Darwin is showing
that the label is not there and that there is no run test for this,
maybe we should add the
following link test which shows the problem every where, including on
Linux (I just tested it)?
int i;
int
main()
{
l1:
i = &&l1-&&l2;
return 0;
l2:;
}
Thanks,
Andrew Pinski