On 7/31/24 02:03, Peter Maydell wrote:
@@ -2790,7 +2790,7 @@ DO_MMLA_B(gvec_usmmla_b, do_usmmla_b)
* BFloat16 Dot Product
*/
-float32 bfdotadd(float32 sum, uint32_t e1, uint32_t e2)
+bool is_ebf(CPUARMState *env, float_status *statusp, float_status *oddstatusp)
{
/* FPCR is ignored for BFDOT and BFMMLA. */
float_status bf_status = {
@@ -2800,29 +2800,50 @@ float32 bfdotadd(float32 sum, uint32_t e1, uint32_t e2)
.flush_inputs_to_zero = true,
.default_nan_mode = true,
};
+
+ *statusp = bf_status;
+ return false;
+}
Looking at the next patch, I think dropping the local variable is better.
*statusp = (float_status){
...
};
r~