From f99d3de221db23e322c6c18c8249282e27726c25 Mon Sep 17 00:00:00 2001 From: grischka Date: Tue, 4 Dec 2007 20:38:09 +0000 Subject: Import 409,410: ARM EABI by Daniel Glöckner MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tcctok.h | 33 +++++++++++++++++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) (limited to 'tcctok.h') diff --git a/tcctok.h b/tcctok.h index dab5942..e019476 100644 --- a/tcctok.h +++ b/tcctok.h @@ -121,17 +121,36 @@ #endif /* builtin functions or variables */ +#ifdef TCC_ARM_EABI + DEF(TOK_memcpy, "__aeabi_memcpy") + DEF(TOK_memcpy4, "__aeabi_memcpy4") + DEF(TOK_memcpy8, "__aeabi_memcpy8") + DEF(TOK_memset, "__aeabi_memset") +#else DEF(TOK_memcpy, "memcpy") DEF(TOK_memset, "memset") +#endif DEF(TOK___divdi3, "__divdi3") DEF(TOK___moddi3, "__moddi3") DEF(TOK___udivdi3, "__udivdi3") DEF(TOK___umoddi3, "__umoddi3") #if defined(TCC_TARGET_ARM) - DEF(TOK___divsi3, "__divsi3") DEF(TOK___modsi3, "__modsi3") - DEF(TOK___udivsi3, "__udivsi3") DEF(TOK___umodsi3, "__umodsi3") +#ifdef TCC_ARM_EABI + DEF(TOK___divsi3, "__aeabi_idiv") + DEF(TOK___udivsi3, "__aeabi_uidiv") + DEF(TOK___sardi3, "__aeabi_lasr") + DEF(TOK___shrdi3, "__aeabi_llsr") + DEF(TOK___shldi3, "__aeabi_llsl") + DEF(TOK___slltof, "__aeabi_l2f") + DEF(TOK___slltold, "__aeabi_l2d") + DEF(TOK___fixsfdi, "__aeabi_f2lz") + DEF(TOK___fixdfdi, "__aeabi_d2lz") + DEF(TOK___fixxfdi, "__aeabi_d2lz") +#else + DEF(TOK___divsi3, "__divsi3") + DEF(TOK___udivsi3, "__udivsi3") DEF(TOK___sardi3, "__ashrdi3") DEF(TOK___shrdi3, "__lshrdi3") DEF(TOK___shldi3, "__ashldi3") @@ -142,6 +161,7 @@ DEF(TOK___fixsfdi, "__fixsfdi") DEF(TOK___fixdfdi, "__fixdfdi") DEF(TOK___fixxfdi, "__fixxfdi") +#endif #elif defined(TCC_TARGET_C67) DEF(TOK__divi, "_divi") DEF(TOK__divu, "_divu") @@ -160,12 +180,21 @@ #endif DEF(TOK___tcc_int_fpu_control, "__tcc_int_fpu_control") DEF(TOK___tcc_fpu_control, "__tcc_fpu_control") +#ifdef TCC_ARM_EABI + DEF(TOK___ulltof, "__aeabi_ul2f") + DEF(TOK___ulltod, "__aeabi_ul2d") + DEF(TOK___ulltold, "__aeabi_ul2d") + DEF(TOK___fixunssfdi, "__aeabi_f2ulz") + DEF(TOK___fixunsdfdi, "__aeabi_d2ulz") + DEF(TOK___fixunsxfdi, "__aeabi_d2ulz") +#else DEF(TOK___ulltof, "__ulltof") DEF(TOK___ulltod, "__ulltod") DEF(TOK___ulltold, "__ulltold") DEF(TOK___fixunssfdi, "__fixunssfdi") DEF(TOK___fixunsdfdi, "__fixunsdfdi") DEF(TOK___fixunsxfdi, "__fixunsxfdi") +#endif DEF(TOK___chkstk, "__chkstk") /* bound checking symbols */ -- cgit v1.3.1