[clang] fix armv6kz LDREX definition (PR #122965)

via cfe-commits cfe-commits at lists.llvm.org
Tue Jan 14 12:50:42 PST 2025


llvmbot wrote:


<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clang

@llvm/pr-subscribers-backend-arm

Author: None (Un1q32)

<details>
<summary>Changes</summary>

Fixes #<!-- -->37901

This behavior is consistent with GCC

---
Full diff: https://github.com/llvm/llvm-project/pull/122965.diff


1 Files Affected:

- (modified) clang/lib/Basic/Targets/ARM.cpp (+2-1) 


``````````diff
diff --git a/clang/lib/Basic/Targets/ARM.cpp b/clang/lib/Basic/Targets/ARM.cpp
index 61ee26d8863832..0fd5433a76402e 100644
--- a/clang/lib/Basic/Targets/ARM.cpp
+++ b/clang/lib/Basic/Targets/ARM.cpp
@@ -617,7 +617,8 @@ bool ARMTargetInfo::handleTargetFeatures(std::vector<std::string> &Features,
   case 6:
     if (ArchProfile == llvm::ARM::ProfileKind::M)
       LDREX = 0;
-    else if (ArchKind == llvm::ARM::ArchKind::ARMV6K)
+    else if (ArchKind == llvm::ARM::ArchKind::ARMV6K ||
+             ArchKind == llvm::ARM::ArchKind::ARMV6KZ)
       LDREX = LDREX_D | LDREX_W | LDREX_H | LDREX_B;
     else
       LDREX = LDREX_W;

``````````

</details>


https://github.com/llvm/llvm-project/pull/122965


More information about the cfe-commits mailing list