Reland r167107.

Provide THUMB version of pushAllRegisters trampoline when -mthumb is on.

Interworking does not seem to work correctly for component build and pushAllRegisters ends up being called from THUMB code without correct mode switch which causes SIGILL. When the whole Blink is built with -mthumb it is perfectly correct to build pushAllRegisters as thumb code as well (only r4 - r7 need to be saved).

This version relies on CPP directives for conditional compilation instead of using .if/.else.

BUG=

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167305 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Timeline: use Array.mergeOrdered() to merge records

R=alph@chromium.org, alph, vsevik
BUG=

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167306 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Oilpan: Build fix after r167288

r167288 broke oilpan's build:
http://chromegw.corp.google.com/i/chromium.webkit/builders/WebKit%252520Linux%252520Oilpan/builds/991/steps/compile/logs/stdio#error1

This CL fixes the build by replacing nullptr with 0.

TBR=tkent

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167307 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Use clipRRect instead of clipPath to clip out rounded rects.

Changes clipping out of rounded rects to use clipRRect instead generic
clipPath. This is particularly important for GPU rasterization, where ops
with generic paths are expensive.

Note that this will change the results of 67 layout tests. This is to be
expected, because Skia's RRect uses analytic circles for the rounded corners,
instead of an approximation by splines.

R=esprehn@chromium.org
BUG=343735

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167308 bbb929c8-8fbe-4397-9dbb-9b2b20218538
DevTools: Do not provide @href for anchors with the javascript: scheme

Linkified javascript: URLs in the DOM tree should not be navigable at all

R=eustas, pfeldman, vsevik
BUG=344352

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167309 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Revert 167307 "Oilpan: Build fix after r167288"

Mixing nullptr and 0 causes a build issue
since OwnPtr expects nullptr but RawPtr expects 0.

See https://codereview.chromium.org/170183002/ for more details.


> Oilpan: Build fix after r167288
> 
> r167288 broke oilpan's build:
> http://chromegw.corp.google.com/i/chromium.webkit/builders/WebKit%252520Linux%252520Oilpan/builds/991/steps/compile/logs/stdio#error1
> 
> This CL fixes the build by replacing nullptr with 0.
> 
> TBR=tkent
> 
> Review URL: https://codereview.chromium.org/170183002

TBR=haraken@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167310 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Gardening: Mark virtual/threaded/animations/timing-model.html as flaky for Debug builds

This test has been randomly failing for a while in Debug bots for different platforms,
so now adding [ Pass Failure ] expectations for it.

BUG=344367
TBR=eae,abinader,alph
NOTRY=true

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167311 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Revert 167288 "Oilpan: Move core/storage/ to oilpan"

Mixing nullptr and 0 causes a build issue,
since OwnPtr expects nullptr but RawPtr expects 0.

See https://codereview.chromium.org/170183002/ for more details.

> Oilpan: Move core/storage/ to oilpan
> 
> This CL moves Storage and StorageArea to oilpan's heap.
> This CL does not move WebStorageArea to oilpan's heap
> since it's an exposed class to outside Blink.
> Maybe we will move WebStorageArea in the future, but not in this CL.
> 
> BUG=340522
> 
> Review URL: https://codereview.chromium.org/167913004

TBR=haraken@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167312 bbb929c8-8fbe-4397-9dbb-9b2b20218538
We've replaced SharedPersistent with ScopedPersistent or ScriptValue before, but a couple of SharedPersistents are remaining. So this CL replaces them.

Ideally we want to remove SharedPersistent though.

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

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167313 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Improve MediaStream and RTCDTMFSender exception messages.

BUG=270033

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167314 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Temporarily skip editing/selection/move-left-right.html

The expectations will be updated after the TextInputController changes
landed

TBR=tfarina@chromium.org,tkent@chromium.org
BUG=331301

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167315 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Revert of Flip the TargetedStyleRecalc flag to status=stable. (https://codereview.chromium.org/163613010/)

Reason for revert:
Broke DataGrids in DevTools. Please see crbug.com/344445

Original issue's description:
> Flip the TargetedStyleRecalc flag to status=stable.
> 
> BUG=335247
> 
> Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=167245

TBR=ojan@chromium.org,eseidel@chromium.org,chrishtr@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=335247

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167316 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Post inspector related worker tasks to a separate queue

Instead of using one queue with multiple modes, we use two queues. For each
inspector task, we post a tickle task to the main queue that will execute one
inspector task from the inspector queue.

If the worker is paused, tasks from the inspector queue are directly executed.

Also rip out the predicate support from MessageQueue as it's no longer used.

BUG=301514
R=yurys@chromium.org,pfeldman@chromium.org,kinuko@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167317 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Improve sync XMLHttpRequest exception messages.

BUG=270033

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167318 bbb929c8-8fbe-4397-9dbb-9b2b20218538
DevTools: Better handle colon/semicolon key events in style declarations

BUG=339487

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167319 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Improve SourceBuffer exception messages.

BUG=270033

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167320 bbb929c8-8fbe-4397-9dbb-9b2b20218538
CSP 1.1: Revert CSSOM changes.

In r166627 and r166494, we changed CSP 1.1 to block certain CSSOM
operations if 'unsafe-eval' isn't present in a 'style-src' directive.
This seems to be incompatible with the web; it broke every site using
jQuery, GitHub, etc.

It's not clear that we can (or want to) persue this change; reverting
it for now while we chat about it again in the WG.

BUG=336413,343970

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167321 bbb929c8-8fbe-4397-9dbb-9b2b20218538
ShadowRoot should support adjacent rules (~ and +) and positional rules (:nth-child and :nth-of-type).

Since shadowRoot is not an element, shadow root should also have the same logic as an element has, i.e. childrenAffectedByPositionalRules, childrenAffectedByDirectAdjacentRules, and so on.

SelectorChecker should use parentElementOrShadowRoot to check siblings when positional rules or adjacent rules are given.

BUG=337573
TEST=fast/dom/shadow/sibling-rules-under-shadow-root.html

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167322 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Web Animations: Remove didTriggerStyleRecalc from Player::update

This patch removes the plumbing of didTriggerStyleRecalc from the
code around updating players and timed items. The flag is used to
decide if we want to unfreeze the animation clock, which normally
happens after a style recalc.

I have removed the tests for this boolean in this patch. Correctly
testing the behaviour requires a bit of set up. When we later have
an internals api to count style recalcs, we can test the behaviour
with layout tests.

For more context crrev.com/46043014 added the flag originally.

BUG=334937

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

git-svn-id: svn://svn.chromium.org/blink/trunk@167323 bbb929c8-8fbe-4397-9dbb-9b2b20218538
DevTools: [JsDocValidator] Update jar that failed to land in r167199

Seems like a CQ issue (original code review: https://codereview.chromium.org/166483003).

TBR=vsevik

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

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