Investigate if there is anything to optimize in IonSetPropertyIC or in its usage

NEW
Unassigned

Status

()

defect
P3
normal
2 years ago
2 years ago

People

(Reporter: smaug, Unassigned)

Tracking

(Blocks 1 bug)

unspecified
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox57 affected)

Details

(Reporter)

Description

2 years ago
See for example
https://perfht.ml/2vXIR2K
Since bug 1388388 we should attach a stub to call SetObjectElement directly instead of going through IonSetPropertyIC::update. It's not clear from the profile why that's not working here.
Blocks: 1245279
Flags: needinfo?(jdemooij)
Priority: -- → P3
It looks like this is an object with many properties so we convert it to dictionary mode. The IC does not handle new dictionary properties so we disable it.

In tryAttachAddSlotStub, we could add an IC stub that guards the object is inDictionaryMode and then we can just call SetObjectElement...

Also the profile reveals a bunch more silly perf bugs on the SetProperty path that I wasn't aware of yet. Will fix.
Flags: needinfo?(jdemooij)
Depends on: 1401577
You need to log in before you can comment on or make changes to this bug.