ARM/Thumb tool chain

Nick Clifton nickc@cygnus.com
Fri Jul 28 10:47:00 GMT 2000


Hi Giuliano,

: > It seems that all multilib options are commented out in
: > gcc/config/arm/t-arm-elf.
: 
: Does anyone know why?

Good question.

There is no compelling reason to comment out the multilibs.  It saves
build and test time and reduces disk space requirements, but on the
other hand it gives rise to problems like this.

Note - the absence of a Thumb targeted libgcc.a should not be a great
problem since the linker will automatically generate calling
conversion stubs to switch between ARM and Thumb mode.

In order to generate a set of Thumb multilibs apply the patch below
and then rebuild everything.

Cheers
	Nick


Index: gcc/config/arm/t-arm-elf
===================================================================
RCS file: /cvs/gcc/egcs/gcc/config/arm/t-arm-elf,v
retrieving revision 1.11
diff -p -r1.11 t-arm-elf
*** t-arm-elf	2000/04/08 14:29:52	1.11
--- t-arm-elf	2000/07/28 17:46:11
*************** dp-bit.c: $(srcdir)/config/fp-bit.c
*** 21,26 ****
--- 21,31 ----
  	echo '#endif' >> dp-bit.c
  	cat $(srcdir)/config/fp-bit.c >> dp-bit.c
  
+ 	
+ MULTILIB_OPTIONS     = marm/mthumb
+ MULTILIB_DIRNAMES    = arm thumb
+ MULTILIB_EXCEPTIONS  = 
+ 	
  # MULTILIB_OPTIONS     = mlittle-endian/mbig-endian
  # MULTILIB_DIRNAMES    = le be
  # MULTILIB_EXCEPTIONS  = 
*************** dp-bit.c: $(srcdir)/config/fp-bit.c
*** 62,73 ****
  # MULTILIB_MATCHES    += mcpu?arm7=mcpu?arm600
  # MULTILIB_MATCHES    += mcpu?arm7=mcpu?arm610
  # MULTILIB_MATCHES    += mcpu?arm7=mcpu?arm620
- #  
- # EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o
- # LIBGCC               = stmp-multilib
- # INSTALL_LIBGCC       = install-multilib
  
- MULTILIB_MATCHES     = mbig-endian=mbe mlittle-endian=mle
  EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o
  
  # If EXTRA_MULTILIB_PARTS is not defined above then define EXTRA_PARTS here
--- 67,73 ----


More information about the Gcc mailing list