Skip to content

arc soft float multiply error #695

Open
Open
@keith-packard

Description

@keith-packard

I found one case where the soft 32-bit float multiplication function, __mulsf3, for arc is generating an incorrect result.

0x1.000002p-2f * 0x1.000002p-126f

The exact result is 0x1.000004000004p-128, or 0x0.400001000001p-126. This should get rounded to 0x0.400002p-126, but the arc soft float code returns 0x0.4p-126.

I've tested soft float on arm and riscv and they both work correctly, along with various hardware floating point devices as well

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: GCCIssues related to GCC (GNU Compiler Collection)

    Type

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions