[cfe-dev] error message for unsupported intrinsic?

Bob Wilson bob.wilson at apple.com
Thu Dec 16 10:16:52 PST 2010


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
      %llvm.arm.neon.vcvtfp2hf

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.



More information about the cfe-dev mailing list