[PATCH] D74651: Add IR constructs for inalloca replacement llvm.call.setup

Arthur Eubanks via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 15 18:16:02 PDT 2020


aeubanks marked 2 inline comments as done.
aeubanks added a comment.

In D74651#1985474 <https://reviews.llvm.org/D74651#1985474>, @rnk wrote:

> Arthur, now that you've worked with the names a bit, do you feel like they make sense? Would you change them?


`@llvm.call.alloc` is weird because it's not allocating anything, the allocation happens in `@llvm.call.setup`. Maybe `@llvm.call.arg` is better?



================
Comment at: llvm/lib/IR/Verifier.cpp:1674
+  if (Attrs.hasAttribute(Attribute::Preallocated)) {
+    Assert(Attrs.getPreallocatedType() ==
+               cast<PointerType>(Ty)->getElementType(),
----------------
efriedma wrote:
> Do you need to check `Attrs.getPreallocatedType()->isSized()`, or something like that?  Or is that checked elsewhere?
Piggybacked off existing checks below, thanks for catching.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D74651





More information about the llvm-commits mailing list