1
0
mirror of https://github.com/cc65/cc65.git synced 2024-12-23 04:30:10 +00:00
cc65/libsrc/common
Colin Leroy-Mira 1fab179cb4 a BIT of 65C02 optimisations
Use BIT immediate instead of AND when reloading A is required
afterwards.
Add an fread unit test as the optimisation touches fread.
Sprinkle a few zero page indexed while we're at it.
2024-02-02 19:45:49 +01:00
..
_afailed.c use __afailed instead of _afailed 2022-08-28 20:08:13 +02:00
_cwd.s Renamed INITBSS to INIT and INIT to ONCE. 2016-03-06 21:27:19 +01:00
_directerrno.s remove extra spaces 2022-08-28 22:37:33 +02:00
_environ.s Adjusted constructors. 2016-03-16 16:28:32 +01:00
_fdesc.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
_file.h Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
_file.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
_fopen.s remove extra spaces 2022-08-28 22:37:33 +02:00
_heap.s add extra underscore to heap stuff 2022-08-29 19:55:48 +02:00
_heapadd.s add extra underscore to heap stuff 2022-08-29 19:55:48 +02:00
_heapblocksize.s add extra underscore to heap stuff 2022-08-29 19:55:48 +02:00
_heapmaxavail.s add extra underscore to heap stuff 2022-08-29 19:55:48 +02:00
_heapmemavail.s add extra underscore to heap stuff 2022-08-29 19:55:48 +02:00
_hextab.c Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
_idiv32by16r16.s Avoid unintended file "shadowing". 2019-04-04 09:16:59 +02:00
_imul8x8r16.s Avoid unintended file "shadowing". 2019-04-04 09:16:59 +02:00
_imul16x16r32.s Avoid unintended file "shadowing". 2019-04-04 09:16:59 +02:00
_longminstr.c remove dangling spaces 2022-04-17 16:06:22 +02:00
_mappederrno.s remove extra spaces 2022-08-28 22:37:33 +02:00
_oserror.s fix errno related underscores in all libsrc/*.s files 2022-08-28 21:52:53 +02:00
_poserror.c add underscores to _poserror and _stroserror 2022-08-29 21:06:48 +02:00
_printf.h Added explicit settings of calling conventions in pointer-to-function declarations in system and library headers. 2015-06-22 00:15:48 -04:00
_printf.s a BIT of 65C02 optimisations 2024-02-02 19:45:49 +01:00
_scanf.c Fixed usage of "lvalue-cast" in _scanf implementation. 2020-08-24 17:16:37 +02:00
_scanf.h Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
_scanf.inc
_seterrno.s fix some errno related stuff, "make all" works again 2022-08-28 22:09:44 +02:00
_swap.s extra underscores for _randomize and _swap 2022-08-29 20:52:35 +02:00
_sys.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
_time_t_to_tm.s Rewrite mktime in assembly 2024-01-18 09:09:38 +01:00
_udiv32by16r16.s Avoid unintended file "shadowing". 2019-04-04 09:16:59 +02:00
_umul8x8r16.s Avoid unintended file "shadowing". 2019-04-04 09:16:59 +02:00
_umul16x8r32.s Avoid unintended file "shadowing". 2019-04-04 09:16:59 +02:00
_umul16x16r32.s Avoid unintended file "shadowing". 2019-04-04 09:16:59 +02:00
abort.c remove dangling spaces 2022-04-17 16:06:22 +02:00
asctime.s Rewrite asctime() in assembler (-7 bytes) 2024-01-18 09:09:38 +01:00
atexit.s fix errno related underscores in all libsrc/*.s files 2022-08-28 21:52:53 +02:00
atoi.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
bsearch.c Added explicit settings of calling conventions in pointer-to-function declarations in system and library headers. 2015-06-22 00:15:48 -04:00
calloc.s add extra underscore to _bzero, add a test for bzero/memset 2022-08-29 23:20:48 +02:00
chdir.s remove extra spaces 2022-08-28 22:37:33 +02:00
checkferror.s Factorize file pointer check 2024-01-30 19:40:28 +01:00
copydata.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
creat.s
ctime.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
ctype.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
ctypemask.s remove dangling spaces 2022-04-17 16:06:22 +02:00
divt.s Rewrite mktime in assembly 2024-01-18 09:09:38 +01:00
doesclrscr.s remove dangling spaces 2022-04-17 16:06:22 +02:00
errno.s fix some errno related stuff, "make all" works again 2022-08-28 22:09:44 +02:00
errormsg.c Implement exec() for Atari XDOS. 2016-06-13 20:40:01 +02:00
fclose.s add a return -1 helper 2024-01-24 09:58:09 +01:00
fdopen.c Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
fgetc.s a BIT of 65C02 optimisations 2024-02-02 19:45:49 +01:00
fgetpos.c Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
fgets.s Remove useless branching code in fgets 2024-01-30 19:52:48 +01:00
fmisc.s add a return -1 helper 2024-01-24 09:58:09 +01:00
fopen.s remove extra spaces 2022-08-28 22:37:33 +02:00
fprintf.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
fputc.s Factorize file pointer check 2024-01-30 19:40:28 +01:00
fputs.s Factorize file pointer check 2024-01-30 19:40:28 +01:00
fread.s a BIT of 65C02 optimisations 2024-02-02 19:45:49 +01:00
free.s add extra underscore to heap stuff 2022-08-29 19:55:48 +02:00
freopen.c Fix some commonly made spelling errors in comments. 2022-02-21 15:44:31 -05:00
fscanf.s Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
fseek.c Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
fsetpos.c remove dangling spaces 2022-04-17 16:06:22 +02:00
ftell.c Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
fwrite.s a BIT of 65C02 optimisations 2024-02-02 19:45:49 +01:00
getchar.c Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
getcpu.s remove TABs 2019-02-05 23:27:52 +01:00
getcwd.s fix errno related underscores in all libsrc/*.s files 2022-08-28 21:52:53 +02:00
getenv.s
getopt.c Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
gets.s Rewrite gets in assembler 2024-01-26 20:29:17 +01:00
gmtime.s Rework time functions a bit 2024-01-08 18:24:13 +01:00
interrupt.s Save/restore jmpvec as it is used by generated code - see g_callind(). 2017-10-23 18:57:28 +02:00
isalnum.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
isalpha.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
isascii.s Shorter isascii 2022-08-04 00:25:04 +02:00
isblank.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
iscntrl.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
isdigit.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
isgraph.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
islower.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
isprint.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
ispunct.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
isspace.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
isupper.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
isxdigit.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
itoa.s Fix some commonly made spelling errors in comments. 2022-02-21 15:44:31 -05:00
labs.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
locale.c Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
localtime.s Rework time functions a bit 2024-01-08 18:24:13 +01:00
longjmp.s Added "popptr1" which is of common use to save some bytes. 2018-05-20 15:30:18 +02:00
ltoa.s remove dangling spaces 2022-04-17 16:06:22 +02:00
lz4.s Small lz4 optimizations 2017-06-09 16:57:47 +03:00
malloc.s Fix malloc and realloc overflow 2024-01-24 09:54:54 +01:00
memchr.s Fixed formatting and two import issues. 2018-05-21 13:02:56 +02:00
memcmp.s Fixed outdated comments. 2020-12-27 18:22:12 -05:00
memcpy.s remove dangling spaces 2022-04-17 16:06:22 +02:00
memmove.s Added further optimizations and unit tests. 2017-03-05 02:09:12 +01:00
memset.s add extra underscore to _bzero, add a test for bzero/memset 2022-08-29 23:20:48 +02:00
mkdir.s remove extra spaces 2022-08-28 22:37:33 +02:00
mktime.s Rewrite mktime in assembly 2024-01-18 09:09:38 +01:00
modfree.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
modload.s Use the new declarations from the zeropage include file. In interrupt handlers 2012-11-04 15:23:05 +00:00
mul20.s remove dangling spaces 2022-04-17 16:06:22 +02:00
mul40.s remove dangling spaces 2022-04-17 16:06:22 +02:00
ntohl.s Address Oliver's comments 2023-09-07 16:48:56 +02:00
ntohs.s Address Oliver's comments 2023-09-07 16:48:56 +02:00
perror.c fix some errno related stuff, "make all" works again 2022-08-28 22:09:44 +02:00
pmemalign.c Optimize -36 bytes out of posix_memalign 2024-01-24 10:23:53 +01:00
printf.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
putchar.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
putenv.s add a return -1 helper 2024-01-24 09:58:09 +01:00
puts.c Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
qsort.c extra underscores for _randomize and _swap 2022-08-29 20:52:35 +02:00
raise.s use __sig_ign and __sig_dft instead of _sig_ign and _sig_dft 2022-08-28 20:18:34 +02:00
rand.s Minor style change. 2020-07-21 23:44:36 +02:00
realloc.s Rewrite realloc in asm 2024-01-26 20:25:59 +01:00
remove.s remove extra spaces 2022-08-28 22:37:33 +02:00
rename.s fix errno related underscores in all libsrc/*.s files 2022-08-28 21:52:53 +02:00
rewind.c remove dangling spaces 2022-04-17 16:06:22 +02:00
rmdir.s remove extra spaces 2022-08-28 22:37:33 +02:00
scanf.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
searchenv.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
setjmp.s fix setjmp.h 2022-08-28 20:05:11 +02:00
signal.s remove extra spaces 2022-08-28 22:37:33 +02:00
sigtable.s remove extra spaces 2022-08-28 22:37:33 +02:00
sincos.s Added '_' prefix to sin and cos. 2019-04-13 11:25:54 +02:00
sleep.c Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
snprintf.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
sprintf.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
sscanf.s Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
strcat.s Just some white space fixes of recently contributed code. 2017-04-06 17:53:57 +02:00
strchr.s Just some white space fixes of recently contributed code. 2017-04-06 17:53:57 +02:00
strcmp.s Added "popptr1" which is of common use to save some bytes. 2018-05-20 15:30:18 +02:00
strcoll.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
strcpy.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
strcspn.s Little strdup optimisation 2024-01-07 14:25:06 +01:00
strdup.s Little strdup optimisation 2024-01-07 14:25:06 +01:00
strerror.s fix some errno related stuff, "make all" works again 2022-08-28 22:09:44 +02:00
strftime.c Make some arrays const. 2017-06-28 20:43:31 +02:00
stricmp.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
strlen.s Little strdup optimisation 2024-01-07 14:25:06 +01:00
strlower.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
strncat.s remove dangling spaces 2022-04-17 16:06:22 +02:00
strncmp.s Added "popptr1" which is of common use to save some bytes. 2018-05-20 15:30:18 +02:00
strncpy.s Remove stale comments. 2020-12-27 17:54:49 -05:00
strnicmp.s Fix comment. 2020-12-27 17:54:49 -05:00
strnlen.s Fix strnlen(). 2021-12-25 09:11:58 +01:00
stroserr.s add underscores to _poserror and _stroserror 2022-08-29 21:06:48 +02:00
strpbrk.s Fixed strpbrk(). 2018-05-29 14:29:50 -04:00
strqtok.c Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
strrchr.s remove dangling spaces 2022-04-17 16:06:22 +02:00
strspn.s Little strdup optimisation 2024-01-07 14:25:06 +01:00
strstr.s Added "popptr1" which is of common use to save some bytes. 2018-05-20 15:30:18 +02:00
strtoimax.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
strtok.c Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
strtol.c Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
strtoul.c Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
strtoumax.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
strupper.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
strxfrm.c Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
system.c Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
tgi_colors.s Moved most of the tgi_colors.s files into the libsrc/common/ directory. 2018-03-27 07:28:46 -04:00
time.s Optimize for size. 2018-08-19 14:35:30 +02:00
timezone.c
toascii.s Replaced three (logically) identical files with a single file. 2017-10-23 18:35:06 +02:00
tolower.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
toupper.s Shortened names and adjusted style. 2020-04-02 22:58:16 +02:00
uname.s remove extra spaces 2022-08-28 22:37:33 +02:00
ungetc.s add a return -1 helper 2024-01-24 09:58:09 +01:00
unlink.s
utscopy.s
vfprintf.s Added explicit settings of calling conventions in pointer-to-function declarations in system and library headers. 2015-06-22 00:15:48 -04:00
vfscanf.s Changed multi-line C comments into another style. 2014-06-30 16:51:07 -04:00
vprintf.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
vscanf.s Removed (pretty inconsistently used) tab chars from source code base. 2013-05-09 13:57:12 +02:00
vsnprintf.s remove extra spaces 2022-08-28 22:37:33 +02:00
vsprintf.s remove dangling spaces 2022-04-17 16:06:22 +02:00
vsscanf.s Changed literal zeroes of the style "#>0" into the style "#>$0000". 2014-09-10 19:15:07 -04:00
zerobss.s Changed run location of INIT segment. 2015-10-14 22:52:09 +02:00