init hang after upgrading ARM-Linux toolchain
Richard Earnshaw
rearnsha@arm.com
Fri May 19 16:28:00 GMT 2006
On Fri, 2006-05-19 at 11:20, Martin Guy wrote:
> On 5/18/06, Creech, Matthew L <MatthewLCreech@eaton.com> wrote:
> > I'm using a 2.6.16 kernel on an AT91 ARM board. With all the positive
> > reports recently of people using gcc-4/EABI/NTPL, I decided to make a
> > clean break and try my luck with a new toolchain.
>
> > This toolchain produced a [seemingly] working kernel, but the system
> > would hang after "freeing init memory".
>
> People are getting this when using ARMv4t processors, which seem to be
> used in almost all current system-on-chip devices. Currently EABI only
> works with ARMv5t CPUs, since thumb interwork support for armv4t is
> incomplete in the gcc-4.1.0 release. We are all hoping this will be
> fixed in 4.1.1
>
> Ah, I just checked: your Atmel chips have an ARM7TDMI core, which is ARMv4.
the 7tdmi is v4t, not v4.
As long as you stick to using ARM code your application, there's no
reason that I know of why the EABI system won't work (from a compiler
perspective). If you believe there is a problem with the compiler, then
please file a GCC bug report.
The problem with Thumb support is not really in the compiler, but in the
linker, and comes from the difficulty in doing interworking in the PLT
veneers. To solve this, all routines in shared libraries (and any in an
application that can be called directly from a shared library) need
wrapping with ARM code sequences. I don't believe the linker can do
this at this time.
R.
--
For unsubscribe information see http://sourceware.org/lists.html#faq
More information about the crossgcc
mailing list