Instead of passing -msse4.2 (which is really too coarse-grained in general), put __attribute__((target("sse4.2"))) on your intel_crc function.
We still need a good solution for this problem in Swift code, but for C code target attributes are really a better option anyway and don't require an unsafe flag.
It is possible, but the frontend isn't well set-up to deal with it yet, so it'll crash instead of issuing a diagnostic that you need to pass -msse4.2 (and passing that flag is a pain in Swift):
Needless to say, this is not a good option. What you have is good for now, and we should provide something like function attributes in Swift in the future.
Has there been any progress on this? I find the native SIMD value types very useful, but lacking some important operations and key functionality for high-performance real-world usage.
I am exploring the idea of creating a library that enables this behavior, expanding SIMD (see StackStrings), and offering more targeted bit manipulation. It would be very useful if there already was a way to use intrinsics in Swift natively today without doing a bunch of hoopla.