[llvm-branch-commits] [llvm] [DataLayout][LangRef] Split non-integral and unstable pointer properties (PR #105735)

Nikita Popov via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Sun Sep 21 12:19:08 PDT 2025


================
@@ -440,8 +461,12 @@ Error DataLayout::parsePointerSpec(StringRef Spec) {
     return createStringError(
         "index size cannot be larger than the pointer size");
 
+  if (ExternalState && BitWidth == IndexBitWidth)
+    return createStringError(
+        "pointers with external state must be non-integral");
----------------
nikic wrote:

Why can't we have a pointer with external state but no non-address bits? Say a hypothetical architecture that stores the entire capability in external state rather than only a validity bit.

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


More information about the llvm-branch-commits mailing list