Home
last modified time | relevance | path

Searched refs:Float32 (Results 1 – 25 of 27) sorted by relevance

12

/frameworks/libs/binary_translation/intrinsics/common_to_x86/
Dintrinsics_float_test.cc120 bit_cast<uint32_t, Float32>(NonInlineWrapper<Float32(const Float32&)>::Call<Absolute>( in TEST()
121 bit_cast<Float32, uint32_t>(kBadNegativeNan32))); in TEST()
134 bit_cast<uint32_t, Float32>(NonInlineWrapper<Float32(const Float32&)>::Call<Negative>( in TEST()
135 bit_cast<Float32, uint32_t>(kBadNegativeNan32))); in TEST()
148 uint32_t result = bit_cast<uint32_t, Float32>(bit_cast<Float32, uint32_t>(kPlusInfinity32) + in TEST()
149 bit_cast<Float32, uint32_t>(kPlusInfinity32)); in TEST()
152 result = bit_cast<uint32_t, Float32>(bit_cast<Float32, uint32_t>(kMinusInfinity32) + in TEST()
153 bit_cast<Float32, uint32_t>(kMinusInfinity32)); in TEST()
156 result = bit_cast<uint32_t, Float32>(bit_cast<Float32, uint32_t>(kPlusInfinity32) + in TEST()
157 bit_cast<Float32, uint32_t>(kMinusInfinity32)); in TEST()
[all …]
/frameworks/libs/binary_translation/intrinsics/common_to_x86/include/berberis/intrinsics/common_to_x86/
Dintrinsics_float.h31 inline Float32 operator operator_name(const Float32& v1, const Float32& v2) { \
32 Float32 result; \
37 inline Float32& operator assignment_name(Float32& v1, const Float32& v2) { \
60 inline bool operator<(const Float32& v1, const Float32& v2) {
72 inline bool operator>(const Float32& v1, const Float32& v2) {
84 inline bool operator<=(const Float32& v1, const Float32& v2) {
96 inline bool operator>=(const Float32& v1, const Float32& v2) {
108 inline bool operator==(const Float32& v1, const Float32& v2) {
120 inline bool operator!=(const Float32& v1, const Float32& v2) {
141 inline Float32 CopySignBit(const Float32& v1, const Float32& v2) { in CopySignBit()
[all …]
/frameworks/libs/binary_translation/lite_translator/riscv64_to_x86_64/
Dinline_intrinsic_tests.cc72 using Float32 = intrinsics::Float32; typedef in berberis::__anon5690538b0111::TryInlineIntrinsicWithTestParams
83 std::is_same_v<Result, std::tuple<Float32>> || in AllocResult()
98 } else if constexpr (std::is_same_v<Arg, SIMD128Register> || std::is_same_v<Arg, Float32> || in AllocArg()
121 TEST_SUPPORTED((intrinsics::FMul<intrinsics::Float32>), int8_t{FPFlags::DYN}); in TEST()
122 TEST_UNSUPPORTED((intrinsics::FMul<intrinsics::Float32>), int8_t{FPFlags::RNE}); in TEST()
126 TEST_SUPPORTED((intrinsics::FAdd<intrinsics::Float32>), int8_t{FPFlags::DYN}); in TEST()
127 TEST_UNSUPPORTED((intrinsics::FAdd<intrinsics::Float32>), int8_t{FPFlags::RNE}); in TEST()
131 TEST_SUPPORTED((intrinsics::FSub<intrinsics::Float32>), int8_t{FPFlags::DYN}); in TEST()
132 TEST_UNSUPPORTED((intrinsics::FSub<intrinsics::Float32>), int8_t{FPFlags::RNE}); in TEST()
136 TEST_SUPPORTED((intrinsics::FDiv<intrinsics::Float32>), int8_t{FPFlags::DYN}); in TEST()
[all …]
Dinline_intrinsic.h64 } else if constexpr (IsTagEq<&intrinsics::FMul<intrinsics::Float32>>) { in TryInlineWithHostRounding()
69 return TryInlineIntrinsic<&intrinsics::FMulHostRounding<intrinsics::Float32>>( in TryInlineWithHostRounding()
78 } else if constexpr (IsTagEq<&intrinsics::FAdd<intrinsics::Float32>>) { in TryInlineWithHostRounding()
83 return TryInlineIntrinsic<&intrinsics::FAddHostRounding<intrinsics::Float32>>( in TryInlineWithHostRounding()
92 } else if constexpr (IsTagEq<&intrinsics::FSub<intrinsics::Float32>>) { in TryInlineWithHostRounding()
97 return TryInlineIntrinsic<&intrinsics::FSubHostRounding<intrinsics::Float32>>( in TryInlineWithHostRounding()
106 } else if constexpr (IsTagEq<&intrinsics::FDiv<intrinsics::Float32>>) { in TryInlineWithHostRounding()
111 return TryInlineIntrinsic<&intrinsics::FDivHostRounding<intrinsics::Float32>>( in TryInlineWithHostRounding()
121 } else if constexpr (IsTagEq<&intrinsics::FCvtFloatToInteger<int64_t, intrinsics::Float32>>) { in TryInlineWithHostRounding()
127 &intrinsics::FCvtFloatToIntegerHostRounding<int64_t, intrinsics::Float32>>( in TryInlineWithHostRounding()
[all …]
Dlite_translator_tests.cc98 translator.NanBoxFpReg<LiteTranslator::Float32>(reg); in TEST()
104 translator.NanBoxAndSetFpReg<LiteTranslator::Float32>(1, reg); in TEST()
108 translator.NanBoxAndSetFpReg<LiteTranslator::Float32>(1, reg); in TEST()
Dcall_intrinsic.h217 using Float32 = intrinsics::Float32; in InitArgs() local
235 } else if constexpr (std::is_same_v<IntrinsicType, Float32> || in InitArgs()
274 } else if constexpr ((std::is_same_v<IntrinsicType, Float32> || in InitArgs()
312 using Float32 = intrinsics::Float32; in ForwardResults() local
329 kFormatIs<IntrinsicResType, std::tuple<Float32>, std::tuple<Float64>> && in ForwardResults()
Dlite_translator.h59 using Float32 = intrinsics::Float32; variable
/frameworks/libs/binary_translation/interpreter/riscv64/
Dregs.h50 inline intrinsics::Float32 FPRegToFloat<intrinsics::Float32>(uint64_t arg) {
51 intrinsics::Float32 result;
52 memcpy(&result, &arg, sizeof(intrinsics::Float32));
65 inline uint64_t FloatToFPReg<intrinsics::Float32>(intrinsics::Float32 arg) {
Dinterpreter_test.cc2149 TestFPExceptions<intrinsics::Float32>(0x012d1557); // Vfadd.vv v10, v18, v26, v0.t in TEST_F()
2151 TestFPExceptions<intrinsics::Float32>(0x0120d557); // Vfadd.vf v10, v18, f1, v0.t in TEST_F()
2153 TestFPExceptions<intrinsics::Float32>(0x092d1557); // Vfsub.vv v10, v18, v26, v0.t in TEST_F()
2155 TestFPExceptions<intrinsics::Float32>(0x0920d557); // Vfsub.vf v10, v18, f1, v0.t in TEST_F()
2157 TestFPExceptions<intrinsics::Float32>(0x812d1557); // Vfdiv.vv v10, v18, v26, v0.t in TEST_F()
2159 TestFPExceptions<intrinsics::Float32>(0x8120d557); // Vfdiv.vf v10, v18, f1, v0.t in TEST_F()
2161 TestFPExceptions<intrinsics::Float32>(0x912d1557); // Vfmul.vv v10, v18, v26, v0.t in TEST_F()
2163 TestFPExceptions<intrinsics::Float32>(0x9120d557); // Vfmul.vf v10, v18, f1, v0.t in TEST_F()
2165 TestFPExceptions<intrinsics::Float32>(0x9d20d557); // Vfrsub.vf v10, v18, f1, v0.t in TEST_F()
2241 TestVfmvfs<intrinsics::Float32>(0x428010d7, 0xffff'ffff'8302'8100); // Vfmv.f.s f1, v8 in TEST_F()
[all …]
Dinterpreter.h75 using Float32 = intrinsics::Float32; variable
249 static_assert(std::is_same_v<DataType, Float32> || std::is_same_v<DataType, Float64>); in LoadFp()
365 static_assert(std::is_same_v<DataType, Float32> || std::is_same_v<DataType, Float64>); in StoreFp()
582 return OpVector<Float32>( in OpVector()
586 std::get<0>(intrinsics::UnboxNan<Float32>(bit_cast<Float64>(extra_args)))...); in OpVector()
1266 if constexpr (sizeof(ElementType) == sizeof(Float32)) { in OpVector()
1414 Vec<SignedType{(sizeof(ElementType) == sizeof(Float32)) ? 0x3f80'0000 in OpVector()
1481 if constexpr (sizeof(ElementType) <= sizeof(Float32)) { in OpVector()
1552 if constexpr (sizeof(ElementType) == sizeof(Float32)) { in OpVector()
1705 if constexpr (sizeof(ElementType) >= sizeof(Float32)) { in OpVector()
[all …]
/frameworks/libs/binary_translation/intrinsics/riscv64/
Dintrinsics_test.cc144 ASSERT_EQ(RSqrtEstimate<Float32>(Float32{255}), Float32{0.0625}); in TEST()
147 ASSERT_EQ(RSqrtEstimate<Float32>(Float32{2000.123}), bit_cast<Float32>(uint32_t(0x3CB70000))); in TEST()
150 ASSERT_EQ(RSqrtEstimate<Float32>(Float32{0.1123}), Float32{2.984375}); in TEST()
153 ASSERT_EQ(RSqrtEstimate<Float32>(Float32{0}), std::numeric_limits<Float32>::infinity()); in TEST()
157 ASSERT_EQ(bit_cast<uint32_t>(RSqrtEstimate<Float32>(Float32{-2.1})), in TEST()
158 bit_cast<uint32_t>(std::numeric_limits<Float32>::quiet_NaN())); in TEST()
/frameworks/libs/binary_translation/intrinsics/include/berberis/intrinsics/
Dtype_traits.h55 using Float = intrinsics::Float32;
90 using Float = intrinsics::Float32;
120 using Wide = intrinsics::Float32;
126 struct TypeTraits<intrinsics::Float32> {
139 using Narrow = intrinsics::Float32;
151 using Wrapped = intrinsics::Float32;
Dintrinsics_floating_point_impl.h76 static_assert(std::is_same_v<Float32, SourceOperandType> || in FCvtFloatToFloat()
78 static_assert(std::is_same_v<Float32, TargetOperandType> || in FCvtFloatToFloat()
94 static_assert(std::is_same_v<Float32, SourceOperandType> || in FCvtFloatToInteger()
141 static_assert(std::is_same_v<Float32, TargetOperandType> || in FCvtIntegerToFloat()
299 if constexpr (std::is_same_v<FloatType, Float32>) { in RSqrtEstimate()
303 Float32 fp32 = bit_cast<Float32>(op_32); in RSqrtEstimate()
308 return bit_cast<Float32>(op_32); in RSqrtEstimate()
Dsimd_register.h355 SIMD_128_FLOAT_REGISTER_GETTER_SETTER(intrinsics::Float32, float, float32);
/frameworks/libs/binary_translation/intrinsics/riscv64_to_x86_64/include/berberis/intrinsics/
Dmacro_assembler_floating_point_impl.h399 static_assert(std::is_same_v<FloatType, Float32>); in MacroNanBox()
401 Por(arg, {.disp = constants_pool::kNanBox<Float32>}); in MacroNanBox()
407 static_assert(std::is_same_v<FloatType, Float32>); in MacroNanBoxAVX()
409 Vpor(result, src, {.disp = constants_pool::kNanBox<Float32>}); in MacroNanBoxAVX()
415 static_assert(std::is_same_v<FloatType, Float32>); in MacroUnboxNan()
418 Pcmpeq<typename TypeTraits<FloatType>::Int>(result, {.disp = constants_pool::kNanBox<Float32>}); in MacroUnboxNan()
421 Pandn(result, {.disp = constants_pool::kNanBoxedNans<Float32>}); in MacroUnboxNan()
428 static_assert(std::is_same_v<FloatType, Float32>); in MacroUnboxNanAVX()
431 result, src, {.disp = constants_pool::kNanBox<Float32>}); in MacroUnboxNanAVX()
434 Vpandn(result, result, {.disp = constants_pool::kNanBoxedNans<Float32>}); in MacroUnboxNanAVX()
Dintrinsics_float.h40 if constexpr (std::is_same_v<FloatType, Float32>) { in ExecuteFloatOperationRmm()
123 DEFINE_FLOAT_COMPARE_FUNC(Max, Float32, +0.f, std::fmax);
125 DEFINE_FLOAT_COMPARE_FUNC(Min, Float32, -0.f, std::fmin);
Dmacro_assembler_constants_pool.h186 inline const int32_t& kNanBox<intrinsics::Float32> = kVectorConst<uint64_t{0xffff'ffff'0000'0000}>;
193 inline const int32_t& kNanBoxedNans<intrinsics::Float32> =
/frameworks/libs/binary_translation/heavy_optimizer/riscv64/
Dinline_intrinsic.h69 } else if constexpr (IsTagEq<&intrinsics::FMul<intrinsics::Float32>>()) { in TryInlineWithHostRounding()
75 &intrinsics::FMulHostRounding<intrinsics::Float32>>( in TryInlineWithHostRounding()
85 } else if constexpr (IsTagEq<&intrinsics::FAdd<intrinsics::Float32>>()) { in TryInlineWithHostRounding()
91 &intrinsics::FAddHostRounding<intrinsics::Float32>>( in TryInlineWithHostRounding()
101 } else if constexpr (IsTagEq<&intrinsics::FSub<intrinsics::Float32>>()) { in TryInlineWithHostRounding()
107 &intrinsics::FSubHostRounding<intrinsics::Float32>>( in TryInlineWithHostRounding()
117 } else if constexpr (IsTagEq<&intrinsics::FDiv<intrinsics::Float32>>()) { in TryInlineWithHostRounding()
123 &intrinsics::FDivHostRounding<intrinsics::Float32>>( in TryInlineWithHostRounding()
133 } else if constexpr (IsTagEq<&intrinsics::FCvtFloatToInteger<int64_t, intrinsics::Float32>>()) { in TryInlineWithHostRounding()
139 &intrinsics::FCvtFloatToIntegerHostRounding<int64_t, intrinsics::Float32>>( in TryInlineWithHostRounding()
[all …]
Dfrontend.h47 using Float32 = intrinsics::Float32; variable
272 if constexpr (std::is_same_v<DataType, Float32>) { in LoadFp()
284 if constexpr (std::is_same_v<DataType, Float32>) { in StoreFp()
/frameworks/libs/binary_translation/decoder/include/berberis/decoder/riscv64/
Dsemantics_player.h33 using Float32 = typename SemanticsListener::Float32; variable
182 FpRegister result = listener_->template FCvtFloatToFloat<Float32, Float64>(args.rm, frm, arg); in Fcvt()
183 NanBoxAndSetFpReg<Float32>(args.dst, result); in Fcvt()
186 FpRegister arg = GetFRegAndUnboxNan<Float32>(args.src); in Fcvt()
188 FpRegister result = listener_->template FCvtFloatToFloat<Float64, Float32>(args.rm, frm, arg); in Fcvt()
199 return FcvtloatToInteger<Float32>(args.dst_type, args.rm, args.dst, args.src); in Fcvt()
237 return FcvtIntegerToFloat<Float32>(args.src_type, args.rm, args.dst, args.src); in Fcvt()
276 return Fma<Float32>(args.opcode, args.rm, args.dst, args.src1, args.src2, args.src3); in Fma()
386 return Load<Float32>(args.dst, args.src, args.offset); in Load()
498 return OpFp<Float32>(args.opcode, args.rm, args.dst, args.src1, args.src2); in OpFp()
[all …]
/frameworks/libs/binary_translation/intrinsics/common_to_x86/include/berberis/intrinsics/
Dmacro_assembler-inl.h30 using Float32 = intrinsics::Float32; variable
75 static constexpr bool kFloatType = kFormatIs<FloatType, Float32, Float64>;
435 if constexpr (kFormatIs<format, Float32>) { \
460 if constexpr (kFormatIs<format, Float32>) { \
480 if constexpr (kFormatIs<FormatFrom, Float32> && kFormatIs<FormatTo, int32_t>) { \
482 } else if constexpr (kFormatIs<FormatFrom, Float32> && kFormatIs<FormatTo, int64_t>) { \
504 if constexpr (kFormatIs<FormatFrom, Float32> && kFormatIs<FormatTo, int32_t>) { \
506 } else if constexpr (kFormatIs<FormatFrom, Float32> && kFormatIs<FormatTo, int64_t>) { \
525 if constexpr (kFormatIs<FormatFrom, Float32> && kFormatIs<FormatTo, Float64>) { \
550 if constexpr (kFormatIs<format, Float32>) { \
/frameworks/libs/binary_translation/intrinsics/include/berberis/intrinsics/common/
Dintrinsics.h63 } else if constexpr (std::is_same_v<Float32, std::decay_t<Type>>) { in TypeToEnumFromTemplateType()
Dintrinsics_float.h130 using Float32 = WrappedFloatType<float>; variable
/frameworks/libs/binary_translation/code_gen_lib/
Dgen_wrapper_riscv64_to_x86_64.cc155 as.MacroNanBoxAVX<intrinsics::Float32>(kFpParamRegs[fp_argc], kFpParamRegs[fp_argc]); in GenWrapGuestFunction()
157 as.MacroNanBox<intrinsics::Float32>(kFpParamRegs[fp_argc]); in GenWrapGuestFunction()
/frameworks/libs/native_bridge_support/android_api/libvulkan/proxy/
Dvulkan_xml_test.go555 field0.Type().Elem(arch).Elem(arch).Kind(arch) != cpp_types.Float32 {
672 field2.Type().Elem(arch).Elem(arch).Kind(arch) != cpp_types.Float32 ||

12