get rid of llvm_intrinsics.zig
travisstaloch opened this issue · comments
travisstaloch commented
convert all of the hacks found here and here to zig builtin calls. this will hopefully make it possible to build on mac and other platforms and close #1.
- try to use existing zig intrinsics if possible
- work toward implementing them in the zig compiler
- saturating arithmetic - ziglang/zig#9619
- carrylessMu()l (llvm.x86.pclmulqdq)
- shuffleEpi8() (llvm.x86.avx2.pshuf.b)
- shuffleEpi32() (llvm.x86.ssse3.pshuf.b.128)
- vpalignr() (llvm.x86.vpalignr)
- _mm256_movemask_epi8() (llvm.x86.avx2.pmovmskb)
- _mm_maddubs_epi16() (llvm.x86.ssse3.pmadd.ub.sw.128)
- _mm_madd_epi16() (llvm.x86.sse2.pmadd.wd)
- _mm_packus_epi32() (llvm.x86.sse41.packusdw)
- _prevN()
- converted to
@shuffle
instruction in aarch64 branch
- converted to