[PATCH] D55677: [Builltins][X86] Provide implementations of __lzcnt16, __lzcnt, __lzcnt64 for MS compatibility. Remove declarations from intrin.h and implementations from lzcntintrin.h
Craig Topper via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Dec 13 14:49:40 PST 2018
craig.topper created this revision.
craig.topper added a reviewer: rnk.
intrin.h had forward declarations for these and lzcntintrin.h had implementations that were only available with -mlzcnt or a -march that supported the lzcnt feature. But the 32-bit version was misnamed in lzcntrin.h
This patch provides an independent implementation for MS that doesn't rely on the X86 feature flag.
Fixes PR40014
https://reviews.llvm.org/D55677
Files:
include/clang/Basic/Builtins.def
lib/CodeGen/CGBuiltin.cpp
lib/Headers/intrin.h
lib/Headers/lzcntintrin.h
test/CodeGen/lzcnt-builtins.c
test/CodeGen/ms-intrinsics-other.c
test/Headers/x86intrin-2.c
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D55677.178140.patch
Type: text/x-patch
Size: 8698 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20181213/d90d9bfa/attachment.bin>
More information about the cfe-commits
mailing list