Revert 167998 "Oilpan: automate TraceTrait/ObjectAliveTrait for ..."

> Oilpan: automate TraceTrait/ObjectAliveTrait for non-leftmost deriving classes
> 
> Note: This is a port of https://codereview.chromium.org/177173002/ landed in the branch.
> 
> This CL introduces GarbageCollectedMixin interface, and its implementation helper macro USING_GARBAGE_COLLECTED_MIXIN to automatically define TraceTrait/ObjectAliveTrait on non-leftmost deriving classes which need to be garbage collected.
> 
> Consider the following case:
> class B {};
> class A : public GarbageCollected, public B {};
> 
> We can't correctly handle "Member<B> p = &a" as we can't compute addr of object header statically. This can be solved by using GarbageCollectedMixin:
> class B : public GarbageCollectedMixin {};
> class A : public GarbageCollected, public B {
>   USING_GARBAGE_COLLECTED_MIXIN(A)
>   };
> 
>   With the helper, as long as we are using Member<B>, TypeTrait<B> will dispatch adjustAndMark dynamically to find collect addr of the object header. Note that this is only enabled for Member<B>. For Member<A> which we can compute the object header addr statically, this dynamic dispatch is not used.
> 
> BUG=None
> R=ager@chromium.org
> 
> Review URL: https://codereview.chromium.org/182613004

TBR=kouhei@chromium.org

Review URL: https://codereview.chromium.org/182913002

git-svn-id: svn://svn.chromium.org/blink/trunk@167999 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Mark inspector/profiler/canvas2d/canvas-replay-log-grid.html as failing after r167914

TBR=yurys,pkasting,ojan

git-svn-id: svn://svn.chromium.org/blink/trunk@168000 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Gardening: mark failing tests

TBR=apavlov

git-svn-id: svn://svn.chromium.org/blink/trunk@168001 bbb929c8-8fbe-4397-9dbb-9b2b20218538
StylePropertySerializer::asText should genearete collect string for background property.

StylePropertySerializer::asText cannot treat background shorthand property correctly.

For example, some StylePropertySet created from "background: none;" is given,
StylePropertySerializer::asText generates:
"background-image: none; background-position: initial initial; background-repeat: initial initial;".

However, background-position and background-repeat is implicit initial value. We cannot use "initial".
And we cannot use either "background-position: initial initial" or "background-repeat: initial initial" as
style element's textContent.

BUG=251510
TESTS=fast/css/background-serialize.html

Review URL: https://codereview.chromium.org/16858019

git-svn-id: svn://svn.chromium.org/blink/trunk@168002 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove Perl from run-bindings-tests

Followup to:
IDL compiler: switch build to Python compiler
https://codereview.chromium.org/166333002/

BUG=239771
R=haraken

Review URL: https://codereview.chromium.org/181003006

git-svn-id: svn://svn.chromium.org/blink/trunk@168003 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove the shouldCollectGarbageSoon flag from V8PerIsolateData

- No one calls setShouldCollectGarbageSoon(), so we can remove it.

- hintForCollectGarbage() always returns false because no one sets the shouldCollectGarbageSoon flag. Thus we can remove hintForCollectGarbage().

BUG=341032

Review URL: https://codereview.chromium.org/179873012

git-svn-id: svn://svn.chromium.org/blink/trunk@168004 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Eliminate recursion in SVGTextMetricsBuilder::walkTree

This tree-traveral can be trivially rewritten as a pre-order traversal
using RenderObject::nextInPreOrderAfterChildren.

Also fold the branches in the RenderSVGInlineText case to reduce the
number of callsites to measureTextRenderer.

Review URL: https://codereview.chromium.org/175323002

git-svn-id: svn://svn.chromium.org/blink/trunk@168005 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fixing a crash in InsertListCommand.

There are two crash causes: 1.Range and 2.InsertListCommand.
1. Range:
   In processAncestorsAndThierSiblings, it iterates siblings and remove each sibling.
  Because removeChild might kick a “SubtreeModified” event which might change the tree structure,
  ancestor might be not a parent of child at a next iteration. We should check it.

2. InsertListCommand:
 The doApply function does nothing when endingSelection().rootEditableElement() is Null.
 Because L124 setEndingSelection might change endingSelection(), we should check again.

BUG=344280

Review URL: https://codereview.chromium.org/181283002

git-svn-id: svn://svn.chromium.org/blink/trunk@168006 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Use glyph-ids for lookups of SVG font kerning-pairs

This CL eliminates the SVGTextMetrics::Glyph class in favor
of a simple Glyph (glyph-id). This shrinks SVGTextMetrics
objects by two pointers, and avoids the allocation of tiny
(often single-character/code-unit) strings.

It achieves this by replacing the linear kerning-pair lookup
with a table (HashMap) indexed by a key made up of the glyph id's of the two glyphs.

Review URL: https://codereview.chromium.org/181443002

git-svn-id: svn://svn.chromium.org/blink/trunk@168007 bbb929c8-8fbe-4397-9dbb-9b2b20218538
DevTools: Replace Apple styled spinner icon with Chromium one.

Drive-by: replace animated PNG files with a CSS animation.

R=yurys@chromium.org

Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=167914

Review URL: https://codereview.chromium.org/181433002

git-svn-id: svn://svn.chromium.org/blink/trunk@168008 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Rebase websocket/long-invalid-header.html

The long-invalid-header.html test doesn't really test anything
interesting in the new implementation. It is just another case of
"garbage in the response headers". In this case there are none of the
required response headers, so the new implementation reports "Missing
Upgrade header". Rebase.

BUG=339373

Review URL: https://codereview.chromium.org/181183003

git-svn-id: svn://svn.chromium.org/blink/trunk@168009 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove support for the obsolete <isindex> tag.

This patch removes all special-casing for the <isindex> tag; it
now behaves exactly like <foo> in all respects. This additionally
means that we can remove the special-casing for forms containing
<input name="isindex"> as their first element.

The various tests for <isindex> have been deleted, with the
exception of the imported HTML5Lib tests. It's not clear that
we should send them patches to remove the <isindex> tests, at
least not while the element is (an obsolete) part of HTML5, and
supported by other vendors.

I've just landed failing test results here. That seems like
the right thing to do.

"Intent to Remove" discussion: https://groups.google.com/a/chromium.org/d/msg/blink-dev/14q_I06gwg8/0a3JI0kjbC0J

Review URL: https://codereview.chromium.org/96653004

git-svn-id: svn://svn.chromium.org/blink/trunk@168010 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Multiple segment shape-inside polygon causes assertion failed with shape-outside iframe

When we positioned a float inside a shape-inside in RenderBlockFlow::computeLogicalLocationForFloat,
we modified the left and right offsets only when we had a shape exactly with 1 segment. Lack of setting
the left/right offset for multiple-segments cases lead the float positioned out of the boundaries of the
shape, which lead to an assert in the calculation of segmentranges (LineBreaker::nextLineBreak).

This patch modifies the code to set the left/right offsets for the float to the first segment in a multiple-
segment shape case in shape-inside. The correct multiple-segment support for shape-inside requires more
attention, and it's out of the scope of this patch, so I didn't do any additional changes on the code.

BUG=344359

Review URL: https://codereview.chromium.org/176963010

git-svn-id: svn://svn.chromium.org/blink/trunk@168011 bbb929c8-8fbe-4397-9dbb-9b2b20218538