diff --git a/src/ce/delay.src b/src/ce/delay.src index f0d91df48..7753e0bd7 100644 --- a/src/ce/delay.src +++ b/src/ce/delay.src @@ -68,6 +68,6 @@ _delay: .set _msleep, _delay - extern ___sleep_common.3 - extern __lmulu - extern _clock + .extern ___sleep_common.3 + .extern __lmulu + .extern _clock diff --git a/src/ce/getstringinput.src b/src/ce/getstringinput.src index 59b944723..2288e2afb 100644 --- a/src/ce/getstringinput.src +++ b/src/ce/getstringinput.src @@ -146,4 +146,4 @@ _os_GetStringInput: ld (ti.curRow), hl jp .L.start - extern __frameset0 + .extern __frameset0 diff --git a/src/ce/gettokeninput.src b/src/ce/gettokeninput.src index b87d3e0a2..86c917ec4 100644 --- a/src/ce/gettokeninput.src +++ b/src/ce/gettokeninput.src @@ -146,4 +146,4 @@ _os_GetTokenInput: ex de, hl jp .L.start - extern __frameset0 + .extern __frameset0 diff --git a/src/ce/lz4.src b/src/ce/lz4.src index 2c30ae20c..15480db33 100644 --- a/src/ce/lz4.src +++ b/src/ce/lz4.src @@ -45,7 +45,6 @@ _lz4_Decompress: ; Fallthrough .local lz4_decompress_block_internal - .type lz4_decompress_block_internal, @function ; Input: IY = compressed block, DE = decompression buffer, BC = size of block ; Output: IY = after compressed block, DE = after decompressed data, carry flag clear diff --git a/src/ce/random.src b/src/ce/random.src index 1dfb326b7..f80058608 100644 --- a/src/ce/random.src +++ b/src/ce/random.src @@ -136,4 +136,4 @@ __setstate: .section .data .local __state __state: - .d32 0d0e0f10h,090a0b0ch,05060708h,01020304h + .d32 0x0d0e0f10,0x090a0b0c,0x05060708,0x01020304 diff --git a/src/ce/runprgm.src b/src/ce/runprgm.src index 898684e38..9bbf375e0 100644 --- a/src/ce/runprgm.src +++ b/src/ce/runprgm.src @@ -454,7 +454,7 @@ ___prgm_to_run: ___prgm_to_run_size: .d24 0 - section .data.___prgm_caller + .section .data.___prgm_caller .global ___prgm_caller ___prgm_caller: .zero 9 diff --git a/src/ce/sleep.src b/src/ce/sleep.src index 5fb9fd670..bad67bb3a 100644 --- a/src/ce/sleep.src +++ b/src/ce/sleep.src @@ -45,6 +45,6 @@ _sleep: jp ___sleep_common.1 - extern ___sleep_common.1 - extern __lmulu - extern _clock + .extern ___sleep_common.1 + .extern __lmulu + .extern _clock diff --git a/src/ce/sleep_common.src b/src/ce/sleep_common.src index 7407f8610..a0eb75d0d 100644 --- a/src/ce/sleep_common.src +++ b/src/ce/sleep_common.src @@ -7,7 +7,7 @@ ___sleep_common: ; Timing assumes fetching from RAM (4cc) and the first timer read being valid. ; Calculate the end time. - section .text + .global ___sleep_common.1 .type ___sleep_common.1, @function ___sleep_common.1: @@ -56,4 +56,4 @@ ___sleep_common.3: ; 202 - 75 + 31 + 48 + 13 + 24 = 243 cc after end time captured - extern _clock + .extern _clock diff --git a/src/ce/ticksleep.src b/src/ce/ticksleep.src index 6018ecc5d..aa5385568 100644 --- a/src/ce/ticksleep.src +++ b/src/ce/ticksleep.src @@ -41,5 +41,5 @@ _ticksleep: jp ___sleep_common.1 - extern ___sleep_common.1 - extern _clock + .extern ___sleep_common.1 + .extern _clock diff --git a/src/crt/and.src b/src/crt/and.src index a6bb60007..b02e48c76 100644 --- a/src/crt/and.src +++ b/src/crt/and.src @@ -2,13 +2,15 @@ .section .text .global __land + .type __land, @function .section .text .global __iand + .type __iand, @function .ifdef PREFER_OS_CRT .set __land, 0x0001A4 - .set __iand, 000134h + .set __iand, 0x000134 .else diff --git a/src/crt/and_fast.src b/src/crt/and_fast.src index 56dad9c07..fbe53953f 100644 --- a/src/crt/and_fast.src +++ b/src/crt/and_fast.src @@ -2,8 +2,11 @@ .section .text .global __land_fast + .type __land_fast, @function .global __iand_fast + .type __iand_fast, @function .global __sand_fast + .type __sand_fast, @function __land_fast: ; CC: 24*r(PC)+8*r(SPL)+7*w(SPL)+1 diff --git a/src/crt/crt.src b/src/crt/crt.src index 45cf11776..6e26b47f3 100644 --- a/src/crt/crt.src +++ b/src/crt/crt.src @@ -1,4 +1,4 @@ - .assume adl = 1 + .assume adl=1 .section .init.weak_crt,"ax",@progbits diff --git a/src/crt/crt0.S b/src/crt/crt0.S index 3a7112997..6d8e5f886 100644 --- a/src/crt/crt0.S +++ b/src/crt/crt0.S @@ -1,6 +1,6 @@ #include "crt.h" - .assume adl = 1 + .assume adl=1 .equ ti.mpTmr1Counter, 0x0F20000 .equ ti.mpTmrCtrl, 0x0F20030 diff --git a/src/crt/ctlz.src b/src/crt/ctlz.src index 85f83ab5c..236960fb7 100644 --- a/src/crt/ctlz.src +++ b/src/crt/ctlz.src @@ -5,16 +5,16 @@ .type __bctlz, @function __bctlz: - cp a, 010h + cp a, 0x10 jr c, .L.low4 - cp a, 040h + cp a, 0x40 jr c, .L.low6 add a, a sbc a, a inc a ret .L.low6: - add a, -020h + add a, -0x20 sbc a, a add a, 3 ret diff --git a/src/crt/daddsub.src b/src/crt/daddsub.src index f40a34075..31323e9b6 100644 --- a/src/crt/daddsub.src +++ b/src/crt/daddsub.src @@ -53,4 +53,5 @@ __daddsub: pop af ret - .extern _softfloat_addMagsF64, _softfloat_subMagsF64 + .extern _softfloat_addMagsF64 + .extern _softfloat_subMagsF64 diff --git a/src/crt/dneg.src b/src/crt/dneg.src index 2eef9cb9c..e0b6137ce 100644 --- a/src/crt/dneg.src +++ b/src/crt/dneg.src @@ -5,7 +5,7 @@ .global __dneg .type __dneg, @function -; .assumes BC:UDE:UHL +; assumes BC:UDE:UHL __dneg: rl b ccf diff --git a/src/crt/errno.src b/src/crt/errno.src index d6920c514..78fa74e6a 100644 --- a/src/crt/errno.src +++ b/src/crt/errno.src @@ -1,4 +1,4 @@ - .assume adl = 1 + .assume adl=1 .global _errno .equ _errno, 0xD008DC diff --git a/src/crt/fpupop2.src b/src/crt/fpupop2.src index 0a50f0d02..7b5144936 100644 --- a/src/crt/fpupop2.src +++ b/src/crt/fpupop2.src @@ -6,7 +6,7 @@ __fpupop2: push bc - ld bc, 0800000h + ld bc, 0x800000 add hl, bc jr nc, .ncarry add hl, bc diff --git a/src/crt/lpopcnt.src b/src/crt/lpopcnt.src index f7af466f0..df1acbe24 100644 --- a/src/crt/lpopcnt.src +++ b/src/crt/lpopcnt.src @@ -23,4 +23,5 @@ __lpopcnt: pop hl ret - .extern __popcnt_common_init_full, __popcnt_common_iter_adjusted + .extern __popcnt_common_init_full + .extern __popcnt_common_iter_adjusted diff --git a/src/crt/ltod.src b/src/crt/ltod.src index 0299e84aa..8e93b6aee 100644 --- a/src/crt/ltod.src +++ b/src/crt/ltod.src @@ -2,16 +2,22 @@ .section .text - .global __ulltod ; (long double)unsigned long long - .global __lltod ; (long double)long long - .global __ultod ; (long double)unsigned long - .global __ltod ; (long double)long + .global __ulltod + .type __ulltod, @function + .global __lltod + .type __lltod, @function + .global __ultod + .type __ultod, @function + .global __ltod + .type __ltod, @function __ulltod: + ; (long double)unsigned long long cp a, a ; set Z flag push af jr .L.lltod_common __lltod: + ; (long double)long long bit 7, b push af call nz, __llneg ; abs(BC:UDE:UHL) @@ -115,10 +121,12 @@ __lltod: jr .L.int_to_f64_shl.finish __ultod: + ; (long double)unsigned long cp a, a ; set Z flag push af jr .L.ltod_common __ltod: + ; (long double)long bit 7, e push af call nz, __lneg ; abs(E:UHL) diff --git a/src/libc/abs.src b/src/libc/abs.src index 01ccb032c..57b3fce7f 100644 --- a/src/libc/abs.src +++ b/src/libc/abs.src @@ -1,8 +1,8 @@ - .assume ADL=1 + .assume adl=1 .section .text .global _abs - .type _abs,@function + .type _abs, @function _abs: pop hl pop de diff --git a/src/libc/allocator/allocator_simple.src b/src/libc/allocator/allocator_simple.src index dfe04d560..5d3af2710 100644 --- a/src/libc/allocator/allocator_simple.src +++ b/src/libc/allocator/allocator_simple.src @@ -1,4 +1,4 @@ - .assume adl = 1 + .assume adl=1 .section .text._malloc diff --git a/src/libc/atof.src b/src/libc/atof.src index d30d3b043..a394888c2 100644 --- a/src/libc/atof.src +++ b/src/libc/atof.src @@ -2,8 +2,8 @@ .section .text .global _atof - .global _atoff .type _atof, @function + .global _atoff .type _atoff, @function .ifdef PREFER_OS_LIBC diff --git a/src/libc/ceilf.src b/src/libc/ceilf.src index d315517ca..8d2d2dbfe 100644 --- a/src/libc/ceilf.src +++ b/src/libc/ceilf.src @@ -2,8 +2,8 @@ .section .text .global _ceil - .global _ceilf .type _ceil, @function + .global _ceilf .type _ceilf, @function .ifdef PREFER_OS_LIBC diff --git a/src/libc/cimagf.src b/src/libc/cimagf.src index 85a467fa2..6022f7f36 100644 --- a/src/libc/cimagf.src +++ b/src/libc/cimagf.src @@ -3,8 +3,8 @@ .section .text .global _cimagf - .global _cimag .type _cimagf, @function + .global _cimag .type _cimag, @function ; float cimagf(float _Complex) diff --git a/src/libc/fminmaxf.src b/src/libc/fminmaxf.src index 9ec6f7d79..48386373a 100644 --- a/src/libc/fminmaxf.src +++ b/src/libc/fminmaxf.src @@ -96,7 +96,9 @@ _fminmaxf_common.x_maybe_NaN: .section .text .global _fmaxf + .type _fmaxf, @function .global _fmax + .type _fmax, @function _fmaxf: _fmax: diff --git a/src/libc/fmodl.src b/src/libc/fmodl.src index c7a4a9044..29486f825 100644 --- a/src/libc/fmodl.src +++ b/src/libc/fmodl.src @@ -1,4 +1,4 @@ - .assume adl = 1 + .assume adl=1 .section .text diff --git a/src/libc/issignalingf.src b/src/libc/issignalingf.src index 25a472128..286dad3c7 100644 --- a/src/libc/issignalingf.src +++ b/src/libc/issignalingf.src @@ -5,7 +5,7 @@ .global __issignalingf .type __issignalingf, @function -; .assumes quiet NaN is NaN with bit 22 set +; assumes quiet NaN is NaN with bit 22 set ; bool _issignalingf(float) __issignalingf: ; based off __isnanf, unoptimized diff --git a/src/libc/issignalingl.src b/src/libc/issignalingl.src index c19554770..4b9da483c 100644 --- a/src/libc/issignalingl.src +++ b/src/libc/issignalingl.src @@ -5,7 +5,7 @@ .global __issignalingl .type __issignalingl, @function -; .assumes quiet NaN is NaN with bit 51 set +; assumes quiet NaN is NaN with bit 51 set ; bool _issignalingl(long double) __issignalingl: ld hl, 9 diff --git a/src/libc/logbf.src b/src/libc/logbf.src index d381731fc..84f32b4d6 100644 --- a/src/libc/logbf.src +++ b/src/libc/logbf.src @@ -65,7 +65,7 @@ _logbf: add a, 130 jr .L.int_to_float - extern __ltof - extern __ictlz - extern ___fe_cur_env - extern _errno + .extern __ltof + .extern __ictlz + .extern ___fe_cur_env + .extern _errno diff --git a/src/libc/memmem.src b/src/libc/memmem.src index 87c03692f..56e4a2244 100644 --- a/src/libc/memmem.src +++ b/src/libc/memmem.src @@ -5,7 +5,6 @@ .global _memmem .type _memmem, @function .local _memcmp_fast - .type _memcmp_fast, @function ; void *memmem(const void *haystack, size_t haystack_len, const void *needle, size_t needle_len) .equ haystack, 3 diff --git a/src/libc/strcspn.src b/src/libc/strcspn.src index a9528fa05..883dcaa6a 100644 --- a/src/libc/strcspn.src +++ b/src/libc/strcspn.src @@ -2,6 +2,7 @@ .section .text .global _strcspn + .type _strcspn, @function _strcspn: call __strcspn_strpbrk_common sbc hl, de ; Calculate number of mismatching characters @@ -9,6 +10,7 @@ _strcspn: .section .text .global _strpbrk + .type _strpbrk, @function _strpbrk: call __strcspn_strpbrk_common ret nz ; Return pointer if not end of string diff --git a/src/libc/strdup.src b/src/libc/strdup.src index da12434c4..014edafb6 100644 --- a/src/libc/strdup.src +++ b/src/libc/strdup.src @@ -2,6 +2,7 @@ .section .text .global _strdup + .type _strdup, @function _strdup: pop de ex (sp), hl diff --git a/src/libc/strlcat.src b/src/libc/strlcat.src index f69385837..f11aaf226 100644 --- a/src/libc/strlcat.src +++ b/src/libc/strlcat.src @@ -3,6 +3,7 @@ .section .text .global _strlcat + .type _strlcat, @function _strlcat: ld iy, 0 diff --git a/src/libc/strlcpy.src b/src/libc/strlcpy.src index c55b56c9e..463442fef 100644 --- a/src/libc/strlcpy.src +++ b/src/libc/strlcpy.src @@ -2,6 +2,7 @@ .section .text .global _strlcpy + .type _strlcpy, @function ; BSD variant of strncpy that ensures the destination is null-terminated. ; OpenBSD reference: https://github.com/openbsd/src/blob/master/lib/libc/string/strlcpy.c diff --git a/src/libc/strlen.src b/src/libc/strlen.src index ce2841bba..9ae3c5b26 100644 --- a/src/libc/strlen.src +++ b/src/libc/strlen.src @@ -2,6 +2,7 @@ .section .text .global _strlen + .type _strlen, @function .ifdef PREFER_OS_LIBC diff --git a/src/libc/strtol.src b/src/libc/strtol.src index cf5885b2b..67a19163b 100644 --- a/src/libc/strtol.src +++ b/src/libc/strtol.src @@ -105,6 +105,7 @@ ___strtoui: .section .text._strtoul .global _strtoul + .type _strtoul, @function _strtoul: call .L__strtol_common ; overflow occured if B is non-zero diff --git a/src/softfloat/s_normSubnormalF64Sig.src b/src/softfloat/s_normSubnormalF64Sig.src index 68497a6b6..28b3fdf0e 100644 --- a/src/softfloat/s_normSubnormalF64Sig.src +++ b/src/softfloat/s_normSubnormalF64Sig.src @@ -1,8 +1,9 @@ - .assume adl = 1 + .assume adl=1 .section .text .global _softfloat_normSubnormalF64Sig + .type _softfloat_normSubnormalF64Sig, @function ; saves 78 bytes ; this function is called in the float64_ldexp tests diff --git a/src/softfloat/s_propagateNaNF64UI.src b/src/softfloat/s_propagateNaNF64UI.src index d8a0ffd9a..708f008e4 100644 --- a/src/softfloat/s_propagateNaNF64UI.src +++ b/src/softfloat/s_propagateNaNF64UI.src @@ -3,6 +3,7 @@ .section .text .global _softfloat_propagateNaNF64UI + .type _softfloat_propagateNaNF64UI, @function ; at least one of the arguments is NaN ; returns x if it is NaN, otherwise returns y diff --git a/src/softfloat/s_shiftRightJam64.src b/src/softfloat/s_shiftRightJam64.src index 5a43c00c3..c0e3858ce 100644 --- a/src/softfloat/s_shiftRightJam64.src +++ b/src/softfloat/s_shiftRightJam64.src @@ -1,8 +1,9 @@ - .assume adl = 1 + .assume adl=1 .section .text .global _softfloat_shortShiftRightJam64 + .type _softfloat_shortShiftRightJam64, @function ; shift amount is [1, 63] _softfloat_shortShiftRightJam64: @@ -16,6 +17,7 @@ _softfloat_shortShiftRightJam64: .section .text .global _softfloat_shiftRightJam64 + .type _softfloat_shiftRightJam64, @function ; shift amount is non-zero _softfloat_shiftRightJam64: diff --git a/src/softfloat/softfloat_isSigNaNF32UI.src b/src/softfloat/softfloat_isSigNaNF32UI.src index 66a8db739..4d949d34b 100644 --- a/src/softfloat/softfloat_isSigNaNF32UI.src +++ b/src/softfloat/softfloat_isSigNaNF32UI.src @@ -1,7 +1,8 @@ - .assume adl = 1 + .assume adl=1 .section .text._softfloat_isSigNaNF32UI .global _softfloat_isSigNaNF32UI + .type _softfloat_isSigNaNF32UI, @function _softfloat_isSigNaNF32UI: jp __issignalingf diff --git a/src/softfloat/softfloat_isSigNaNF64UI.src b/src/softfloat/softfloat_isSigNaNF64UI.src index 25f03c997..f2749e961 100644 --- a/src/softfloat/softfloat_isSigNaNF64UI.src +++ b/src/softfloat/softfloat_isSigNaNF64UI.src @@ -1,7 +1,8 @@ - .assume adl = 1 + .assume adl=1 .section .text._softfloat_isSigNaNF64UI .global _softfloat_isSigNaNF64UI + .type _softfloat_isSigNaNF64UI, @function _softfloat_isSigNaNF64UI: jp __issignalingl diff --git a/test/floating_point/compiletime_classification/src/test.s b/test/floating_point/compiletime_classification/src/test.s index 001dfd0ae..6dd262751 100644 --- a/test/floating_point/compiletime_classification/src/test.s +++ b/test/floating_point/compiletime_classification/src/test.s @@ -1,4 +1,4 @@ - .assume adl = 1 + .assume adl=1 .section .text diff --git a/test/standalone/asprintf_fprintf/src/fill_mem32.s b/test/standalone/asprintf_fprintf/src/fill_mem32.s index a53442d10..7aa3b130e 100644 --- a/test/standalone/asprintf_fprintf/src/fill_mem32.s +++ b/test/standalone/asprintf_fprintf/src/fill_mem32.s @@ -1,4 +1,4 @@ - .assume adl = 1 + .assume adl=1 .section .text diff --git a/test/standalone/asprintf_fprintf/src/rename.s b/test/standalone/asprintf_fprintf/src/rename.s index 589c4e58d..5cc06e27e 100644 --- a/test/standalone/asprintf_fprintf/src/rename.s +++ b/test/standalone/asprintf_fprintf/src/rename.s @@ -1,4 +1,4 @@ - .assume adl = 1 + .assume adl=1 .section .rodata._NULL_ptr diff --git a/test/standalone/stdbit/src/data.S b/test/standalone/stdbit/src/data.S index be926de8f..e684d426d 100644 --- a/test/standalone/stdbit/src/data.S +++ b/test/standalone/stdbit/src/data.S @@ -1,4 +1,4 @@ - .assume adl = 1 + .assume adl=1 .section .data