Do we have some mechanism for reporting nice errors messages about processor-specific intrinsics that are not supported for the current target?
I'm trying to set up a comprehensive test for all the Neon intrinsics in Clang. I discovered that a few of them (vcvt_f32_f16 and vcvt_f16_f32) are only supported on ARM processors with the half-precision floating-point extension (e.g., Cortex-A9), so I added support for those operations in the ARM backend. But, when I re-ran the test, I left the -mcpu option set to "cortex-a8" and got this cryptic message:
fatal error: error in backend: Cannot yet select: intrinsic
It would be better to have an error message from the front-end when an unsupported builtin is used. The back-end can't give a very helpful error message because the internal LLVM intrinsic name is not necessarily meaningful to the user. I'm hoping there is already a mechanism in place for checking that.