1LIB1ASMSRC = arm/lib1funcs.asm 2LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_tls _bb_init_func \ 3 _call_via_rX _interwork_call_via_rX \ 4 _lshrdi3 _ashrdi3 _ashldi3 \ 5 _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \ 6 _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \ 7 _fixsfsi _fixunssfsi _floatdidf _floatdisf _floatundidf _floatundisf 8 9MULTILIB_OPTIONS = marm/mthumb 10MULTILIB_DIRNAMES = arm thumb 11MULTILIB_EXCEPTIONS = 12MULTILIB_MATCHES = 13 14# MULTILIB_OPTIONS += mcpu=ep9312 15# MULTILIB_DIRNAMES += ep9312 16# MULTILIB_EXCEPTIONS += *mthumb/*mcpu=ep9312* 17# 18# MULTILIB_OPTIONS += mlittle-endian/mbig-endian 19# MULTILIB_DIRNAMES += le be 20# MULTILIB_MATCHES += mbig-endian=mbe mlittle-endian=mle 21# 22# MULTILIB_OPTIONS += mhard-float/msoft-float 23# MULTILIB_DIRNAMES += fpu soft 24# MULTILIB_EXCEPTIONS += *mthumb/*mhard-float* 25# 26# MULTILIB_OPTIONS += mno-thumb-interwork/mthumb-interwork 27# MULTILIB_DIRNAMES += normal interwork 28# 29# MULTILIB_OPTIONS += fno-leading-underscore/fleading-underscore 30# MULTILIB_DIRNAMES += elf under 31# 32# MULTILIB_OPTIONS += mcpu=arm7 33# MULTILIB_DIRNAMES += nofmult 34# MULTILIB_EXCEPTIONS += *mthumb*/*mcpu=arm7* 35# # Note: the multilib_exceptions matches both -mthumb and 36# # -mthumb-interwork 37# # 38# # We have to match all the arm cpu variants which do not have the 39# # multiply instruction and treat them as if the user had specified 40# # -mcpu=arm7. Note that in the following the ? is interpreted as 41# # an = for the purposes of matching command line options. 42# # FIXME: There ought to be a better way to do this. 43# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7d 44# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7di 45# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm70 46# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm700 47# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm700i 48# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm710 49# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm710c 50# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7100 51# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7500 52# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm7500fe 53# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm6 54# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm60 55# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm600 56# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm610 57# MULTILIB_MATCHES += mcpu?arm7=mcpu?arm620 58 59EXTRA_MULTILIB_PARTS = crtbegin.o crtend.o crti.o crtn.o 60 61# If EXTRA_MULTILIB_PARTS is not defined above then define EXTRA_PARTS here 62# EXTRA_PARTS = crtbegin.o crtend.o crti.o crtn.o 63 64LIBGCC = stmp-multilib 65INSTALL_LIBGCC = install-multilib 66 67# Currently there is a bug somewhere in GCC's alias analysis 68# or scheduling code that is breaking _fpmul_parts in fp-bit.c. 69# Disabling function inlining is a workaround for this problem. 70TARGET_LIBGCC2_CFLAGS = -fno-inline 71 72# Assemble startup files. 73$(T)crti.o: $(srcdir)/config/arm/crti.asm $(GCC_PASSES) 74 $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \ 75 -c -o $(T)crti.o -x assembler-with-cpp $(srcdir)/config/arm/crti.asm 76 77$(T)crtn.o: $(srcdir)/config/arm/crtn.asm $(GCC_PASSES) 78 $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(MULTILIB_CFLAGS) $(INCLUDES) \ 79 -c -o $(T)crtn.o -x assembler-with-cpp $(srcdir)/config/arm/crtn.asm 80 81