[PATCH] D100739: [Coroutines] Handle overaligned frame allocation (2)
Yuanfang Chen via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Apr 23 14:44:04 PDT 2021
ychen added a comment.
In D100739#2712268 <https://reviews.llvm.org/D100739#2712268>, @lxfind wrote:
>> Sorry for the confusion. I think either overaligned or under-aligned could be used here to describe the problem: either "Handle overaligned frame" or "Fix under-aligned frame". Since c++ spec defines the former but not the later (https://en.cppreference.com/w/cpp/language/object#Alignment), my first intuition was to use the term "overalign". Under-aligned is the undesired outcome that should be fixed (probably too late to handle I assume). Also the overaligned is a static property whereas 'under-aligned" is a runtime property. From the compiler's perspective, I think overaligned should be preferred. With that said, I don't feel strongly about this. I could switch to use "overaligned" if that feels more intuitive.
>
> Here "overaligned frame" doesn't already occur.
It does occur. `FrameAlign > Shape.getSwitchCoroId()->getAlignment())` this check reflects the definition of C++ spec's definition of overalign.
> From what I understand, you really just want to support promise object alignment. So why not just say that directly?
This patch does not deal with promise in any specific way. It treats promise just like any other frame members.
> To add on that, I do think you need to describe the problem in more detail in the description. It's indeed still confusing.
Yep, will do that.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D100739/new/
https://reviews.llvm.org/D100739
More information about the llvm-commits
mailing list