cessen / str_indices

Count and convert between various ways of indexing utf8 string slices.
Apache License 2.0
16 stars 5 forks source link

Question about SSE intrinsics #18

Open CeleritasCelery opened 1 year ago

CeleritasCelery commented 1 year ago

I was looking at a way to simplify the CRLF routine. I know how to do it in neon, but can't seem to figure it out in SSE. Essentially I need something like vextq_u8 that allows you shuffle elements between vectors so that I can take the bottom 8-bits of one vector and shift it into the top of another. I was going to use the shuffle commands but they only operate on 16 bit values. There doesn't even seem to be a good get/set method. A basic 8-bit set isn't even available till SEE4.1.

Perhaps you can direct me on how best to solve this with SEE1.

cessen commented 1 year ago

Sorry for the delayed response on this!

I don't know of a way to do this off the top of my head. And indeed, x86/64 SIMD instructions are often limited in odd, arbitrary ways. So it may simply not be possible. Not sure, though.