[llvm] [AArch64][Bitcode] Use target memory for SME state (PR #205829)

Paul Walker via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 29 06:19:57 PDT 2026


================
@@ -2471,12 +2472,24 @@ Error BitcodeReader::parseAttributeGroupBlock() {
                         MemoryEffects::argMemOnly(ArgMem) |
                         MemoryEffects::errnoMemOnly(OtherMem) |
                         MemoryEffects::otherMemOnly(OtherMem);
+              // Old versions dont have target memory location.
+              // It was represented as Inaccessible memory for AArch64.
+              if (BitcodeTargetTriple.isAArch64())
+                for (auto Loc : MemoryEffects::targetMemLocations())
+                  ME = ME.getWithModRef(Loc, InaccessibleMem);
----------------
paulwalker-arm wrote:

This will be wrong if somebody adds target_mem2 because we haven't decided if or how we'll use that yet.  It is safer to hardwire target_mem0/1 here as the only state we have defined that used to be represented by inaccessible-men.

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


More information about the llvm-commits mailing list