Skip to content

SIMD: PURECFMA scalar dispatch causes SIGILL on x86-64-v2 CPUs (Sandy Bridge) #707

@SwayamInSync

Description

@SwayamInSync

This issue is to inform maintainers that the quad-precision scalar dispatcher qdispscalar.c compiles FMA-optimized code paths unconditionally on x86-64, which can cause SIGILL (illegal instruction) crashes on CPUs that don't support FMA instructions (x86-64-v2 / Sandy Bridge era processors). We noticed this issue in version 3.9 but it still persists in current in-development source.

Configure.cmake builds PRECFMA_SCALAR with avx and fma flags on x86

set(CLANG_FLAGS_ENABLE_PURECFMA_SCALAR "-mavx2;-mfma")

Configure.cmake unconditionally enables PURECFMA_SCALAR for all arch

set(COMPILER_SUPPORTS_PURECFMA_SCALAR True)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions