mykola2312
|
dae46bb74d
|
remaster & refactor dynamic memory allocator - heap
|
2022-05-24 21:51:01 +03:00 |
|
mykola2312
|
df1f6df916
|
TODO: rewrite dynamic memory allocator (heap), found critical issues
|
2022-05-21 16:32:11 +03:00 |
|
mykola2312
|
003e51b692
|
implement va_list for ARMv7 - cu_va_start and cu_va_arg works now based on frame-pointer (r11) for variable arguments, indexed differently than x86 stack ABI does
|
2022-05-21 10:38:35 +03:00 |
|
mykola2312
|
5448323450
|
make heap working on 32 bit ARMv7
|
2022-05-21 09:15:47 +03:00 |
|
mykola2312
|
089366af77
|
implement _cu_memset, cu_memzero & cu_memtest in ARMv7, dynamic struct working now
|
2022-05-21 08:49:49 +03:00 |
|
mykola2312
|
13b40a44d3
|
implement _cu_memcmp in ARMv7
|
2022-05-21 07:20:14 +03:00 |
|
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 |
|