float16_t 227 src/Expr.h node->value = (double)((float16_t)value); float16_t 282 src/Expr.h EXPORT Expr(float16_t x) : IRHandle(Internal::FloatImm::make(Float(16), (double)x)) {} float16_t 29 src/Float16.cpp float16_t toFP16(llvm::APFloat v) { float16_t 32 src/Float16.cpp return float16_t::make_from_bits((uint16_t) bits); float16_t 35 src/Float16.cpp llvm::APFloat toLLVMAPF(float16_t v) { float16_t 138 src/Float16.cpp float16_t::float16_t(float value, RoundingMode roundingMode) { float16_t 139 src/Float16.cpp static_assert(sizeof(float16_t) == 2, "float16_t is wrong size"); float16_t 143 src/Float16.cpp float16_t::float16_t(double value, RoundingMode roundingMode) { float16_t 144 src/Float16.cpp static_assert(sizeof(float16_t) == 2, "float16_t is wrong size"); float16_t 148 src/Float16.cpp float16_t::float16_t(const char *stringRepr, RoundingMode roundingMode) { float16_t 149 src/Float16.cpp static_assert(sizeof(float16_t) == 2, "float16_t is wrong size"); float16_t 153 src/Float16.cpp float16_t::float16_t() { float16_t 154 src/Float16.cpp static_assert(sizeof(float16_t) == 2, "float16_t is wrong size"); float16_t 158 src/Float16.cpp float16_t float16_t::make_from_signed_int(int64_t value, RoundingMode roundingMode) { float16_t 159 src/Float16.cpp static_assert(sizeof(float16_t) == 2, "float16_t is wrong size"); float16_t 160 src/Float16.cpp float16_t val; float16_t 165 src/Float16.cpp float16_t float16_t::make_from_bits(uint16_t rawBits) { float16_t 166 src/Float16.cpp static_assert(sizeof(float16_t) == 2, "float16_t is wrong size"); float16_t 167 src/Float16.cpp float16_t val; float16_t 172 src/Float16.cpp float16_t::operator float() const { float16_t 186 src/Float16.cpp float16_t::operator double() const { float16_t 200 src/Float16.cpp float16_t float16_t::make_zero(bool positive) { float16_t 209 src/Float16.cpp float16_t float16_t::make_infinity(bool positive) { float16_t 218 src/Float16.cpp float16_t float16_t::make_nan() { float16_t 227 src/Float16.cpp float16_t float16_t::add(float16_t rhs, RoundingMode roundingMode) const { float16_t 235 src/Float16.cpp float16_t float16_t::subtract(float16_t rhs, RoundingMode roundingMode) const { float16_t 243 src/Float16.cpp float16_t float16_t::multiply(float16_t rhs, RoundingMode roundingMode) const { float16_t 251 src/Float16.cpp float16_t float16_t::divide(float16_t denominator, RoundingMode roundingMode) const { float16_t 259 src/Float16.cpp float16_t float16_t::remainder(float16_t denominator) const { float16_t 267 src/Float16.cpp float16_t float16_t::mod(float16_t denominator, RoundingMode roundingMode) const { float16_t 281 src/Float16.cpp float16_t float16_t::operator-() const { float16_t 287 src/Float16.cpp float16_t float16_t::operator+(float16_t rhs) const { float16_t 291 src/Float16.cpp float16_t float16_t::operator-(float16_t rhs) const { float16_t 295 src/Float16.cpp float16_t float16_t::operator*(float16_t rhs) const { float16_t 299 src/Float16.cpp float16_t float16_t::operator/(float16_t rhs) const { float16_t 303 src/Float16.cpp bool float16_t::operator==(float16_t rhs) const { float16_t 309 src/Float16.cpp std::string float16_t::to_hex_string() const { float16_t 326 src/Float16.cpp bool float16_t::operator>(float16_t rhs) const { float16_t 333 src/Float16.cpp bool float16_t::operator<(float16_t rhs) const { float16_t 340 src/Float16.cpp bool float16_t::are_unordered(float16_t rhs) const { float16_t 346 src/Float16.cpp std::string float16_t::to_decimal_string(unsigned int significantDigits) const { float16_t 353 src/Float16.cpp bool float16_t::is_nan() const { float16_t 358 src/Float16.cpp bool float16_t::is_infinity() const { float16_t 363 src/Float16.cpp bool float16_t::is_negative() const { float16_t 368 src/Float16.cpp bool float16_t::is_zero() const { float16_t 373 src/Float16.cpp uint16_t float16_t::to_bits() const { float16_t 33 src/Float16.h EXPORT explicit float16_t(float value, RoundingMode roundingMode=RoundingMode::ToNearestTiesToEven); float16_t 43 src/Float16.h EXPORT explicit float16_t(double value, RoundingMode roundingMode=RoundingMode::ToNearestTiesToEven); float16_t 55 src/Float16.h EXPORT explicit float16_t(const char *stringRepr, RoundingMode roundingMode=RoundingMode::ToNearestTiesToEven); float16_t 59 src/Float16.h EXPORT float16_t(); float16_t 70 src/Float16.h EXPORT float16_t(const float16_t&) = default; float16_t 73 src/Float16.h EXPORT float16_t& operator=(const float16_t&) = default; float16_t 83 src/Float16.h EXPORT static float16_t make_zero(bool positive); float16_t 89 src/Float16.h EXPORT static float16_t make_infinity(bool positive); float16_t 92 src/Float16.h EXPORT static float16_t make_nan(); float16_t 98 src/Float16.h EXPORT static float16_t make_from_bits(uint16_t bits); float16_t 103 src/Float16.h EXPORT static float16_t make_from_signed_int(int64_t value, RoundingMode roundingMode=RoundingMode::ToNearestTiesToEven); float16_t 115 src/Float16.h EXPORT float16_t add(float16_t rhs, RoundingMode roundingMode) const; float16_t 117 src/Float16.h EXPORT float16_t subtract(float16_t rhs, RoundingMode roundingMode) const; float16_t 119 src/Float16.h EXPORT float16_t multiply(float16_t rhs, RoundingMode roundingMode) const; float16_t 121 src/Float16.h EXPORT float16_t divide(float16_t denominator, RoundingMode roundingMode) const; float16_t 123 src/Float16.h EXPORT float16_t remainder(float16_t denominator) const; float16_t 125 src/Float16.h EXPORT float16_t mod(float16_t denominator, RoundingMode roudingMode) const; float16_t 130 src/Float16.h EXPORT float16_t operator-() const; float16_t 136 src/Float16.h EXPORT float16_t operator+(float16_t rhs) const; float16_t 137 src/Float16.h EXPORT float16_t operator-(float16_t rhs) const; float16_t 138 src/Float16.h EXPORT float16_t operator*(float16_t rhs) const; float16_t 139 src/Float16.h EXPORT float16_t operator/(float16_t rhs) const; float16_t 145 src/Float16.h EXPORT bool operator==(float16_t rhs) const; float16_t 147 src/Float16.h EXPORT bool operator!=(float16_t rhs) const { return !(*this == rhs); } float16_t 149 src/Float16.h EXPORT bool operator>(float16_t rhs) const; float16_t 151 src/Float16.h EXPORT bool operator<(float16_t rhs) const; float16_t 153 src/Float16.h EXPORT bool operator>=(float16_t rhs) const { return (*this > rhs) || (*this == rhs); } float16_t 155 src/Float16.h EXPORT bool operator<=(float16_t rhs) const { return (*this < rhs) || (*this == rhs); } float16_t 159 src/Float16.h EXPORT bool are_unordered(float16_t rhs) const; float16_t 204 src/Float16.h HALIDE_ALWAYS_INLINE halide_type_t halide_type_of<Halide::float16_t>() { float16_t 92 src/IROperator.h inline Expr make_const(Type t, float16_t val) {return make_const(t, (double)val);} float16_t 974 src/IROperator.h x = cast<float16_t>(x); float16_t 1161 src/IROperator.h y = cast<float16_t>(y); float16_t 85 src/LLVM_Runtime_Linker.cpp DECLARE_CPP_INITMOD(float16_t) float16_t 126 src/Type.cpp return (int64_t)(float)(float16_t)(float)x == x; float16_t 147 src/Type.cpp return (uint64_t)(float)(float16_t)(float)x == x; float16_t 170 src/Type.cpp return (double)(float16_t)x == x; float16_t 16 test/correctness/float16_t_comparison.cpp const float16_t one("1.0", RoundingMode::ToNearestTiesToEven); float16_t 17 test/correctness/float16_t_comparison.cpp const float16_t onePointTwoFive("1.25", RoundingMode::ToNearestTiesToEven); float16_t 36 test/correctness/float16_t_comparison.cpp const float16_t minusOne = -one; float16_t 41 test/correctness/float16_t_comparison.cpp const float16_t nanValue = float16_t::make_nan(); float16_t 48 test/correctness/float16_t_comparison.cpp h_assert(nanValue.are_unordered(float16_t::make_zero(/*positive=*/true)), float16_t 50 test/correctness/float16_t_comparison.cpp h_assert(nanValue.are_unordered(float16_t::make_zero(/*positive=*/false)), float16_t 52 test/correctness/float16_t_comparison.cpp h_assert(nanValue.are_unordered(float16_t::make_infinity(/*positive=*/true)), float16_t 54 test/correctness/float16_t_comparison.cpp h_assert(nanValue.are_unordered(float16_t::make_infinity(/*positive=*/false)), float16_t 58 test/correctness/float16_t_comparison.cpp const float16_t zeroP = float16_t::make_zero(/*positive=*/true); float16_t 59 test/correctness/float16_t_comparison.cpp const float16_t zeroN = float16_t::make_zero(/*positive=*/false); float16_t 64 test/correctness/float16_t_comparison.cpp const float16_t infinityP = float16_t::make_infinity(/*positive=*/true); float16_t 65 test/correctness/float16_t_comparison.cpp const float16_t infinityN = float16_t::make_infinity(/*positive=*/false); float16_t 22 test/correctness/float16_t_constants.cpp const float16_t zeroDefaultConstructor; float16_t 23 test/correctness/float16_t_constants.cpp const float16_t zeroP = float16_t::make_zero(/*positive=*/true); float16_t 24 test/correctness/float16_t_constants.cpp const float16_t zeroPStringConstructorDecimal("0.0", RoundingMode::ToNearestTiesToEven); float16_t 25 test/correctness/float16_t_constants.cpp const float16_t zeroPStringConstructorHex("0x0p0", RoundingMode::ToNearestTiesToEven); float16_t 26 test/correctness/float16_t_constants.cpp const float16_t zeroPFromFloat(0.0f, RoundingMode::ToNearestTiesToEven); float16_t 27 test/correctness/float16_t_constants.cpp const float16_t zeroPFromDouble(0.0,RoundingMode::ToNearestTiesToEven); float16_t 28 test/correctness/float16_t_constants.cpp const float16_t zeroPFromInt = float16_t::make_from_signed_int(0, RoundingMode::ToNearestTiesToEven); float16_t 55 test/correctness/float16_t_constants.cpp const float16_t zeroN = float16_t::make_zero(/*positive=*/false); float16_t 56 test/correctness/float16_t_constants.cpp const float16_t zeroNStringConstructorDecimal("-0.0", RoundingMode::ToNearestTiesToEven); float16_t 57 test/correctness/float16_t_constants.cpp const float16_t zeroNStringConstructorHex("-0x0p0", RoundingMode::ToNearestTiesToEven); float16_t 58 test/correctness/float16_t_constants.cpp const float16_t zeroNFromFloat(-0.0f, RoundingMode::ToNearestTiesToEven); float16_t 59 test/correctness/float16_t_constants.cpp const float16_t zeroNFromDouble(-0.0, RoundingMode::ToNearestTiesToEven); float16_t 84 test/correctness/float16_t_constants.cpp const float16_t infinityP = float16_t::make_infinity(/*positive=*/true); float16_t 85 test/correctness/float16_t_constants.cpp const float16_t infinityPFromFloat( (float) INFINITY, RoundingMode::ToNearestTiesToEven); float16_t 86 test/correctness/float16_t_constants.cpp const float16_t infinityPFromDouble( (double) INFINITY, RoundingMode::ToNearestTiesToEven); float16_t 113 test/correctness/float16_t_constants.cpp const float16_t infinityN = float16_t::make_infinity(/*positive=*/false); float16_t 114 test/correctness/float16_t_constants.cpp const float16_t infinityNFromFloat( (float) -INFINITY, RoundingMode::ToNearestTiesToEven); float16_t 115 test/correctness/float16_t_constants.cpp const float16_t infinityNFromDouble( (double) -INFINITY, RoundingMode::ToNearestTiesToEven); float16_t 142 test/correctness/float16_t_constants.cpp const float16_t nanValue = float16_t::make_nan(); float16_t 143 test/correctness/float16_t_constants.cpp const float16_t nanValueFromFloat(std::numeric_limits<float>::quiet_NaN(), RoundingMode::ToNearestTiesToEven); float16_t 144 test/correctness/float16_t_constants.cpp const float16_t nanValueFromDouble(std::numeric_limits<double>::quiet_NaN(), RoundingMode::ToNearestTiesToEven); float16_t 170 test/correctness/float16_t_constants.cpp const float16_t largestNorm("65504"); float16_t 171 test/correctness/float16_t_constants.cpp const float16_t largestNormFromInt = float16_t::make_from_signed_int(65504); float16_t 190 test/correctness/float16_t_constants.cpp const float16_t largestNorm("-65504"); float16_t 191 test/correctness/float16_t_constants.cpp const float16_t largestNormFromInt = float16_t::make_from_signed_int(-65504); float16_t 210 test/correctness/float16_t_constants.cpp const float16_t smallestSubNorm("0x0.004p-14"); float16_t 228 test/correctness/float16_t_constants.cpp const float16_t smallestSubNorm("-0x0.004p-14"); float16_t 249 test/correctness/float16_t_constants.cpp const float16_t noughtPointOneRZ("0.1", RoundingMode::TowardZero); float16_t 255 test/correctness/float16_t_constants.cpp const float16_t reconstruct(noughtPointOneRZ.to_decimal_string(0).c_str(), RoundingMode::TowardZero); float16_t 260 test/correctness/float16_t_constants.cpp const float16_t noughtPointOneRNE("0.1", RoundingMode::ToNearestTiesToEven); float16_t 261 test/correctness/float16_t_constants.cpp const float16_t noughtPointOneRNA("0.1", RoundingMode::ToNearestTiesToAway); float16_t 262 test/correctness/float16_t_constants.cpp const float16_t noughtPointOneRD("0.1", RoundingMode::TowardNegativeInfinity); float16_t 269 test/correctness/float16_t_constants.cpp const float16_t noughtPointOneFCast = (float16_t) 0.1f; // Implicitly RNE float16_t 270 test/correctness/float16_t_constants.cpp const float16_t noughtPointOneDCast = (float16_t) 0.1; // Implicitly RNE float16_t 271 test/correctness/float16_t_constants.cpp const float16_t noughtPointOneExplicitConstructor(0.1f); // Implicitly RNE float16_t 272 test/correctness/float16_t_constants.cpp const float16_t noughtPointOneExplicitConstructorStr("0.1"); // Implicitly RNE float16_t 273 test/correctness/float16_t_constants.cpp const float16_t noughtPointOneMakeFromBits = float16_t::make_from_bits((uint16_t)0x2e66); // Implicitly RNE float16_t 282 test/correctness/float16_t_constants.cpp const float16_t noughtPointOneRU("0.1", RoundingMode::TowardPositiveInfinity); float16_t 289 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRD("4091", RoundingMode::TowardNegativeInfinity); float16_t 290 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRDFromInt = float16_t::make_from_signed_int(4091, RoundingMode::TowardNegativeInfinity); float16_t 297 test/correctness/float16_t_constants.cpp const float16_t reconstruct(fourZeroNineOneRD.to_decimal_string(0).c_str(), RoundingMode::TowardNegativeInfinity); float16_t 300 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRU("4091", RoundingMode::TowardPositiveInfinity); float16_t 301 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRUFromInt = float16_t::make_from_signed_int(4091, RoundingMode::TowardPositiveInfinity); float16_t 307 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRZ("4091", RoundingMode::TowardZero); float16_t 308 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRZFromInt = float16_t::make_from_signed_int(4091, RoundingMode::TowardZero); float16_t 312 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRNE("4091", RoundingMode::ToNearestTiesToEven); float16_t 313 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRNEFromInt = float16_t::make_from_signed_int(4091, RoundingMode::ToNearestTiesToEven); float16_t 317 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRNA("4091", RoundingMode::ToNearestTiesToAway); float16_t 318 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRNAFromInt = float16_t::make_from_signed_int(4091, RoundingMode::ToNearestTiesToAway); float16_t 325 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRD("-4091", RoundingMode::TowardNegativeInfinity); float16_t 326 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRDFromInt = float16_t::make_from_signed_int(-4091, RoundingMode::TowardNegativeInfinity); float16_t 333 test/correctness/float16_t_constants.cpp const float16_t reconstruct(fourZeroNineOneRD.to_decimal_string(0).c_str(), RoundingMode::TowardNegativeInfinity); float16_t 336 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRU("-4091", RoundingMode::TowardPositiveInfinity); float16_t 337 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRUFromInt = float16_t::make_from_signed_int(-4091, RoundingMode::TowardPositiveInfinity); float16_t 343 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRZ("-4091", RoundingMode::TowardZero); float16_t 344 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRZFromInt = float16_t::make_from_signed_int(-4091, RoundingMode::TowardZero); float16_t 348 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRNE("-4091", RoundingMode::ToNearestTiesToEven); float16_t 349 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRNEFromInt = float16_t::make_from_signed_int(-4091, RoundingMode::ToNearestTiesToEven); float16_t 353 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRNA("-4091", RoundingMode::ToNearestTiesToAway); float16_t 354 test/correctness/float16_t_constants.cpp const float16_t fourZeroNineOneRNAFromInt = float16_t::make_from_signed_int(-4091, RoundingMode::ToNearestTiesToAway); float16_t 364 test/correctness/float16_t_constants.cpp const float16_t noughtPointThreeRD("0.3", RoundingMode::TowardNegativeInfinity); float16_t 372 test/correctness/float16_t_constants.cpp const float16_t reconstruct(noughtPointThreeRD.to_decimal_string(0).c_str(), RoundingMode::ToNearestTiesToEven); float16_t 375 test/correctness/float16_t_constants.cpp const float16_t noughtPointThreeRU("0.3", RoundingMode::TowardPositiveInfinity); float16_t 380 test/correctness/float16_t_constants.cpp const float16_t noughtPointThreeRZ("0.3", RoundingMode::TowardZero); float16_t 383 test/correctness/float16_t_constants.cpp const float16_t noughtPointThreeRNE("0.3", RoundingMode::ToNearestTiesToEven); float16_t 386 test/correctness/float16_t_constants.cpp const float16_t noughtPointThreeRNA("0.3", RoundingMode::ToNearestTiesToAway); float16_t 16 test/correctness/float16_t_image_type.cpp Halide::Buffer<float16_t> simple(/*x=*/10, /*y=*/3); float16_t 18 test/correctness/float16_t_image_type.cpp h_assert(sizeof(float16_t) == 2, "float16_t has invalid size"); float16_t 28 test/correctness/float16_t_image_type.cpp const float16_t zeroPointTwoFive = float16_t("0.25", RoundingMode::ToNearestTiesToEven); float16_t 21 test/correctness/float16_t_implicit_upcast.cpp f(x, y) = 0.25f + Expr(float16_t(0.75)); float16_t 19 test/correctness/float16_t_realize_constant.cpp f(x, y) = float16_t(0.75); float16_t 25 test/correctness/float16_t_realize_constant.cpp h_assert(sizeof(float16_t) == 2, "float16_t has invalid size"); float16_t 26 test/correctness/float16_t_realize_constant.cpp Buffer<float16_t> simple = f.realize(10, 3); float16_t 29 test/correctness/float16_t_realize_constant.cpp simple.for_each_value([&](float16_t f) { float16_t 30 test/correctness/float16_t_realize_constant.cpp h_assert(f == float16_t(0.75), "Invalid value read back"); float16_t 24 test/error/float16_t_implicit_downcast.cpp Buffer<float16_t> simple = f.realize(10, 3); float16_t 23 test/error/float16_t_overflow.cpp float16_t fail(largeNum, RoundingMode::ToNearestTiesToEven); float16_t 24 test/error/float16_t_overflow_int_conv.cpp float16_t fail = float16_t::make_from_signed_int(largeNum, RoundingMode::ToNearestTiesToEven); float16_t 32 test/warning/float16_t_underflow.cpp float16_t warning(verySmallNum, RoundingMode::ToNearestTiesToAway);