diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2013-06-13 18:34:17 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2013-06-13 18:34:17 +0000 |
commit | ad24ad4c741cad0fe79d6e4a74edc58d592a0f90 (patch) | |
tree | ca614c5e0febb00059e1d5e98c3cf7a866928a2f /include/clang/Basic/Builtins.h | |
parent | 7b7db26d78509c0692d0000bbed1b0cf5e18ece8 (diff) | |
download | clang-ad24ad4c741cad0fe79d6e4a74edc58d592a0f90.tar.gz |
Allow clang to build __clear_cache on ARM.
__clear_cache is special. It needs no signature, but is a real function in
compiler_rt or libgcc.
Patch by Andrew Turner.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@183926 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/clang/Basic/Builtins.h')
-rw-r--r-- | include/clang/Basic/Builtins.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/include/clang/Basic/Builtins.h b/include/clang/Basic/Builtins.h index 77c0461f10..eb156519ae 100644 --- a/include/clang/Basic/Builtins.h +++ b/include/clang/Basic/Builtins.h @@ -130,6 +130,13 @@ public: return strchr(GetRecord(ID).Attributes, 'f') != 0; } + /// \brief Determines whether this builtin is a predefined compiler-rt/libgcc + /// function, such as "__clear_cache", where we know the signature a + /// priori. + bool isPredefinedRuntimeFunction(unsigned ID) const { + return strchr(GetRecord(ID).Attributes, 'i') != 0; + } + /// \brief Determines whether this builtin has custom typechecking. bool hasCustomTypechecking(unsigned ID) const { return strchr(GetRecord(ID).Attributes, 't') != 0; |