Revert "Mostly remove refcount thrashes of value in setAttribute."
This reverts commit 6a1fac8e. Reason for revert: <INSERT REASONING HERE> Original change's description: > Mostly remove refcount thrashes of value in setAttribute. > > Relanding https://chromium-review.googlesource.com/c/chromium/src/+/2351950 > > This mostly removes the refcount thrashes in Element::setAttribute() > which accounts for nearly 13% of regression in blink_perf.bindings > set-attribute.html story when StringImpl is made threadsafe. > > Because of some reentrant behavior in Element::setAttribute() -> > Element::SetAttributeInternal() -> Element::DidModifyAttribute() -> > Element::AttributeChanged() -> Element::ParseAttribute() -> > Element::setAttribute(), the qname for the Attribute, the old value, > and the new value cannot be easily transfered into the Element's internal > ElementData::Attributes() collection while also publishing the change to > observers via the DidModifyAttribute() call. Removal of that thrash will > be done in a follow-up CL. > > Bug: 1083392 > Change-Id: I7f7f4bfa22a2e553e703c0375bd04bb77f71de23 > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2369348 > Reviewed-by: Jeremy Roman <jbroman@chromium.org> > Commit-Queue: Albert J. Wong <ajwong@chromium.org> > Auto-Submit: Albert J. Wong <ajwong@chromium.org> > Cr-Commit-Position: refs/heads/master@{#801214} TBR=ajwong@chromium.org,jbroman@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: 1083392,1121429 Change-Id: Ia42214b62e1efc218afb055fcc60bea52039587c Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2376705Reviewed-by:Jeremy Roman <jbroman@chromium.org> Commit-Queue: Jeremy Roman <jbroman@chromium.org> Cr-Commit-Position: refs/heads/master@{#801763}
Showing
Please register or sign in to comment