Skip to content

Validity of Fused Multiply-Add Function #33

@not-chciken

Description

@not-chciken

As described on the Website (8.5. Fused Multiply-Add Functions), fused multiply-add always raises an invalid exception "if one of the multiplication operands a and b is infinite and the other is zero [...], even if operand c is a quiet NaN". That seems to be regardless of the chosen specialization.
However, all modern X86 CPUs from Intel or AMD do not raise the invalid exception for fma(0,infinity,qNaN).
This is also explicitly stated in "Intel® 64 and IA-32 Architectures Software Developer’s Manual".

Since the specialization 8086-SSE is supposed to model an Intel x86 processor with SSE, I wonder if this behavior of Berkeley SoftFloat is intended.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions