@@ -17,9 +17,11 @@ namespace LIBC_NAMESPACE_DECL {
1717
1818namespace  string_length_internal  {
1919//  Return a bit-mask with the nth bit set if the nth-byte in block_ptr is zero.
20- template <typename  Vector, typename  Mask> Mask CompareAndMask (const  Vector *block_ptr);
20+ template  <typename  Vector, typename  Mask>
21+ Mask CompareAndMask (const  Vector *block_ptr);
2122
22- template  <typename  Vector, typename  Mask, decltype (CompareAndMask<Vector, Mask>)>
23+ template  <typename  Vector, typename  Mask,
24+           decltype (CompareAndMask<Vector, Mask>)>
2325size_t  string_length_vector (const  char  *src) {
2426  uintptr_t  misalign_bytes = reinterpret_cast <uintptr_t >(src) % sizeof (Vector);
2527
@@ -49,8 +51,8 @@ uint32_t CompareAndMask<__m128i, uint32_t>(const __m128i *block_ptr) {
4951
5052namespace  sse2  {
5153size_t  string_length (const  char  *src) {
52-   return  string_length_vector<__m128i, uint32_t , CompareAndMask<__m128i,  uint32_t >>( 
53-       src);
54+   return  string_length_vector<__m128i, uint32_t ,
55+                               CompareAndMask<__m128i,  uint32_t >>( src);
5456}
5557} //  namespace sse2
5658
@@ -64,32 +66,32 @@ uint32_t CompareAndMask<__m256i, uint32_t>(const __m256i *block_ptr) {
6466}
6567
6668namespace  avx2  {
67- size_t  string_length (const  char * src) {
68-   return  string_length_vector<__m256i, uint32_t , CompareAndMask<__m256i, uint32_t >>(src);
69+ size_t  string_length (const  char  *src) {
70+   return  string_length_vector<__m256i, uint32_t ,
71+                               CompareAndMask<__m256i, uint32_t >>(src);
6972}
7073} //  namespace avx2
7174#endif 
7275
7376#if  defined(__AVX512F__)
7477template  <>
75- __mmask64
76- CompareAndMask<__m512i, __mmask64> (const  __m512i *block_ptr)
77- {
78+ __mmask64 CompareAndMask<__m512i, __mmask64>(const  __m512i *block_ptr) {
7879  __m512i v = _mm512_load_si512 (block_ptr);
7980  __m512i z = _mm512_setzero_si512 ();
8081  return  _mm512_cmp_epu8_mask (z, v, _MM_CMPINT_EQ);
8182}
8283namespace  avx512  {
83- size_t  string_length (const  char * src) {
84-   return  string_length_vector<__m512i, __mmask64, CompareAndMask<__m512i, __mmask64>>(src);
84+ size_t  string_length (const  char  *src) {
85+   return  string_length_vector<__m512i, __mmask64,
86+                               CompareAndMask<__m512i, __mmask64>>(src);
8587}
8688} //  namespace avx512
8789#endif 
88- } //  string_length_internal
90+ } //  namespace  string_length_internal
8991
9092#if  defined(__AVX512F__)
9193namespace  string_length_impl  =  string_length_internal::avx512;
92- #elif  defined  (__AVX2__)
94+ #elif  defined(__AVX2__)
9395namespace  string_length_impl  =  string_length_internal::avx2;
9496#else 
9597namespace  string_length_impl  =  string_length_internal::sse2;
0 commit comments