Float-point fused Multiply-Add AArch64 vs LoongArch64
·
hev
AA64: fmadd d, n, m, a: d = a + n * m
LA64: fmadd d, j, k, a: d = a + j * k
AA64: fmsub d, n, m, a: d = a + (-n) * m
d = a - n * m
d = - (n * m - a)
LA64: fnmsub d, j, k, a: d = - (j * k - a)
d = a - j * k
d = a + (-j) * k
AA64: fnmadd d, n, m, a: d = (-a) + (-n) * m
d = - (n * m + a)
LA64: fnmadd d, j, k, a: d = - (j * k + a)
d = (-a) + (-n * m)
AA64: fnmsub d, n, m, a: d = (-a) + n * m
d = n * m - a
LA64: fmsub d, j, k, a: d = j * k - a
d = (-a) + j * k