Open Bug 1297604 Opened 8 years ago Updated 7 months ago

Consider hoisting some shape guards even if we had shape guard failures

Categories

(Core :: JavaScript Engine: JIT, defect, P3)

defect

Tracking

()

Tracking Status
firefox51 --- affected

People

(Reporter: bzbarsky, Unassigned)

References

Details

Right now a shape guard failure anywhere in a function, even in cold code, will deoptimize (force to not be loop-hoistable) shape guards everywhere in the function.  This severely hampers LICM...

Could we do something smarter to avoid the problems bug 806793 was trying to do?  dvander mentioned not hoisting shape guards out of conditionals in there, for example...
Priority: -- → P3
We just talked about this this week. We really want to do this for every kind of guard. We need obviously need to track which guard failed, but we also need to figure out what to when guards are folded together.
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.