[all-commits] [llvm/llvm-project] 34f59d: [Clang][ARM] Fix __ARM_FEATURE_LDREX on Armv8-M (#...

Simon Tatham via All-commits all-commits at lists.llvm.org
Tue Jul 22 00:54:07 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 34f59d79209268eca9c63ccc7646128f2dc52fe3
      https://github.com/llvm/llvm-project/commit/34f59d79209268eca9c63ccc7646128f2dc52fe3
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2025-07-22 (Tue, 22 Jul 2025)

  Changed paths:
    M clang/lib/Basic/Targets/ARM.cpp
    M clang/test/Preprocessor/arm-acle-6.4.c

  Log Message:
  -----------
  [Clang][ARM] Fix __ARM_FEATURE_LDREX on Armv8-M (#149538)

The Armv8-M architecture doesn't have the LDREXD and STREXD
instructions, for exclusive load/store of a 64-bit quantity split across
two registers. But the `__ARM_FEATURE_LDREX` macro was set to a value
that claims it does, because the case for Armv8 was missing a check for
M profile.

The Armv7 case got it right, so I've just made the two cases the same.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list