nlib
SimdAlgorithm.h ファイル

SIMD命令を使って文字列やバイト列を扱う関数テンプレートが定義されています。 [詳解]

[ソースコード]

名前空間

 nn::nlib
 共通して使われる機能やプラットフォームへの依存度が高い機能が実装されます。 nlib Platform APIs も御覧ください。nlib_nsはエイリアスです。
 
 nn::nlib::simd
 整数、単精度浮動小数点数のSIMD演算を行うためのクラスや関数が実装されています。
 

関数

template<size_t NumElem>
void nn::nlib::simd::MergeSortUint32A16 (uint32_t *data)
 SIMDを利用して32bit符号なし整数の並びをマージソートします。 [詳解]
 
template<class PRED >
const void * nn::nlib::simd::nlib_memchr_pred (const void *s, PRED pred, size_t n)
 バイト列内のバイトの検査をSIMD命令を使って行うための関数テンプレートです。 [詳解]
 
template<class PRED >
const void * nn::nlib::simd::nlib_memchr_pred_not (const void *s, PRED pred, size_t n)
 バイト列内のバイトの検査をSIMD命令を使って行うための関数テンプレートです。 [詳解]
 
i128 nn::nlib::simd::IsAlpha (i128 c) noexcept
 c 内のアルファベットをマスクします。
 
i128 nn::nlib::simd::IsDigit (i128 c) noexcept
 c 内の'0'-'9'の文字をマスクします。
 
i128 nn::nlib::simd::IsAlnum (i128 c) noexcept
 c 内のアルファベットか'0'-'9'の文字をマスクします。
 
i128 nn::nlib::simd::IsSpace (i128 c) noexcept
 c 内の空白文字(0x20, 0x09, 0x0A, 0x0D)をマスクします。
 
i128 nn::nlib::simd::IsXdigit (i128 c) noexcept
 c 内の16進数の文字をマスクします。
 

詳解

SIMD命令を使って文字列やバイト列を扱う関数テンプレートが定義されています。

SimdAlgorithm.h に定義があります。