[clang] [clang][x86] Add constexpr support for BMI/TBM BEXTR intrinsics (PR #109577)

via cfe-commits cfe-commits at lists.llvm.org
Sun Sep 22 07:06:56 PDT 2024


github-actions[bot] wrote:

<!--LLVM CODE FORMAT COMMENT: {clang-format}-->


:warning: C/C++ code formatter, clang-format found issues in your code. :warning:

<details>
<summary>
You can test this locally with the following command:
</summary>

``````````bash
git-clang-format --diff 5b9206dbe42a149f44cc267508d439717912cb1d 250338c42d61cb6870015679453e726aa0342b9e --extensions h,cpp,c -- clang/lib/AST/ExprConstant.cpp clang/lib/Headers/bmiintrin.h clang/test/CodeGen/X86/bmi-builtins.c clang/test/CodeGen/X86/tbm-builtins.c
``````````

</details>

<details>
<summary>
View the diff from clang-format here.
</summary>

``````````diff
diff --git a/clang/lib/Headers/bmiintrin.h b/clang/lib/Headers/bmiintrin.h
index 03dbad700c..d5389ce4cc 100644
--- a/clang/lib/Headers/bmiintrin.h
+++ b/clang/lib/Headers/bmiintrin.h
@@ -230,8 +230,7 @@ __andn_u32(unsigned int __X, unsigned int __Y)
 ///    extracted bits.
 /// \see _bextr_u32
 static __inline__ unsigned int __DEFAULT_FN_ATTRS_CONSTEXPR
-__bextr_u32(unsigned int __X, unsigned int __Y)
-{
+__bextr_u32(unsigned int __X, unsigned int __Y) {
   return __builtin_ia32_bextr_u32(__X, __Y);
 }
 
@@ -255,8 +254,7 @@ __bextr_u32(unsigned int __X, unsigned int __Y)
 ///    extracted bits.
 /// \see __bextr_u32
 static __inline__ unsigned int __DEFAULT_FN_ATTRS_CONSTEXPR
-_bextr_u32(unsigned int __X, unsigned int __Y, unsigned int __Z)
-{
+_bextr_u32(unsigned int __X, unsigned int __Y, unsigned int __Z) {
   return __builtin_ia32_bextr_u32 (__X, ((__Y & 0xff) | ((__Z & 0xff) << 8)));
 }
 
@@ -451,8 +449,7 @@ __andn_u64 (unsigned long long __X, unsigned long long __Y)
 ///    extracted bits.
 /// \see _bextr_u64
 static __inline__ unsigned long long __DEFAULT_FN_ATTRS_CONSTEXPR
-__bextr_u64(unsigned long long __X, unsigned long long __Y)
-{
+__bextr_u64(unsigned long long __X, unsigned long long __Y) {
   return __builtin_ia32_bextr_u64(__X, __Y);
 }
 
@@ -476,8 +473,7 @@ __bextr_u64(unsigned long long __X, unsigned long long __Y)
 ///    extracted bits.
 /// \see __bextr_u64
 static __inline__ unsigned long long __DEFAULT_FN_ATTRS_CONSTEXPR
-_bextr_u64(unsigned long long __X, unsigned int __Y, unsigned int __Z)
-{
+_bextr_u64(unsigned long long __X, unsigned int __Y, unsigned int __Z) {
   return __builtin_ia32_bextr_u64 (__X, ((__Y & 0xff) | ((__Z & 0xff) << 8)));
 }
 

``````````

</details>


https://github.com/llvm/llvm-project/pull/109577


More information about the cfe-commits mailing list