This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: Patch: Updates on mips testcases
> Date: Sat, 9 Jun 2001 19:16:04 -0700
> From: "H . J . Lu" <hjl@lucon.org>
> On Sat, Jun 09, 2001 at 04:14:39PM -0700, Geoff Keating wrote:
> > > Date: Sat, 9 Jun 2001 08:42:16 -0700
> > > From: "H . J . Lu" <hjl@lucon.org>
> >
> > > On Sun, Jun 10, 2001 at 12:03:33AM +0930, Alan Modra wrote:
> > > > This isn't exactly a failure of relaxation. It's just that the branch
> > > > offset is too big.
> > > 1. You may see it when compiling certain version of gcc with -O0.
> >
> > That's not supposed to happen. GCC is supposed to deal with this
> > by performing the substitution below. This often breaks, typically
> > because GCC is misinformed about the length of some instruction,
> > but it is also easily fixed.
>
> I was told that gcc would generate such code on certain versions of
> lmbench. Since the vendor assembler can handle it, I believe it is
> ok for gcc to do so.
It is still a bug in GCC, even if the vendor assembler would handle
it. GCC is specifically designed to not do this. What's more, not
all assemblers can handle it.
--
- Geoffrey Keating <geoffk@geoffk.org>