Lines Matching defs:Float16
39 class Float16 {
41 Float16(uint16_t v) : val(v) {}
42 Float16() = default;
43 static bool isNan(const Float16& val) {
47 static bool isInfinity(const Float16& val) {
50 Float16(const Float16& other) { val = other.val; }
54 static Float16 max() { return Float16(0x7bff); }
56 static Float16 lowest() { return Float16(0xfbff); }
114 struct FloatProxyTraits<Float16> {
116 static bool isNan(Float16 f) { return Float16::isNan(f); }
118 static bool isInfinity(Float16 f) { return Float16::isInfinity(f); }
120 static Float16 max() { return Float16::max(); }
122 static Float16 lowest() { return Float16::lowest(); }
124 static Float16 getAsFloat(const uint_type& t) { return Float16(t); }
126 static uint_type getBitsFromFloat(const Float16& t) { return t.get_value(); }
265 struct HexFloatTraits<FloatProxy<Float16>> {
865 // Specialization of ParseNormalFloat for FloatProxy<Float16> values.
867 // and then round it down to fit into a Float16 value.
879 ParseNormalFloat<FloatProxy<Float16>, HexFloatTraits<FloatProxy<Float16>>>(
881 HexFloat<FloatProxy<Float16>, HexFloatTraits<FloatProxy<Float16>>>& value) {
892 if (Float16::isInfinity(value.value().getAsFloat())) {
893 value.set_value(value.isNegative() ? Float16::lowest() : Float16::max());
1250 inline std::ostream& operator<<<Float16>(std::ostream& os,
1251 const FloatProxy<Float16>& value) {
1252 os << HexFloat<FloatProxy<Float16>>(value);