Commit graph

25 commits

Author SHA1 Message Date
mykola2312
17bbc4af49 implement SuperH4 support, building with custom stdlib (libc) 2022-06-07 10:23:57 +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
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
3cca1f83ce implement _cu_memmove in ARMv7, fix CMake that it will generate all code in ARM or Thumb modes 2022-05-21 07:00:00 +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
cbe497ca4d implement hw_bswap16 and hw_bswap23 in ARMv7 2022-05-21 03:51:37 +03:00
mykola2312
1da681acea implement ARMv7 different architecture profiles, for M profile Cortex-M4 - ARMv7E-M. TODO: Fix profile conflicts with cutil and test targets 2022-05-21 02:58:08 +03:00
mykola2312
bc74c09dac implement cu_va_start and cu_va_arg in AArch64 2022-05-19 03:26:54 +03:00
mykola2312
c6be4302a7 implement cu_memtest in AArch64 2022-05-19 02:19:22 +03:00
mykola2312
dea3141a34 implement cu_memzero in AArch64 2022-05-19 02:03:49 +03:00
mykola2312
ea5ab7aa5d implement _cu_memset in AArch64 2022-05-19 01:59:11 +03:00
mykola2312
66ecb9d7e4 implement _cu_memcmp in AArch64 2022-05-19 01:31:33 +03:00
mykola2312
219bfa538d implement _cu_memmove in AArch64 2022-05-19 01:04:20 +03:00
mykola2312
a80088be55 implement _cu_memcpy in AArch64 2022-05-19 00:53:44 +03:00
mykola2312
9a9c972e24 implement hw_bswap32 and hw_bswap64 for AArch64 via rev instruction 2022-05-18 22:58:29 +03:00
mykola2312
3f84f3e163 implement AArch64 in CMake, prepare for AArch64 2022-05-18 22:52:38 +03:00
mykola2312
371c4bb518 implement _cu_memcmp and cu_memcmp function-holder 2022-05-17 02:32:37 +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
eb6f5cb7c5 fix cu_memtest so it will byte-align test if size less than word 2022-05-11 19:56:20 +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
f2a1dddbca implement cu_memtest in x86-64 assembly in more efficient way that C does 2022-05-11 19:18:45 +03:00
mykola2312
0b610097b4 add achitecture-dependent assembly to build, implement hardware byte-swapping 2022-05-11 18:48:46 +03:00