9 # error This is a userspace-only header, not allowed by the current build.
12 #include <sifteo/abi.h>
25 inline void memset8(uint8_t *dest, uint8_t value,
unsigned count) {
26 _SYS_memset8(dest, value, count);
30 inline void memset16(uint16_t *dest, uint16_t value,
unsigned count) {
31 _SYS_memset16(dest, value, count);
35 inline void memset32(uint32_t *dest, uint32_t value,
unsigned count) {
36 _SYS_memset32(dest, value, count);
40 inline void memcpy8(uint8_t *dest,
const uint8_t *src,
unsigned count) {
41 _SYS_memcpy8(dest, src, count);
45 inline void memcpy16(uint16_t *dest,
const uint16_t *src,
unsigned count) {
46 _SYS_memcpy16(dest, src, count);
50 inline void memcpy32(uint32_t *dest,
const uint32_t *src,
unsigned count) {
51 _SYS_memcpy32(dest, src, count);
55 inline int memcmp8(
const uint8_t *a,
const uint8_t *b,
unsigned count) {
56 return _SYS_memcmp8(a, b, count);
60 inline void memset(uint8_t *dest, uint8_t value,
unsigned count) {
61 _SYS_memset8(dest, value, count);
65 inline void memset(uint16_t *dest, uint16_t value,
unsigned count) {
66 _SYS_memset16(dest, value, count);
70 inline void memset(uint32_t *dest, uint32_t value,
unsigned count) {
71 _SYS_memset32(dest, value, count);
75 inline void memcpy(uint8_t *dest,
const uint8_t *src,
unsigned count) {
76 _SYS_memcpy8(dest, src, count);
80 inline void memcpy(uint16_t *dest,
const uint16_t *src,
unsigned count) {
81 _SYS_memcpy16(dest, src, count);
85 inline void memcpy(uint32_t *dest,
const uint32_t *src,
unsigned count) {
86 _SYS_memcpy32(dest, src, count);
90 inline int memcmp(
const uint8_t *a,
const uint8_t *b,
unsigned count) {
91 return _SYS_memcmp8(a, b, count);
95 inline void bzero(
void *s,
unsigned count) {
96 _SYS_memset8((uint8_t*)s, 0, count);
100 template <
typename T>
102 _SYS_memset8((uint8_t*)&s, 0,
sizeof s);
142 inline uint32_t
crc32(
const void *bytes,
unsigned count) {
143 return _SYS_crc32((
const uint8_t*)bytes, count);
147 template <
typename T>
149 return _SYS_crc32((
const uint8_t*)&s,
sizeof s);