[PATCH] D79636: [LangRef] Clarify the semantics of the `byval` attribute
Reid Kleckner via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Sat May 9 08:29:20 PDT 2020
rnk added a comment.
Some copy editing comments, but I agree with the semantics: From the IR perspective, it is better to think of argument stack memory as belonging to the callee. A byval argument has more in common with a local static alloca than a passed in pointer.
================
Comment at: llvm/docs/LangRef.rst:1046
structs and arrays by value, but is also valid on pointers to
- scalars. The copy is considered to belong to the caller not the
- callee (for example, ``readonly`` functions should not write to
- ``byval`` parameters). This is not a valid attribute for return
- values.
+ scalars The copy is conceptually made on the call edge. This means that
+ the pointer argument at the call site refers to the original memmory and
----------------
Missing period? "scalars The copy"
================
Comment at: llvm/docs/LangRef.rst:1047
+ scalars The copy is conceptually made on the call edge. This means that
+ the pointer argument at the call site refers to the original memmory and
+ the pointer argument in the callee is refering to the copy. Attributes on
----------------
typo "memmory"
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D79636/new/
https://reviews.llvm.org/D79636
More information about the cfe-commits
mailing list