Skip to content

Incorrect arch feature detection for Windows on ARM platforms #401

Open
@shakan-qcom

Description

@shakan-qcom

https://github.com/xiph/opus/blob/main/celt/arm/armcpu.c : opus_select_arch_impl() expects all feature bit to be set in sequential order : OPUS_ARCH_ARM_EDSP -> OPUS_ARCH_ARM_MEDIA -> OPUS_ARCH_ARM_NEON -> OPUS_ARCH_ARM_DOTPROD . and for Windows on ARM platforms, only NEON and DOTPROD (if supported) are set . This makes the function opus_select_arch_impl() to fail for first OPUS_ARCH_ARM_EDSP check and returns arch as ARM v4 , leading to hooking up C implementation of functions instead of NEON intrinsics.

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