CodeGen: add support for MSBuiltin aliases
authorSaleem Abdulrasool <compnerd@compnerd.org>
Fri, 4 Jul 2014 21:49:39 +0000 (21:49 +0000)
committerSaleem Abdulrasool <compnerd@compnerd.org>
Fri, 4 Jul 2014 21:49:39 +0000 (21:49 +0000)
commit96bfda8dbcdd426edea402bb4b539bba5392322b
tree3446b29948429aa37abb2bbbd4ae789468e38b59
parentbc372a3d6e3d72e074052916dde2699a15e49f62
CodeGen: add support for MSBuiltin aliases

This completes the infrastructure for the new MSBuiltin aliases in the
instruction definitions.  These behave similar to the GCCBuiltin in that they
can be implicitly constructed without special handling unless needed.

With this change it is possible to annotate an LLVM intrinsic in the backend
instruction definitions and indicate it as a builtin in the Builtin*.def files
in clang via LANGBUILTIN.  That will automatically pass through the instruction
much as a GCCBuiltin.

Note that there is no need for the special handling for ensuring that the
compatibility flag is enabled since the filtering on the LANGBUILTIN will
automatically prevent the intrinsic from bleeding into non-MS compatible
compiler invocations.

llvm-svn: 212359
clang/lib/CodeGen/CGBuiltin.cpp