This is what I am currently working on, see bug 1046792.
Just had a meeting with Kannna last night, some notes (not sure whether I misunderstood, will double check later):
Telescoping shape optimization
If there's a chain A->B->C->D, and both A and D have property |x|. When |x| is added to B or C, D's shape will be updated. So when you know A and D have property |x|, you can check only A and D's shape to make sure the property is not updated on the chain next time.
Shadow property
For instance there's a prototype chain A->B, if both A and B have a property |x|, then B's |x| is in the shadow of A's |x|, which can't be seen.
Baseline stubs
- Can be shared among different ICs, see pointer |stubCode_| of class ICStub.
- The key of ICStubCompiler is the key of a hash map storing stub codes.
- It is removed rarely after attaching, for example when fallback notices too many are created.
ValueOperand
R0 actually holds a boxed value, which occupies 2 registers on 32bit platform, for example r3, r2 on ARM (see src/jit/arm/BaselineRegisters-arm.h). One is for type and one is for payload.
No comments:
Post a Comment