Implement a few missing things using SSE or NEON intrinsics.
- Dominant language
- C++
- Stars
- 5.8k
- Forks
- 471
- Avg merge
- 1d 6h
- Merged PRs (30d)
- 81
Description
I have the following code:
```
int32_t MulInt(int32_t out, int32_t a, int32_t b) {
return static_cast((static_cast(a[i]) * static_cast(b[i])) >> 16);
}
```
I tried to implement it through Highway alone, but it doesn't work. Highway currently doesn't support multiplication of int32_t to produce int64_t efficiently. Many architectures will multiply two int32_t to produce int64_t without explicit casting, and I want to take advantage of that.
I already have implementations for SSE and NEON, but I want to make them available to Highway. I want to have Highway function
V MulInt(V v2, V v2) for Vec128 for SSE and NEON. Is there any official guide on how to supplement Highway with custom build functions?
Contributor guide
Assessment
This issue has not been assessed yet.