Lines Matching defs:simd16
838 struct simd16<bool>: base16<bool> { struct
839 …imdutf_really_inline simd16<bool> splat(bool _value) { return vmovq_n_u16(uint16_t(-(!!_value))); } in splat()
841 simdutf_really_inline simd16<bool>() : base16() {} in simd16() function
842 simdutf_really_inline simd16<bool>(const uint16x8_t _value) : base16<bool>(_value) {} in simd16() function
844 simdutf_really_inline simd16<bool>(bool _value) : base16<bool>(splat(_value)) {} in simd16() argument
874 struct simd16<int16_t> : base16_numeric<int16_t> { struct
875 simdutf_really_inline simd16() : base16_numeric<int16_t>() {} in simd16() function
877 simdutf_really_inline simd16(const uint16x8_t _value) : base16_numeric<int16_t>(_value) {} in simd16() function
879 …simdutf_really_inline simd16(const int16x8_t _value) : base16_numeric<int16_t>(vreinterpretq_u16_s… in simd16() argument
882 simdutf_really_inline simd16(int16_t _value) : simd16(splat(_value)) {} in simd16() argument
884 simdutf_really_inline simd16(const int16_t* values) : simd16(load(values)) {} in simd16() argument
885 …simdutf_really_inline simd16(const char16_t* values) : simd16(load(reinterpret_cast<const int16_t*… in simd16() function
887 simdutf_really_inline operator const uint16x8_t&() const { return this->value; } in operator const uint16x8_t&()
888 …mdutf_really_inline operator const int16x8_t() const { return vreinterpretq_s16_u16(this->value); } in operator const int16x8_t()
890 …tf_really_inline int16_t max_val() const { return vmaxvq_s16(vreinterpretq_s16_u16(this->value)); } in max_val()
891 …tf_really_inline int16_t min_val() const { return vminvq_s16(vreinterpretq_s16_u16(this->value)); } in min_val()
893 …const { return vmaxq_s16(vreinterpretq_s16_u16(this->value), vreinterpretq_s16_u16(other.value)); } in max_val()
894 …const { return vmaxq_s16(vreinterpretq_s16_u16(this->value), vreinterpretq_s16_u16(other.value)); } in min_val()
895 …const { return vcgtq_s16(vreinterpretq_s16_u16(this->value), vreinterpretq_s16_u16(other.value)); } in operator >()
896 …const { return vcltq_s16(vreinterpretq_s16_u16(this->value), vreinterpretq_s16_u16(other.value)); } in operator <()
904 struct simd16<uint16_t>: base16_numeric<uint16_t> { struct
905 simdutf_really_inline simd16() : base16_numeric<uint16_t>() {} in simd16() argument
906 simdutf_really_inline simd16(const uint16x8_t _value) : base16_numeric<uint16_t>(_value) {} in simd16() argument
909 simdutf_really_inline simd16(uint16_t _value) : simd16(splat(_value)) {} in simd16() function
911 simdutf_really_inline simd16(const uint16_t* values) : simd16(load(values)) {} in simd16() argument
912 …simdutf_really_inline simd16(const char16_t* values) : simd16(load(reinterpret_cast<const uint16_t… in simd16() function
915 simdutf_really_inline int16_t max_val() const { return vmaxvq_u16(*this); } in max_val()
916 simdutf_really_inline int16_t min_val() const { return vminvq_u16(*this); } in min_val()
918 …6<uint16_t> saturating_add(const simd16<uint16_t> other) const { return vqaddq_u16(*this, other); } in saturating_add()
919 …6<uint16_t> saturating_sub(const simd16<uint16_t> other) const { return vqsubq_u16(*this, other); } in saturating_sub()
922 …ne simd16<uint16_t> max_val(const simd16<uint16_t> other) const { return vmaxq_u16(*this, other); } in max_val()
923 …ne simd16<uint16_t> min_val(const simd16<uint16_t> other) const { return vminq_u16(*this, other); } in min_val()
925 …imd16<uint16_t> gt_bits(const simd16<uint16_t> other) const { return this->saturating_sub(other); } in gt_bits()
927 …imd16<uint16_t> lt_bits(const simd16<uint16_t> other) const { return other.saturating_sub(*this); } in lt_bits()
928 …ine simd16<bool> operator<=(const simd16<uint16_t> other) const { return vcleq_u16(*this, other); } in operator <=()
929 …ine simd16<bool> operator>=(const simd16<uint16_t> other) const { return vcgeq_u16(*this, other); } in operator >=()
930 …ine simd16<bool> operator>(const simd16<uint16_t> other) const { return vcgtq_u16(*this, other); } in operator >()
931 …line simd16<bool> operator<(const simd16<uint16_t> other) const { return vcltq_u16(*this, other); } in operator <()
934 simdutf_really_inline simd16<bool> bits_not_set() const { return *this == uint16_t(0); } in bits_not_set()
936 …dutf_really_inline simd16<uint16_t> shr() const { return simd16<uint16_t>(vshrq_n_u16(*this, N)); } in shr()
938 …dutf_really_inline simd16<uint16_t> shl() const { return simd16<uint16_t>(vshlq_n_u16(*this, N)); } in shl()
941 … simd16<uint16_t> operator|(const simd16<uint16_t> other) const { return vorrq_u16(*this, other); } in operator |()
942 … simd16<uint16_t> operator&(const simd16<uint16_t> other) const { return vandq_u16(*this, other); } in operator &()
943 … simd16<uint16_t> operator^(const simd16<uint16_t> other) const { return veorq_u16(*this, other); } in operator ^()
946 …simdutf_really_inline simd8<uint8_t> pack(const simd16<uint16_t>& v0, const simd16<uint16_t>& v1) { in pack()
951 simdutf_really_inline simd16<uint16_t> swap_bytes() const { in swap_bytes()
2080 struct simd16<bool>: base16<bool> { struct
2081 …_really_inline simd16<bool> splat(bool _value) { return _mm256_set1_epi16(uint16_t(-(!!_value))); } in splat()
2083 simdutf_really_inline simd16<bool>() : base16() {} in simd16() function
2084 simdutf_really_inline simd16<bool>(const __m256i _value) : base16<bool>(_value) {} in simd16() function
2086 simdutf_really_inline simd16<bool>(bool _value) : base16<bool>(splat(_value)) {} in simd16() argument
2088 simdutf_really_inline bitmask_type to_bitmask() const { return _mm256_movemask_epi8(*this); } in to_bitmask()
2089 simdutf_really_inline bool any() const { return !_mm256_testz_si256(*this, *this); } in any()
2090 simdutf_really_inline simd16<bool> operator~() const { return *this ^ true; } in operator ~()
2119 struct simd16<int16_t> : base16_numeric<int16_t> { struct
2120 simdutf_really_inline simd16() : base16_numeric<int16_t>() {} in simd16() function
2121 simdutf_really_inline simd16(const __m256i _value) : base16_numeric<int16_t>(_value) {} in simd16() function
2123 simdutf_really_inline simd16(int16_t _value) : simd16(splat(_value)) {} in simd16() argument
2125 simdutf_really_inline simd16(const int16_t* values) : simd16(load(values)) {} in simd16() function
2126 …simdutf_really_inline simd16(const char16_t* values) : simd16(load(reinterpret_cast<const int16_t*… in simd16() function
2128 …md16<int16_t> max_val(const simd16<int16_t> other) const { return _mm256_max_epi16(*this, other); } in max_val()
2129 …md16<int16_t> min_val(const simd16<int16_t> other) const { return _mm256_min_epi16(*this, other); } in min_val()
2130 …d16<bool> operator>(const simd16<int16_t> other) const { return _mm256_cmpgt_epi16(*this, other); } in operator >()
2131 …d16<bool> operator<(const simd16<int16_t> other) const { return _mm256_cmpgt_epi16(other, *this); } in operator <()
2136 struct simd16<uint16_t>: base16_numeric<uint16_t> { struct
2137 simdutf_really_inline simd16() : base16_numeric<uint16_t>() {} in simd16() function
2138 simdutf_really_inline simd16(const __m256i _value) : base16_numeric<uint16_t>(_value) {} in simd16() function
2141 simdutf_really_inline simd16(uint16_t _value) : simd16(splat(_value)) {} in simd16() function
2143 simdutf_really_inline simd16(const uint16_t* values) : simd16(load(values)) {} in simd16() function
2144 …simdutf_really_inline simd16(const char16_t* values) : simd16(load(reinterpret_cast<const uint16_t… in simd16() argument
2147 …6_t> saturating_add(const simd16<uint16_t> other) const { return _mm256_adds_epu16(*this, other); } in saturating_add()
2148 …6_t> saturating_sub(const simd16<uint16_t> other) const { return _mm256_subs_epu16(*this, other); } in saturating_sub()
2151 …16<uint16_t> max_val(const simd16<uint16_t> other) const { return _mm256_max_epu16(*this, other); } in max_val()
2152 …16<uint16_t> min_val(const simd16<uint16_t> other) const { return _mm256_min_epu16(*this, other); } in min_val()
2154 …imd16<uint16_t> gt_bits(const simd16<uint16_t> other) const { return this->saturating_sub(other); } in gt_bits()
2156 …imd16<uint16_t> lt_bits(const simd16<uint16_t> other) const { return other.saturating_sub(*this); } in lt_bits()
2157 …md16<bool> operator<=(const simd16<uint16_t> other) const { return other.max_val(*this) == other; } in operator <=()
2158 …md16<bool> operator>=(const simd16<uint16_t> other) const { return other.min_val(*this) == other; } in operator >=()
2159 …bool> operator>(const simd16<uint16_t> other) const { return this->gt_bits(other).any_bits_set(); } in operator >()
2160 …bool> operator<(const simd16<uint16_t> other) const { return this->gt_bits(other).any_bits_set(); } in operator <()
2163 simdutf_really_inline simd16<bool> bits_not_set() const { return *this == uint16_t(0); } in bits_not_set()
2164 …ne simd16<bool> bits_not_set(simd16<uint16_t> bits) const { return (*this & bits).bits_not_set(); } in bits_not_set()
2165 simdutf_really_inline simd16<bool> any_bits_set() const { return ~this->bits_not_set(); } in any_bits_set()
2166 …inline simd16<bool> any_bits_set(simd16<uint16_t> bits) const { return ~this->bits_not_set(bits); } in any_bits_set()
2168 …mdutf_really_inline bool bits_not_set_anywhere() const { return _mm256_testz_si256(*this, *this); } in bits_not_set_anywhere()
2169 simdutf_really_inline bool any_bits_set_anywhere() const { return !bits_not_set_anywhere(); } in any_bits_set_anywhere()
2170 …bool bits_not_set_anywhere(simd16<uint16_t> bits) const { return _mm256_testz_si256(*this, bits); } in bits_not_set_anywhere()
2171 …ne bool any_bits_set_anywhere(simd16<uint16_t> bits) const { return !bits_not_set_anywhere(bits); } in any_bits_set_anywhere()
2173 …eally_inline simd16<uint16_t> shr() const { return simd16<uint16_t>(_mm256_srli_epi16(*this, N)); } in shr()
2175 …eally_inline simd16<uint16_t> shl() const { return simd16<uint16_t>(_mm256_slli_epi16(*this, N)); } in shl()
2179 …_really_inline int get_bit() const { return _mm256_movemask_epi8(_mm256_slli_epi16(*this, 15-N)); } in get_bit()
2182 simdutf_really_inline simd16<uint16_t> swap_bytes() const { in swap_bytes()
2189 …simdutf_really_inline simd8<uint8_t> pack(const simd16<uint16_t>& v0, const simd16<uint16_t>& v1) { in pack()
3017 struct simd16<bool>: base16<bool> { struct
3018 …utf_really_inline simd16<bool> splat(bool _value) { return _mm_set1_epi16(uint16_t(-(!!_value))); } in splat()
3020 simdutf_really_inline simd16<bool>() : base16() {} in simd16() function
3021 simdutf_really_inline simd16<bool>(const __m128i _value) : base16<bool>(_value) {} in simd16() argument
3023 simdutf_really_inline simd16<bool>(bool _value) : base16<bool>(splat(_value)) {} in simd16() function
3025 simdutf_really_inline int to_bitmask() const { return _mm_movemask_epi8(*this); } in to_bitmask()
3026 simdutf_really_inline bool any() const { return !_mm_testz_si128(*this, *this); } in any()
3027 simdutf_really_inline simd16<bool> operator~() const { return *this ^ true; } in operator ~()
3056 struct simd16<int16_t> : base16_numeric<int16_t> { struct
3057 simdutf_really_inline simd16() : base16_numeric<int16_t>() {} in simd16() function
3058 simdutf_really_inline simd16(const __m128i _value) : base16_numeric<int16_t>(_value) {} in simd16() argument
3060 simdutf_really_inline simd16(int16_t _value) : simd16(splat(_value)) {} in simd16() function
3062 simdutf_really_inline simd16(const int16_t* values) : simd16(load(values)) {} in simd16() argument
3063 …simdutf_really_inline simd16(const char16_t* values) : simd16(load(reinterpret_cast<const int16_t*… in simd16() argument
3065 simdutf_really_inline simd16( in simd16() function
3071 … simd16<int16_t> max_val(const simd16<int16_t> other) const { return _mm_max_epi16(*this, other); } in max_val()
3072 … simd16<int16_t> min_val(const simd16<int16_t> other) const { return _mm_min_epi16(*this, other); } in min_val()
3073 …simd16<bool> operator>(const simd16<int16_t> other) const { return _mm_cmpgt_epi16(*this, other); } in operator >()
3074 …simd16<bool> operator<(const simd16<int16_t> other) const { return _mm_cmpgt_epi16(other, *this); } in operator <()
3079 struct simd16<uint16_t>: base16_numeric<uint16_t> { struct
3080 simdutf_really_inline simd16() : base16_numeric<uint16_t>() {} in simd16() function
3081 simdutf_really_inline simd16(const __m128i _value) : base16_numeric<uint16_t>(_value) {} in simd16() argument
3084 simdutf_really_inline simd16(uint16_t _value) : simd16(splat(_value)) {} in simd16() argument
3086 simdutf_really_inline simd16(const uint16_t* values) : simd16(load(values)) {} in simd16() function
3087 …simdutf_really_inline simd16(const char16_t* values) : simd16(load(reinterpret_cast<const uint16_t… in simd16() function
3089 simdutf_really_inline simd16( in simd16() argument
3093 simdutf_really_inline static simd16<uint16_t> repeat_16( in repeat_16()
3100 …nt16_t> saturating_add(const simd16<uint16_t> other) const { return _mm_adds_epu16(*this, other); } in saturating_add()
3101 …nt16_t> saturating_sub(const simd16<uint16_t> other) const { return _mm_subs_epu16(*this, other); } in saturating_sub()
3104 …imd16<uint16_t> max_val(const simd16<uint16_t> other) const { return _mm_max_epu16(*this, other); } in max_val()
3105 …imd16<uint16_t> min_val(const simd16<uint16_t> other) const { return _mm_min_epu16(*this, other); } in min_val()
3107 …imd16<uint16_t> gt_bits(const simd16<uint16_t> other) const { return this->saturating_sub(other); } in gt_bits()
3109 …imd16<uint16_t> lt_bits(const simd16<uint16_t> other) const { return other.saturating_sub(*this); } in lt_bits()
3110 …md16<bool> operator<=(const simd16<uint16_t> other) const { return other.max_val(*this) == other; } in operator <=()
3111 …md16<bool> operator>=(const simd16<uint16_t> other) const { return other.min_val(*this) == other; } in operator >=()
3112 …bool> operator>(const simd16<uint16_t> other) const { return this->gt_bits(other).any_bits_set(); } in operator >()
3113 …bool> operator<(const simd16<uint16_t> other) const { return this->gt_bits(other).any_bits_set(); } in operator <()
3116 simdutf_really_inline simd16<bool> bits_not_set() const { return *this == uint16_t(0); } in bits_not_set()
3117 …ne simd16<bool> bits_not_set(simd16<uint16_t> bits) const { return (*this & bits).bits_not_set(); } in bits_not_set()
3118 simdutf_really_inline simd16<bool> any_bits_set() const { return ~this->bits_not_set(); } in any_bits_set()
3119 …inline simd16<bool> any_bits_set(simd16<uint16_t> bits) const { return ~this->bits_not_set(bits); } in any_bits_set()
3121 simdutf_really_inline bool bits_not_set_anywhere() const { return _mm_testz_si128(*this, *this); } in bits_not_set_anywhere()
3122 simdutf_really_inline bool any_bits_set_anywhere() const { return !bits_not_set_anywhere(); } in any_bits_set_anywhere()
3123 …ne bool bits_not_set_anywhere(simd16<uint16_t> bits) const { return _mm_testz_si128(*this, bits); } in bits_not_set_anywhere()
3124 …ne bool any_bits_set_anywhere(simd16<uint16_t> bits) const { return !bits_not_set_anywhere(bits); } in any_bits_set_anywhere()
3126 …f_really_inline simd16<uint16_t> shr() const { return simd16<uint16_t>(_mm_srli_epi16(*this, N)); } in shr()
3128 …f_really_inline simd16<uint16_t> shl() const { return simd16<uint16_t>(_mm_slli_epi16(*this, N)); } in shl()
3132 …simdutf_really_inline int get_bit() const { return _mm_movemask_epi8(_mm_slli_epi16(*this, 7-N)); } in get_bit()
3135 simdutf_really_inline simd16<uint16_t> swap_bytes() const { in swap_bytes()
3141 …simdutf_really_inline simd8<uint8_t> pack(const simd16<uint16_t>& v0, const simd16<uint16_t>& v1) { in pack()