Skip to content

<atomic>: use __iso_volatile_store64 on x86 if it is available #651

Description

Currently 64-bit atomic<T> on x86 uses _InterlockedCompareExchange64 for any store operation, even for memory_order_relaxed.

Whereas for load it uses __iso_volatile_load64 intrinsic.

__iso_volatile_store64 appears to be working on x86. Though it was blamed to cause ICE in revision bb746ac.

Clarify the status of __iso_volatile_store64 on x86 and use it if it is possible.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    fixedSomething works now, yay!performanceMust go faster

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions