xref: /aosp_15_r20/external/musl/src/math/arm/fma.c (revision c9945492fdd68bbe62686c5b452b4dc1be3f8453)
1*c9945492SAndroid Build Coastguard Worker #include <math.h>
2*c9945492SAndroid Build Coastguard Worker 
3*c9945492SAndroid Build Coastguard Worker #if __ARM_FEATURE_FMA && __ARM_FP&8 && !__SOFTFP__
4*c9945492SAndroid Build Coastguard Worker 
fma(double x,double y,double z)5*c9945492SAndroid Build Coastguard Worker double fma(double x, double y, double z)
6*c9945492SAndroid Build Coastguard Worker {
7*c9945492SAndroid Build Coastguard Worker 	__asm__ ("vfma.f64 %P0, %P1, %P2" : "+w"(z) : "w"(x), "w"(y));
8*c9945492SAndroid Build Coastguard Worker 	return z;
9*c9945492SAndroid Build Coastguard Worker }
10*c9945492SAndroid Build Coastguard Worker 
11*c9945492SAndroid Build Coastguard Worker #else
12*c9945492SAndroid Build Coastguard Worker 
13*c9945492SAndroid Build Coastguard Worker #include "../fma.c"
14*c9945492SAndroid Build Coastguard Worker 
15*c9945492SAndroid Build Coastguard Worker #endif
16