[PATCH] D48803: Place the BlockAddress type in the address space of the containing function

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 17 06:22:33 PST 2021


arsenm added inline comments.


================
Comment at: llvm/docs/LangRef.rst:3820-3821
+(Harvard architectures) will be in the program memory address space specified
+in the target's data layout unless the target can place functions in
+multiple different address spaces.
+
----------------
I think this is overexplaining it. The IR is the same regardless of what the target wants to do. It should match the code address space of the function


================
Comment at: llvm/lib/AsmParser/LLParser.cpp:3459
+          if (!ExpectedTy->isPointerTy() ||
+              !ExpectedTy->getPointerElementType()->isIntegerTy(8))
+            return error(
----------------
This should not depend on pointee element types


================
Comment at: llvm/lib/AsmParser/LLParser.cpp:3461-3462
+            return error(
+                ID.Loc, "type of blockaddress must be pointer to i8 and not '" +
+                            getTypeString(ExpectedTy) + "'");
+          assert(ExpectedTy->isPointerTy());
----------------
Pointee types do not really exist, the error should not mention them


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D48803/new/

https://reviews.llvm.org/D48803



More information about the llvm-commits mailing list