summaryrefslogtreecommitdiff
path: root/rgo/src/memeq.c
diff options
context:
space:
mode:
Diffstat (limited to 'rgo/src/memeq.c')
-rw-r--r--rgo/src/memeq.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/rgo/src/memeq.c b/rgo/src/memeq.c
index 03ae2c2..d2d51a2 100644
--- a/rgo/src/memeq.c
+++ b/rgo/src/memeq.c
@@ -6,6 +6,10 @@
#include <rgo-priv.h>
+#include <stdbool.h>
+#include <stddef.h>
+#include <stdint.h>
+
#if defined(rgo_priv_fastimpl)
__asm__ (
".global rgo_memeq\n"
@@ -13,7 +17,7 @@ __asm__ (
"rgo_memeq:\n"
/*
void const * lptr
- sus_typ_usz num
+ size_t num
void const * rptr
*/
#if defined(sus_arch_amd64)
@@ -96,11 +100,11 @@ __asm__ (
#endif
);
#else
-sus_typ_u8 rgo_memeq(void const * const sus_restr _lptr,sus_typ_usz const _num,void const * const sus_restr _rptr) {
- sus_typ_u8 const * lpos = (sus_typ_u8 const *)_lptr;
- sus_typ_u8 const * sus_restr rpos = (sus_typ_u8 const *)_rptr;
- sus_typ_u8 const * const afterbuf = lpos + _num;
- for (;lpos != afterbuf;++lpos,++rpos) {sus_likely (*lpos != *rpos) {return sus_typlit_u8(0x0);}}
- return sus_typlit_u8(0x1);
+bool rgo_memeq(void const * const _lptr,size_t const _num,void const * const _rptr) {
+ uint_least8_t const * lpos = (uint_least8_t const *)_lptr;
+ uint_least8_t const * rpos = (uint_least8_t const *)_rptr;
+ uint_least8_t const * const afterbuf = lpos + _num;
+ for (;lpos != afterbuf;++lpos,++rpos) {sus_likely (*lpos != *rpos) {return false;}}
+ return true;
}
#endif