cosmopolitan/libc/str/internal.h
2022-11-08 12:55:28 -08:00

27 lines
847 B
C

#ifndef COSMOPOLITAN_LIBC_STR_INTERNAL_H_
#define COSMOPOLITAN_LIBC_STR_INTERNAL_H_
#ifndef __STRICT_ANSI__
#include "libc/str/str.h"
#if !(__ASSEMBLER__ + __LINKER__ + 0)
_Hide extern const uint32_t kSha256Tab[64];
nodebuginfo forceinline bool32 ismoar(wint_t c) {
return (c & 0300) == 0300;
}
nodebuginfo forceinline bool32 iscont(wint_t c) {
return (c & 0300) == 0200;
}
char *strstr_sse42(const char *, const char *) strlenesque _Hide;
char16_t *strstr16_sse42(const char16_t *, const char16_t *) strlenesque _Hide;
void *memmem_sse42(const void *, size_t, const void *,
size_t) strlenesque _Hide;
void sha256_x86(uint32_t[hasatleast 8], const uint8_t[hasatleast 64],
uint32_t) _Hide;
#endif /* !(__ASSEMBLER__ + __LINKER__ + 0) */
#endif /* !ANSI */
#endif /* COSMOPOLITAN_LIBC_STR_INTERNAL_H_ */