[cfe-dev] Intel intrinsics on clang-cl

Wang, Pengfei via cfe-dev cfe-dev at lists.llvm.org
Tue May 18 18:54:49 PDT 2021


Hi Markus,

So therefore if one wanted to use these intrinsics one would have to
define __RDRND__ on the commandline.

Defining __RDRND__ on command line is not preferred, you should use -mrdrnd.


I am now wondering if it would make sense to enable intrinsics such as

the above (ones that aren't dependent on /arch: ) by default when

compiling for an MSVC target?

I don't think it makes sense. We have many features that are not categorized under the /arch. Default enabling them is neither effective nor credible (we do require a mechanism like /arch to make sure these features are available on user's platform).


And besides, without looking at clangs headers it is currently

impossible to find out how to enable these intrinsics as it's

undocumented which defines one would have to set on the command line

to enable these.

You don't need to do so. I recommend to use option march instead. It represents a lot of such features like "rdrnd" that are supporting on the given architecture. E.g. sandybridge, haswell, skylake etc.

Thanks
Pengfei

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20210519/c2823b75/attachment-0001.html>


More information about the cfe-dev mailing list