Optimize stpcpy's size and speed
This commit is contained in:
22
libsrc/common/stpcpy.s
Normal file
22
libsrc/common/stpcpy.s
Normal file
@@ -0,0 +1,22 @@
|
||||
;
|
||||
; Colin Leroy-Mira, 4 Sept. 2024
|
||||
;
|
||||
; char* stpcpy (char* dest, const char* src);
|
||||
;
|
||||
|
||||
.export _stpcpy
|
||||
.import _strcpy
|
||||
|
||||
.importzp tmp1, ptr2
|
||||
|
||||
_stpcpy:
|
||||
jsr _strcpy
|
||||
|
||||
ldx ptr2+1 ; Load dest pointer's last high byte
|
||||
tya ; Get the last offset strcpy wrote to
|
||||
|
||||
clc
|
||||
adc ptr2 ; Add to low byte value
|
||||
bcc :+
|
||||
inx
|
||||
: rts ; Return pointer to dest's terminator
|
||||
Reference in New Issue
Block a user