[PATCH] D77830: [RFC] Generate more constant iVar Offsets via global LTO analysis

John McCall via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 13 15:47:34 PDT 2020


rjmccall added a comment.

In D77830#1979112 <https://reviews.llvm.org/D77830#1979112>, @alexbdv wrote:

> @rjmccall - It can be implemented, sure but it would require extra logic that is not included here.


Can you explain why it needs extra logic?  I would expect that the way this works is:

- Either in IRGen or in some pass, we build class-internal ivar summaries
- Some other pass recognizes that it has enough information to make the ivar layout constant and does the appropriate transformations

Are the passes LTO-specific for some reason?

> How common is this scenario ? I was targeting LTO only for now. Would it be OK to leave this as a TODO ?

The most common pattern is to emit one `@implementation` per `.m`, but I've certainly seen groups of related classes in a single file before.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D77830





More information about the llvm-commits mailing list