This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: GCC-4.1.0 size optimization bug for MIPS architecture...


On Wed, 2005-06-29 at 07:44 -0500, Steven J. Hill wrote:
> Richard Henderson wrote:
> > 
> > Not a bug.  The inline marker is merely suggestive.  You told
> > the compiler to optimize for size, and it is doing that.
> > 
> > If you absolutely have to have the function inlined, then you
> > need to use __attribute__((__always_inline__)).
> >
> This makes sense, but I also have a binutils-2.16.1, gcc-3.4.4
> and the same uClibc code and gcc-3.4.4 does produce a valid
> dynamic loader with '-Os'. When looking at the dissassembly
> for that, the _syscall1 and other functions are inlined. So,
> apparently things have changed with regards to inling from the
> gcc-3.4.x series to gcc-4.1.x? 

The inlining heuristics have changed a bit between those two, and in
addition, because of the new intermediate representation, the inliner
will make different decisions than it used to.

In other words, you were probably just getting lucky with 3.x, and your
luck has run out :)



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]