Commit graph

35 commits

Author SHA1 Message Date
mykola2312
cae1f56d5e implement _cu_memcpy in ARMv7, fix assembly alignment and enable hardware endianness byte-swapping 2022-05-21 05:41:13 +03:00
mykola2312
c6be4302a7 implement cu_memtest in AArch64 2022-05-19 02:19:22 +03:00
mykola2312
a80088be55 implement _cu_memcpy in AArch64 2022-05-19 00:53:44 +03:00
mykola2312
40864beb12 make cutil use internal dynamic memory allocator if there is no stdlib that provides it 2022-05-18 06:40:35 +03:00
mykola2312
ebef59e3da implement heap_realloc 2022-05-18 06:32:22 +03:00
mykola2312
3f01b5abfd dynamic memory allocator - implement heap_alloc & heap_free, heap_join and heap_split 2022-05-18 05:59:23 +03:00
mykola2312
b80fe62700 write documentating commentary for cu_sprintf & cu_sscanf in string.h header. test - works fine 2022-05-17 05:10:51 +03:00
mykola2312
3591102cd5 fix cu_sprintf cu_va_arg starting index so it does parse right arguments 2022-05-17 04:53:55 +03:00
mykola2312
fa5aa1446c test cu_sprintf & cu_sscanf 2022-05-17 04:45:39 +03:00
mykola2312
8573d49455 test new _cu_memcmp and string functions 2022-05-17 02:41:27 +03:00
mykola2312
f744ec0f35 make cutil work without stdlib via CMake option NOSTDLIB=ON, using internal implementations 2022-05-17 01:57:18 +03:00
mykola2312
6864acb832 implement va_list - variable arguments 2022-05-15 23:13:42 +03:00
mykola2312
9eafc640fd fix _cu_memmove in assembly, now it's byte-by-byte moving 2022-05-15 22:23:48 +03:00
mykola2312
4dc9fe3a55 try assembly memmove, doesn't work because granularity of move 2022-05-15 21:19:38 +03:00
mykola2312
bdc6bd6b20 define and replace integer types independent from stdlib 2022-05-11 23:44:32 +03:00
mykola2312
6d2d8d0a0d implement _cu_memmove - memory moving without buffer 2022-05-11 20:44:24 +03:00
mykola2312
3229779aff implement x86-64 assembly-optimized functions _cu_memcpy, _cu_memset, cu_memzero 2022-05-11 19:51:24 +03:00
mykola2312
0b610097b4 add achitecture-dependent assembly to build, implement hardware byte-swapping 2022-05-11 18:48:46 +03:00
mykola2312
e59744e300 implement zero-terminated arrays, which are terminated by zeroed item (cu_memtest with item size) 2022-05-03 09:07:00 +03:00
mykola2312
0067951bdf implement cu_memtest for cheacking if memory is zeroed 2022-05-03 08:56:47 +03:00
mykola2312
3c0de35e2c test struct & value functionality, implement struct_size 2022-05-03 08:18:27 +03:00
mykola2312
1619e3234e fix value_offset 2022-05-03 07:59:34 +03:00
mykola2312
900341c5b7 struct & value 5 2022-05-03 07:55:36 +03:00
mykola2312
de923a2a0d struct 2 2022-05-03 03:29:55 +03:00
mykola2312
c3b659dce8 implement functions to convert from host byte-order to little-endian or big-endian, convert to network order which defined as CU_NETWORK_ORDER. 2022-04-29 08:07:37 +03:00
mykola2312
5432d8f889 redefine architecture list as macro so therefore it can be used in preprocessor expressions. implement hardware byte-swapping, detect compile-time hardware capabilties to do that. 2022-04-29 06:36:01 +03:00
mykola2312
50c17f33d9 implement endiannes run-time detection 2022-04-28 18:26:15 +03:00
mykola2312
deec226221 implement compile-time architecture detection, bus width detection 2022-04-28 17:34:07 +03:00
mykola2312
5b31769141 cutil_init, cutil_exit, cutil_arch 2022-04-20 16:22:10 +03:00
mykola2312
0820443a7d bitmap 2: bit_set, bit_get, bit_test, bit_sub2_up, bitmap, bitmap_set, bitmap_get 2022-04-20 15:50:29 +03:00
mykola2312
a3da87ad75 bitmap 1 2022-04-19 23:39:51 +03:00
mykola2312
ab3ae686bb array_insert, array_remove 2022-04-18 21:11:09 +03:00
mykola2312
bda7315a22 array 5 + tests 2022-04-17 21:31:08 +03:00
mykola2312
a2bfa2361d list_at 2022-04-16 16:44:10 +03:00
mykola2312
21132d5c2c initial commit 2022-04-16 16:22:31 +03:00