| @@ -143,23 +143,34 @@ · 142 unmodified lines |
| 143 | #endif | 143 | #endif |
| 144 | | 144 | |
| 145 | /* builtin functions or variables */ | 145 | /* builtin functions or variables */ |
| 146 | #ifdef TCC_ARM_EABI | 146 | #ifndef TCC_ARM_EABI |
| 147 | DEF(TOK_memcpy, "__aeabi_memcpy") | | |
| 148 | DEF(TOK_memcpy4, "__aeabi_memcpy4") | | |
| 149 | DEF(TOK_memcpy8, "__aeabi_memcpy8") | | |
| 150 | DEF(TOK_memset, "__aeabi_memset") | | |
| 151 | DEF(TOK___aeabi_ldivmod, "__aeabi_ldivmod") | | |
| 152 | DEF(TOK___aeabi_uldivmod, "__aeabi_uldivmod") | | |
| 153 | #else | | |
| 154 | DEF(TOK_memcpy, "memcpy") | 147 | DEF(TOK_memcpy, "memcpy") |
| 155 | DEF(TOK_memset, "memset") | 148 | DEF(TOK_memset, "memset") |
| 156 | DEF(TOK___divdi3, "__divdi3") | 149 | DEF(TOK___divdi3, "__divdi3") |
| 157 | DEF(TOK___moddi3, "__moddi3") | 150 | DEF(TOK___moddi3, "__moddi3") |
| 158 | DEF(TOK___udivdi3, "__udivdi3") | 151 | DEF(TOK___udivdi3, "__udivdi3") |
| 159 | DEF(TOK___umoddi3, "__umoddi3") | 152 | DEF(TOK___umoddi3, "__umoddi3") |
| | 153 | DEF(TOK___ashrdi3, "__ashrdi3") |
| | 154 | DEF(TOK___lshrdi3, "__lshrdi3") |
| | 155 | DEF(TOK___ashldi3, "__ashldi3") |
| | 156 | DEF(TOK___floatundisf, "__floatundisf") |
| | 157 | DEF(TOK___floatundidf, "__floatundidf") |
| | 158 | # ifndef TCC_ARM_VFP |
| | 159 | DEF(TOK___floatundixf, "__floatundixf") |
| | 160 | DEF(TOK___fixunsxfdi, "__fixunsxfdi") |
| | 161 | # endif |
| | 162 | DEF(TOK___fixunssfdi, "__fixunssfdi") |
| | 163 | DEF(TOK___fixunsdfdi, "__fixunsdfdi") |
| 160 | #endif | 164 | #endif |
| 161 | #if defined(TCC_TARGET_ARM) | 165 | |
| 162 | #ifdef TCC_ARM_EABI | 166 | #if defined TCC_TARGET_ARM |
| | 167 | # ifdef TCC_ARM_EABI |
| | 168 | DEF(TOK_memcpy, "__aeabi_memcpy") |
| | 169 | DEF(TOK_memcpy4, "__aeabi_memcpy4") |
| | 170 | DEF(TOK_memcpy8, "__aeabi_memcpy8") |
| | 171 | DEF(TOK_memset, "__aeabi_memset") |
| | 172 | DEF(TOK___aeabi_ldivmod, "__aeabi_ldivmod") |
| | 173 | DEF(TOK___aeabi_uldivmod, "__aeabi_uldivmod") |
| 163 | DEF(TOK___aeabi_idivmod, "__aeabi_idivmod") | 174 | DEF(TOK___aeabi_idivmod, "__aeabi_idivmod") |
| 164 | DEF(TOK___aeabi_uidivmod, "__aeabi_uidivmod") | 175 | DEF(TOK___aeabi_uidivmod, "__aeabi_uidivmod") |
| 165 | DEF(TOK___divsi3, "__aeabi_idiv") | 176 | DEF(TOK___divsi3, "__aeabi_idiv") |
| @@ -168,24 +179,33 @@ · 2 unmodified lines |
| 168 | DEF(TOK___floatdidf, "__aeabi_l2d") | 179 | DEF(TOK___floatdidf, "__aeabi_l2d") |
| 169 | DEF(TOK___fixsfdi, "__aeabi_f2lz") | 180 | DEF(TOK___fixsfdi, "__aeabi_f2lz") |
| 170 | DEF(TOK___fixdfdi, "__aeabi_d2lz") | 181 | DEF(TOK___fixdfdi, "__aeabi_d2lz") |
| 171 | #else | 182 | DEF(TOK___ashrdi3, "__aeabi_lasr") |
| | 183 | DEF(TOK___lshrdi3, "__aeabi_llsr") |
| | 184 | DEF(TOK___ashldi3, "__aeabi_llsl") |
| | 185 | DEF(TOK___floatundisf, "__aeabi_ul2f") |
| | 186 | DEF(TOK___floatundidf, "__aeabi_ul2d") |
| | 187 | DEF(TOK___fixunssfdi, "__aeabi_f2ulz") |
| | 188 | DEF(TOK___fixunsdfdi, "__aeabi_d2ulz") |
| | 189 | # else |
| 172 | DEF(TOK___modsi3, "__modsi3") | 190 | DEF(TOK___modsi3, "__modsi3") |
| 173 | DEF(TOK___umodsi3, "__umodsi3") | 191 | DEF(TOK___umodsi3, "__umodsi3") |
| 174 | DEF(TOK___divsi3, "__divsi3") | 192 | DEF(TOK___divsi3, "__divsi3") |
| 175 | DEF(TOK___udivsi3, "__udivsi3") | 193 | DEF(TOK___udivsi3, "__udivsi3") |
| 176 | DEF(TOK___floatdisf, "__floatdisf") | 194 | DEF(TOK___floatdisf, "__floatdisf") |
| 177 | DEF(TOK___floatdidf, "__floatdidf") | 195 | DEF(TOK___floatdidf, "__floatdidf") |
| 178 | #ifndef TCC_ARM_VFP | 196 | # ifndef TCC_ARM_VFP |
| 179 | DEF(TOK___floatdixf, "__floatdixf") | 197 | DEF(TOK___floatdixf, "__floatdixf") |
| 180 | DEF(TOK___fixunssfsi, "__fixunssfsi") | 198 | DEF(TOK___fixunssfsi, "__fixunssfsi") |
| 181 | DEF(TOK___fixunsdfsi, "__fixunsdfsi") | 199 | DEF(TOK___fixunsdfsi, "__fixunsdfsi") |
| 182 | DEF(TOK___fixunsxfsi, "__fixunsxfsi") | 200 | DEF(TOK___fixunsxfsi, "__fixunsxfsi") |
| 183 | DEF(TOK___fixxfdi, "__fixxfdi") | 201 | DEF(TOK___fixxfdi, "__fixxfdi") |
| 184 | #endif | 202 | # endif |
| 185 | DEF(TOK___fixsfdi, "__fixsfdi") | 203 | DEF(TOK___fixsfdi, "__fixsfdi") |
| 186 | DEF(TOK___fixdfdi, "__fixdfdi") | 204 | DEF(TOK___fixdfdi, "__fixdfdi") |
| | 205 | # endif |
| 187 | #endif | 206 | #endif |
| 188 | #elif defined(TCC_TARGET_C67) | 207 | |
| | 208 | #if defined TCC_TARGET_C67 |
| 189 | DEF(TOK__divi, "_divi") | 209 | DEF(TOK__divi, "_divi") |
| 190 | DEF(TOK__divu, "_divu") | 210 | DEF(TOK__divu, "_divu") |
| 191 | DEF(TOK__divf, "_divf") | 211 | DEF(TOK__divf, "_divf") |
| @@ -193,32 +213,18 @@ · 1 unmodified line |
| 193 | DEF(TOK__remi, "_remi") | 213 | DEF(TOK__remi, "_remi") |
| 194 | DEF(TOK__remu, "_remu") | 214 | DEF(TOK__remu, "_remu") |
| 195 | #endif | 215 | #endif |
| 196 | #ifdef TCC_TARGET_I386 | 216 | |
| 197 | DEF(TOK___tcc_fpinit, "__tcc_fpinit") | 217 | #if defined TCC_TARGET_I386 |
| 198 | DEF(TOK___tcc_cvt_ftol, "__tcc_cvt_ftol") | 218 | DEF(TOK___fixsfdi, "__fixsfdi") |
| 199 | #endif | 219 | DEF(TOK___fixdfdi, "__fixdfdi") |
| 200 | #ifdef TCC_ARM_EABI | 220 | DEF(TOK___fixxfdi, "__fixxfdi") |
| 201 | DEF(TOK___ashrdi3, "__aeabi_lasr") | | |
| 202 | DEF(TOK___lshrdi3, "__aeabi_llsr") | | |
| 203 | DEF(TOK___ashldi3, "__aeabi_llsl") | | |
| 204 | DEF(TOK___floatundisf, "__aeabi_ul2f") | | |
| 205 | DEF(TOK___floatundidf, "__aeabi_ul2d") | | |
| 206 | DEF(TOK___fixunssfdi, "__aeabi_f2ulz") | | |
| 207 | DEF(TOK___fixunsdfdi, "__aeabi_d2ulz") | | |
| 208 | #else | | |
| 209 | DEF(TOK___ashrdi3, "__ashrdi3") | | |
| 210 | DEF(TOK___lshrdi3, "__lshrdi3") | | |
| 211 | DEF(TOK___ashldi3, "__ashldi3") | | |
| 212 | DEF(TOK___floatundisf, "__floatundisf") | | |
| 213 | DEF(TOK___floatundidf, "__floatundidf") | | |
| 214 | #ifndef TCC_ARM_VFP | | |
| 215 | DEF(TOK___floatundixf, "__floatundixf") | | |
| 216 | DEF(TOK___fixunsxfdi, "__fixunsxfdi") | | |
| 217 | #endif | 221 | #endif |
| 218 | DEF(TOK___fixunssfdi, "__fixunssfdi") | 222 | |
| 219 | DEF(TOK___fixunsdfdi, "__fixunsdfdi") | 223 | #if defined TCC_TARGET_I386 || defined TCC_TARGET_X86_64 |
| | 224 | DEF(TOK_alloca, "alloca") |
| 220 | #endif | 225 | #endif |
| 221 | #ifdef TCC_TARGET_PE | 226 | |
| | 227 | #if defined TCC_TARGET_PE |
| 222 | DEF(TOK___chkstk, "__chkstk") | 228 | DEF(TOK___chkstk, "__chkstk") |
| 223 | #endif | 229 | #endif |
| 224 | | 230 | |
| @@ -233,20 +239,17 @@ · 8 unmodified lines |
| 233 | DEF(TOK___bound_ptr_indir16, "__bound_ptr_indir16") | 239 | DEF(TOK___bound_ptr_indir16, "__bound_ptr_indir16") |
| 234 | DEF(TOK___bound_local_new, "__bound_local_new") | 240 | DEF(TOK___bound_local_new, "__bound_local_new") |
| 235 | DEF(TOK___bound_local_delete, "__bound_local_delete") | 241 | DEF(TOK___bound_local_delete, "__bound_local_delete") |
| 236 | #ifdef TCC_TARGET_PE | 242 | # ifdef TCC_TARGET_PE |
| 237 | DEF(TOK_malloc, "malloc") | 243 | DEF(TOK_malloc, "malloc") |
| 238 | DEF(TOK_free, "free") | 244 | DEF(TOK_free, "free") |
| 239 | DEF(TOK_realloc, "realloc") | 245 | DEF(TOK_realloc, "realloc") |
| 240 | DEF(TOK_memalign, "memalign") | 246 | DEF(TOK_memalign, "memalign") |
| 241 | DEF(TOK_calloc, "calloc") | 247 | DEF(TOK_calloc, "calloc") |
| 242 | #endif | 248 | # endif |
| 243 | DEF(TOK_memmove, "memmove") | 249 | DEF(TOK_memmove, "memmove") |
| 244 | DEF(TOK_strlen, "strlen") | 250 | DEF(TOK_strlen, "strlen") |
| 245 | DEF(TOK_strcpy, "strcpy") | 251 | DEF(TOK_strcpy, "strcpy") |
| 246 | #endif | 252 | #endif |
| 247 | #if defined TCC_TARGET_I386 || defined TCC_TARGET_X86_64 | | |
| 248 | DEF(TOK_alloca, "alloca") | | |
| 249 | #endif | | |
| 250 | | 253 | |
| 251 | /* Tiny Assembler */ | 254 | /* Tiny Assembler */ |
| 252 | DEF_ASM(byte) | 255 | DEF_ASM(byte) |