MCPcopy Create free account
hub / github.com/ashvardanian/StringZilla / sz_rfind_byte

Function sz_rfind_byte

include/stringzilla/find.h:2037–2051  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2035}
2036
2037SZ_DYNAMIC sz_cptr_t sz_rfind_byte(sz_cptr_t haystack, sz_size_t h_length, sz_cptr_t needle) {
2038#if SZ_USE_SKYLAKE
2039 return sz_rfind_byte_skylake(haystack, h_length, needle);
2040#elif SZ_USE_HASWELL
2041 return sz_rfind_byte_haswell(haystack, h_length, needle);
2042#elif SZ_USE_WESTMERE
2043 return sz_rfind_byte_westmere(haystack, h_length, needle);
2044#elif SZ_USE_SVE // ? actually faster than NEON on most machines
2045 return sz_rfind_byte_sve(haystack, h_length, needle);
2046#elif SZ_USE_NEON
2047 return sz_rfind_byte_neon(haystack, h_length, needle);
2048#else
2049 return sz_rfind_byte_serial(haystack, h_length, needle);
2050#endif
2051}
2052
2053SZ_DYNAMIC sz_cptr_t sz_find(sz_cptr_t haystack, sz_size_t h_length, sz_cptr_t needle, sz_size_t n_length) {
2054#if SZ_USE_SKYLAKE

Callers 1

rfindMethod · 0.70

Calls 6

sz_rfind_byte_skylakeFunction · 0.85
sz_rfind_byte_haswellFunction · 0.85
sz_rfind_byte_westmereFunction · 0.85
sz_rfind_byte_sveFunction · 0.85
sz_rfind_byte_neonFunction · 0.85
sz_rfind_byte_serialFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…