-
-
Notifications
You must be signed in to change notification settings - Fork 4.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUGFIX release] Fix inlining of superWrapper. #13655
Conversation
bugfix release or beta? |
This is functionally equivalent, and @krisselden has done research across a large number of mobile devices. It appears the devices this affected the most, are now in a minority, and the others are adversely affected by this. @rwjblue I think this could be |
I am happy with either here. We already have to do a 2.6.1 so |
@krisselden - Can you remove the |
FWIW - I think that |
have you met the run-loop ? 🏃 |
This fixes the inlining of superWrapper. The bug that copying the arguments was addressing has been fixed for long enough that more users are affected by fix than the fix benefits. This also fixes a deopt in the megamorphic load of toString, since we store metadata on functions we have many shapes of functions.
35155c2
to
a447c48
Compare
Thanks @krisselden! |
So beautiful! Thanks @krisselden and company! |
* Update tests to ensure that the global path must not be `undefined` * Fix issue with `Ember._Renderer` export * Remove `Ember.rewatch` export remnants (it was removed in #9323) * Remove `Ember.apply` export remnants (it was removed in #13655) * Remove `Ember.tryCatchFinally` export remnants (it was removed in #11547)
* Update tests to ensure that the global path must not be `undefined` * Fix issue with `Ember._Renderer` export * Remove `Ember.rewatch` export remnants (it was removed in emberjs#9323) * Remove `Ember.apply` export remnants (it was removed in emberjs#13655) * Remove `Ember.tryCatchFinally` export remnants (it was removed in emberjs#11547)
* Update tests to ensure that the global path must not be `undefined` * Fix issue with `Ember._Renderer` export * Remove `Ember.rewatch` export remnants (it was removed in emberjs#9323) * Remove `Ember.apply` export remnants (it was removed in emberjs#13655) * Remove `Ember.tryCatchFinally` export remnants (it was removed in emberjs#11547)
This fixes the inlining of superWrapper. The bug that copying the arguments was addressing has been fixed for long enough that more users are affected by fix than the fix benefits. This also fixes a deopt in the megamorphic load of toString, since we store metadata on functions we have many shapes of functions.
I also retested call vs apply branching in modern browsers and did not see any difference between the two.