> On Nov 20, 2019, at 2:46 PM, Saagar Jha <saa...@saagarjha.com> wrote: > > I am curious why this optimization went in instead of guarded speculative > inlining, which would let you keep dynamism.
If I understand it correctly, that only 'inlines' (really caches) the resolved method address for the call site. That's not much of a win in Obj-C where method lookup is already quite fast. The real win comes with literally inlining the method at compile time. Link-Time Optimization allows _any_ method anywhere in the program to be inlined, provided the call is monomorphic. And this new feature allows monomorphic method calls in Obj-C. This is a big win for small method like getters/setters, and for methods with only one call site (i.e. where you factor out a method for readability even though it's only used in one place.) —Jens _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com