Commit Graph

74 Commits

Author SHA1 Message Date
LinJiawei 22703d010e support printf float number 2021-01-12 21:33:49 +08:00
Zihao Yu f112d35650 klib,stdlib: implement a simple version of free()
* this helps to avoid out-of-memory in fceux, since fceux will repeatly
  call malloc()/free() when copying data to the audio buffer
2020-04-24 20:11:40 +08:00
Zihao Yu bbf856f3fd klib,int64: implement clzsi2() and ctzsi2()
* this is to support 64-bit divisions in fceux
2020-04-24 19:54:19 +08:00
Zihao Yu 6fd52a1242 Merge branch 'printf-int32' into 'master'
libs,klib,stdio: format 32-bit integer without 64-bit division

See merge request projectn/nexus-am!39
2020-04-15 23:16:40 +08:00
Zihao Yu ae27be8866 libs,klib,stdio: format 32-bit integer without 64-bit division 2020-04-15 23:15:01 +08:00
Legend Zhang 4d3fb8a14f Update string.c : fix bug in strcat when dst start with '\0' 2020-04-13 23:44:37 +08:00
Yanyan Jiang 51fc597119 klib: change assert() to _halt() to avoid link error without printf 2020-02-13 00:59:45 +08:00
Zihao Yu 6af2c43a92 libs,klib,int64: add __clzsi2/__ctzsi2 for riscv32 to link 2020-02-12 15:45:35 +08:00
Zihao Yu 23dacb751e libs,klib,klib-macros: fix RANGE 2020-02-10 12:57:49 +08:00
Zihao Yu b2cd0c447b libs,klib,macros: define bool/true/false for C files 2020-02-07 17:23:16 +08:00
Zihao Yu 2f890daa56 libs,klib: use printf instead of printk 2020-02-07 17:03:48 +08:00
Zihao Yu 095819199e use macros in klib-macros.h 2020-02-07 14:40:20 +08:00
Zihao Yu 63db97d758 libs,klib: collect useful arch-independent macros 2020-02-07 00:03:52 +08:00
Zihao Yu b5db2daab5 libs,klib,stdlib: enhance atoi()
* skip leading space and finish with non-digit character
2020-02-06 23:03:13 +08:00
Zihao Yu ae87feded1 libs,klib,string: remove unimplemented functions
* native may link to them and cause errors
2020-02-06 23:02:34 +08:00
Zihao Yu e31460931e libs,klib,stdio: add vsnprintf 2020-02-06 22:59:13 +08:00
Zihao Yu 2602da12ff libs,klib,stdio: rewrite printf 2020-02-06 22:51:01 +08:00
Zihao Yu 51c5a6125d convert text files to unix format and remove trailing whitespace 2020-02-05 22:19:56 +08:00
Yanyan Jiang a0a9f839e9 tools: add an export tool 2020-02-02 20:58:29 +08:00
Yanyan Jiang bcd3e2853f format refactors 2020-02-02 07:00:03 +00:00
Yanyan Jiang 41a0ff89b0 hot fix klib 64bit 2020-01-23 16:02:55 +00:00
Yanyan Jiang 9d5de5379e devices: minor refactor and add storage register 2020-01-21 04:09:33 +00:00
Zihao Yu 3030b03240 apps,fceux: port to klib 2019-12-05 11:59:12 +08:00
Zihao Yu 1e85b4390c apps,nesemu2: remove most libc calls and run on x86-nemu and mips32-nemu
* riscv32-nemu needs __clzsi2() and __ctzsi2() to run
* there is still a render bug for x86-nemu
2019-11-29 16:58:52 +08:00
Yanyan Jiang 4b414074a5 move intlib to src dir 2019-05-31 22:01:06 +08:00
Yanyan Jiang 33e5bf71c0 rename i64 to int64 2019-05-31 13:49:11 +00:00
Yanyan Jiang 87aefa2793 move int64 ops in compiler-rt to klib 2019-05-31 07:55:27 +00:00
Zihao Yu 1e1fe7c877 libs,klib,string: add 4-byte loop 2019-05-10 18:50:48 +08:00
Zihao Yu 61dd53862c klib,string: fix memcmp 2019-02-10 16:38:50 +08:00
Zihao Yu 4986a229ff klib,string: implement fast memcpy() and memset() by loop unrolling
* this will bring great speedup when running NOOP simulation
2019-02-10 16:35:20 +08:00
Yanyan Jiang 506b845f51 ioe: refactor IO apis 2019-01-31 05:32:57 +00:00
Yanyan Jiang 99a3253487 ioe,x86-qemu: better register decls 2019-01-30 12:47:30 +00:00
Zihao Yu 663da9c119 libs,klib,Makefile: forget to change file name 2018-10-06 16:50:39 +08:00
Zihao Yu b4cc3d2553 libs,klib: let native link to klib by defining __NATIVE_USE_KLIB__ 2018-10-05 16:13:25 +08:00
141242068-ouxianfei e14f564f4d Modified the implementation of memcpy to avoid unaligned rw 2018-07-02 16:04:27 +08:00
141242068-ouxianfei b6537fdc1d clang-format printk.c 2018-06-22 15:01:31 +08:00
Zihao Yu 46f8b371bd klib: rename gettimeofday to get_timeofday
* else native will get segmentation fault caused by linking gettimeofday
  from C library to the one in klib
2018-03-25 19:11:25 +08:00
Yanyan Jiang 65b64ea58c refactor ioe 2018-03-25 17:26:12 +08:00
Yanyan Jiang 1722e218ef large refactor of ioe 2018-03-25 16:56:23 +08:00
jyy f42da31b6b refactor amdev design 2018-03-25 11:46:54 +08:00
jyy 3308a9f340 fixes 2018-03-23 22:41:20 +08:00
jyy 823f072594 change am apis 2018-03-23 22:16:44 +08:00
yzh 00093b3867 klib: add rand() 2018-03-18 14:03:00 +08:00
Yanyan Jiang 64019f5042 Merge branch 'refactor-klib' into 'master'
Refactor klib

See merge request !147
2018-02-15 17:32:37 +08:00
rtt 6b06774072 修正sprintf中\0的bug 2017-09-07 08:45:46 -07:00
Yanyan Jiang 91aedb3d0b refactor klib 2017-08-23 07:29:30 -04:00
Yanyan Jiang 681ad400d2 refactor code 2017-08-23 07:14:23 -04:00
Yanyan Jiang 2c84761453 migrate native code to new ioe 2017-08-22 11:35:03 -04:00
Zihao Yu f303137685 libs,klib,string: remove assert
* assert will introduce printf in some cputest, increasing the
  complexity of the binary
2017-07-23 11:48:05 +08:00
rtt fa7ca39d52 给myputc增加参数使得snprintf中大于n的部分不得拷贝 2017-07-18 09:38:17 -07:00