fma — perform a fused multiply-add operation
genType fma(
|
genType a, |
genType b, | |
genType c) ; |
a
Specifies the first multiplicand.
b
Specifies the second multiplicand.
c
Specifies the value to be added to the result.
fma
performs, where possible, a fused multiply-add operation,
returning a * b + c
.
In use cases where the return value is eventually consumed by a variable declared as
precise
:
fma
() is considered a single
operation, whereas the expression a * b +
c
consumed by a variable declared as
precise
is considered two operations.
The precision of fma
() can
differ from the precision of the expression a
* b + c
.
fma
() will be computed with the
same precision as any other
fma
() consumed by a
precise
variable, giving invariant
results for the same input values of
a
, b
and c
.
Otherwise, in the absense of precise
consumption, there are no
special constraints on the number of operations or difference in precision between
fma
() and the expression a * b + c
.
OpenGL ES Shading Language Version | |||
---|---|---|---|
Function Name | 1.00 | 3.00 | 3.10 |
fma
|
- | - | ✔ |
Copyright © 2011-2014 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. https://opencontent.org/openpub/.