logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

fma - perform a fused multiply-add operation

Declaration

genTypefma(genTypea,genTypeb,genTypec);genDTypefma(genDTypea,genDTypeb,genDTypec);

Description

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.

Name

       fma - perform a fused multiply-add operation

Parameters

a
           Specifies the first multiplicand.

       b
           Specifies the second multiplicand.

       c
           Specifies the value to be added to the result.

Version Support

       ┌────────────┬───────────────────────────────────────────────────────────────────────────────────┐
       │            │        OpenGLShadingLanguageVersion                                            │
       ├────────────┼──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┬──────┤
       │ Function1.101.201.301.401.503.304.004.104.204.304.404.50 │
       │ Name       │      │      │      │      │      │      │      │      │      │      │      │      │
       ├────────────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┤
       │ fma        │  -   │  -   │  -   │  -   │  -   │  -   │  ✔   │  ✔   │  ✔   │  ✔   │  ✔   │  ✔   │
       │ (genType)  │      │      │      │      │      │      │      │      │      │      │      │      │
       ├────────────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┼──────┤
       │ fma        │  -   │  -   │  -   │  -   │  -   │  -   │  ✔   │  ✔   │  ✔   │  ✔   │  ✔   │  ✔   │
       │ (genDType) │      │      │      │      │      │      │      │      │      │      │      │      │
       └────────────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┴──────┘

See Also