16TEST(math_half, half_to_float_scalar)
43TEST(math_half, float_to_half_scalar)
45#define HFUN(v) blender::math::float_to_half(v)
65 EXPECT_EQ(
HFUN(std::numeric_limits<float>::infinity()), 31744);
67 EXPECT_EQ(
HFUN(std::numeric_limits<float>::quiet_NaN()), 32256);
77 EXPECT_EQ(
HFUN(-std::numeric_limits<float>::infinity()), 64512);
81TEST(math_half, float_to_half_make_finite_scalar)
83#define HFUN(v) blender::math::float_to_half_make_finite(v)
104 EXPECT_EQ(
HFUN(std::numeric_limits<float>::infinity()), 31743);
108 EXPECT_EQ(
HFUN(std::numeric_limits<float>::signaling_NaN()), 0);
119 EXPECT_EQ(
HFUN(-std::numeric_limits<float>::infinity()), 64511);
121 EXPECT_EQ(
HFUN(-std::numeric_limits<float>::quiet_NaN()), 32768);
122 EXPECT_EQ(
HFUN(-std::numeric_limits<float>::signaling_NaN()), 32768);
128 const uint16_t src[13] = {
129 0, 1, 6789, 16383, 16384, 31743, 31744, 32768, 32769, 46765, 54501, 64511, 64512};
131 const float exp[14] = {
138 std::numeric_limits<float>::infinity(),
144 -std::numeric_limits<float>::infinity(),
151 EXPECT_EQ_ARRAY(
exp, dst, 14);
156 const float src[13] = {0.0f,
162 std::numeric_limits<float>::infinity(),
168 -std::numeric_limits<float>::infinity()};
170 const uint16_t
exp[14] = {
171 0, 1, 6789, 16383, 16384, 31743, 31744, 32768, 32769, 46765, 54501, 64511, 64512, 12345};
172 uint16_t dst[14] = {};
176 EXPECT_EQ_ARRAY(
exp, dst, 14);
181 const float src[17] = {
188 std::numeric_limits<float>::infinity(),
194 -std::numeric_limits<float>::infinity(),
197 std::numeric_limits<float>::quiet_NaN(),
198 -std::numeric_limits<float>::quiet_NaN(),
201 const uint16_t
exp[18] = {0,
219 uint16_t dst[18] = {};
222 EXPECT_EQ_ARRAY(
exp, dst, 18);
EXPECT_EQ(BLI_expr_pylike_eval(expr, nullptr, 0, &result), EXPR_PYLIKE_INVALID)
static T sum(const btAlignedObjectArray< T > &items)