regtest: broaden none/tests/linux/bug498317 suppression for PPC
[valgrind.git] / VEX / priv / host_amd64_maddf.c
blob579abb4389ac13808376ac87e9060bf4799d124a
2 /*---------------------------------------------------------------*/
3 /*--- begin host_amd64_maddf.c ---*/
4 /*---------------------------------------------------------------*/
6 /*
7 Compute x * y + z as ternary operation with intrinsics.
8 */
11 #include "libvex_basictypes.h"
12 #include "host_amd64_maddf.h"
14 #if defined(VGA_amd64)
15 void VEX_REGPARM(3)
16 h_amd64_calc_MAddF32_fma4 ( /*OUT*/Float* res,
17 Float* argX, Float* argY, Float* argZ )
19 __asm__ ("vfmaddss %3,%2,%1,%0;" :
20 "=x"(*res): "x"(*argX),"x"(*argY), "x"(*argZ));
21 return ;
24 void VEX_REGPARM(3)
25 h_amd64_calc_MAddF64_fma4 ( /*OUT*/Double* res,
26 Double* argX, Double* argY, Double* argZ )
28 __asm__ ("vfmaddsd %3,%2,%1,%0;" :
29 "=x"(*res): "x"(*argX),"x"(*argY), "x"(*argZ));
30 return;
32 #endif
33 /*---------------------------------------------------------------*/
34 /*--- end host_amd64_maddf.c --*/
35 /*---------------------------------------------------------------*/