ARM: gmp has no support for thumb interworking

Torbjorn Granlund tege at
Fri Nov 17 20:16:25 CET 2006

Richard Earnshaw <Richard.Earnshaw at> writes:

  The hand-coded assembler functions in GMP have no support for being built 
  with interworking as required by the ARM EABI.  This makes it impossible 
  to link libgmp with any code compiled in Thumb state, and thus now 
  prevents me from testing GCC development builds by bootstrapping in Thumb 
I suppose "interworking" is something that works poorly in GMP, both
with ARM and with other architectures.  Whatever it is.

  The functions also unconditionally assume the presence of ARM architecture 
  4.  Again this means that it is no longer possible to build a native 
  version of GCC that will run on architecture 3 or earlier parts.
Oh man, this sounds serious.

If you worry about these shortcomings, and want them fixed, you need
to be provide more detail.  I don't care about ARM, and I don't intend
to spend my leisure time on trying to figure out what you're talking

But I'll try and fix the problems if you make it easy for me.

  Also note that it is not possible to force use of the generic routines, 
  because the longlong.h header assumes that the assembly functions exist 
  and can be called.

Sure possible.  First step is to check the manual's chapter on how to
install gmp.


More information about the gmp-bugs mailing list