summaryrefslogtreecommitdiff
path: root/clang/test/Preprocessor/feature_tests.cpp
AgeCommit message (Collapse)Author
2024-10-15[clang] Mark `__builtin_convertvector` and `__builtin_shufflevector` as ↵c8ef
`constexpr`. (#112129) Closes #107985. LanguageExtensions.rst states that `__builtin_shufflevector` and `__builtin_convertvector` can be evaluated as constants, but this is not reflected in Butiltins.td. This patch aligns these two.
2024-10-14Clang: Support minimumnum and maximumnum intrinsics (#96281)YunQiang Su
We just introduce llvm.minimumnum and llvm.maximumnum intrinsics support to llvm. Let's support them in Clang. See: #93033
2024-10-08[Clang] Improve type traits recognition in `__has_builtin` (#111516)cor3ntin
`__has_builtin` was relying on reversible identifiers and string matching to recognize builtin-type traits, leading to some newer type traits not being recognized. Fixes #111477
2023-05-19[Clang][clang-cl] Implement `__builtin_FUNCSIG`Jakub Mazurkiewicz
This patch implements __builtin_FUNCSIG intrinsic which returns the same string as __FUNCSIG__. Fixes https://github.com/llvm/llvm-project/issues/58951 Differential Revision: https://reviews.llvm.org/D150183
2023-03-17Add __builtin_FILE_NAME()Ilya Karapsin
Add '__builtin_FILE_NAME()', which expands to the filename because the full path is not always needed. It corresponds to the '__FILE_NAME__' predefined macro and is consistent with the other '__builin' functions added for predefined macros. Differential Revision: https://reviews.llvm.org/D144878
2022-10-21[Clang] Add __has_constexpr_builtin supportEvgeny Shulgin
The `__has_constexpr_builtin` macro can be used to check whether the builtin in constant-evaluated by Clang frontend. Reviewed By: aaron.ballman, shafik Differential Revision: https://reviews.llvm.org/D136036
2019-10-29Accept __is_same_as as a GCC-compatibility synonym for the proper trait name ↵Richard Smith
__is_same.
2019-08-14Add __has_builtin support for builtin function-like type traits.Richard Smith
Summary: Previously __has_builtin(__builtin_*) would return false for __builtin_*s that we modeled as keywords rather than as functions (because they take type arguments). With this patch, all builtins that are called with function-call-like syntax return true from __has_builtin (covering __builtin_* and also the __is_* and __has_* type traits and the handful of similar builtins without such a prefix). Update the documentation on __has_builtin and on type traits to match. While doing this I noticed the type trait documentation was out of date and incomplete; that's fixed here too. Reviewers: aaron.ballman Subscribers: jfb, kristina, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D66100 llvm-svn: 368785