Embedded Artistry Framework
Embedded Systems C++ Framework
Classes | Functions
s_fma.c File Reference
#include "cdefs-compat.h"
#include <float.h>
#include <openlibm_fenv.h>
#include <openlibm_math.h>
#include "math_private.h"
Include dependency graph for s_fma.c:

Classes

struct  dd
 

Functions

static struct dd dd_add (double a, double b)
 
static double add_adjusted (double a, double b)
 
static double add_and_denormalize (double a, double b, int scale)
 
static struct dd dd_mul (double a, double b)
 
OLM_DLLEXPORT double fma (double x, double y, double z)
 

Class Documentation

◆ dd

struct dd
Class Members
double hi
long double hi
double lo
long double lo

Function Documentation

◆ add_adjusted()

static double add_adjusted ( double  a,
double  b 
)
inlinestatic

References a, b, dd_add(), EXTRACT_WORD64, INSERT_WORD64, and sum().

Referenced by fma().

◆ add_and_denormalize()

static double add_and_denormalize ( double  a,
double  b,
int  scale 
)
inlinestatic

References a, b, dd_add(), EXTRACT_WORD64, INSERT_WORD64, ldexp(), and sum().

Referenced by fma().

◆ dd_add()

static struct dd dd_add ( double  a,
double  b 
)
inlinestatic

References a, b, dd::hi, dd::lo, and s.

Referenced by add_adjusted(), add_and_denormalize(), and fma().

◆ dd_mul()

static struct dd dd_mul ( double  a,
double  b 
)
inlinestatic

References a, b, dd::hi, dd::lo, and p.

Referenced by fma().

◆ fma()

OLM_DLLEXPORT double fma ( double  x,
double  y,
double  z 
)