Commit Graph

366 Commits

Author SHA1 Message Date
Mats Palmgren
e6e3e1829a Bug 1377135 - Use LookupForAdd instead of Get+Put to avoid unnecessary hashtable lookups in nsRefreshDriver::AddImageRequest. r=froydnj
MozReview-Commit-ID: 4h0fvadmBn0
2017-06-29 20:53:46 +02:00
Olli Pettay
6f309a81d2 Bug 1375491, make child process to cache ime properties only at animation tick time, r=masayuki 2017-06-29 14:46:11 +03:00
Bill McCloskey
ce42826bdf Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Olli Pettay
6416d12291 Bug 1375484 - ScrollSelectionIntoViewEvent should be called during refresh driver tick, r=ehsan 2017-06-25 00:38:42 +03:00
Nicholas Nethercote
a58025002f Bug 1375392 - Tweak the PROFILER_LABEL* macros. r=mstange.
This patch makes the following changes to the macros.

- Removes PROFILER_LABEL_FUNC. It's only suitable for use in functions outside
  classes, due to PROFILER_FUNCTION_NAME not getting class names, and it was
  mostly misused.

- Removes PROFILER_FUNCTION_NAME. It's no longer used, and __func__ is
  universally available now anyway.

- Combines the first two string literal arguments of PROFILER_LABEL and
  PROFILER_LABEL_DYNAMIC into a single argument. There was no good reason for
  them to be separate, and it forced a '::' in the label, which isn't always
  appropriate. Also, the meaning of the "name_space" argument was interpreted
  in an interesting variety of ways.

- Adds an "AUTO_" prefix to PROFILER_LABEL and PROFILER_LABEL_DYNAMIC, to make
  it clearer they construct RAII objects rather than just being function calls.
  (I myself have screwed up the scoping because of this in the past.)

- Fills in the 'js::ProfileEntry::Category::' qualifier within the macro, so
  the caller doesn't need to. This makes a *lot* more of the uses fit onto a
  single line.

The patch also makes the following changes to the macro uses (beyond those
required by the changes described above).

- Fixes a bunch of labels that had gotten out of sync with the name of the
  class and/or function that encloses them.

- Removes a useless PROFILER_LABEL use within a trivial scope in
  EventStateManager::DispatchMouseOrPointerEvent(). It clearly wasn't serving
  any useful purpose. It also serves as extra evidence that the AUTO_ prefix is
  a good idea.

- Tweaks DecodePool::SyncRunIf{Preferred,Possible} so that the labelling is
  done within them, instead of at their callsites, because that's a more
  standard way of doing things.
2017-06-22 17:08:53 +10:00
Carsten "Tomcat" Book
238bf154d5 Backed out changeset 4f6302a98ae4 (bug 1372405) 2017-06-21 13:59:26 +02:00
Bill McCloskey
67e8af4720 Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-20 21:44:11 -07:00
Carsten "Tomcat" Book
bbe9441993 Backed out changeset 9846de3bd954 (bug 1372405) 2017-06-20 08:27:02 +02:00
Bill McCloskey
f69608368b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-19 22:25:47 -07:00
Olli Pettay
39a6cfd852 bug 1373085, don't stop running idle tasks while waiting for composite to notify about its end, r=farre 2017-06-16 22:49:22 +03:00
Nicholas Nethercote
9ae0762bf5 Bug 1370329 (part 1) - Clean up the profiler's RAII classes. r=mstange.
This patch does the following renamings, which increase consistency.

- GeckoProfilerInitRAII -> AutoProfilerInit
- GeckoProfilerThread{Sleep,Wake}RAII -> AutoProfilerThread{Sleep,Wake}
- GeckoProfilerTracingRAII -> AutoProfilerTracing
- AutoProfilerRegister -> AutoProfilerRegisterThread
- ProfilerStackFrameRAII -> AutoProfilerLabel
- nsJSUtils::mProfilerRAII -> nsJSUtils::mAutoProfilerLabel

Plus a few other minor ones (e.g. local variables).

The patch also add MOZ_GUARD_OBJECT macros to all the profiler RAII classes
that lack them, and does some minor whitespace reformatting.
2017-06-07 12:33:19 +10:00
Olli Pettay
c08aeee071 Bug 1367905 - Try to run GC/CC slices, including forgetSkippable, during idle time, r=mccr8 2017-06-10 02:38:50 +03:00
Wes Kocher
d94d0e78b3 Backed out 2 changesets (bug 1367905) for a spike in Windows reftest failures a=backout
Backed out changeset c5aaa3f7b79e (bug 1367905)
Backed out changeset 1c66da2b1e88 (bug 1367905)

MozReview-Commit-ID: IX632WoWHrO
2017-06-08 16:09:28 -07:00
Olli Pettay
01a6a06f80 Bug 1367905 - Try to run GC/CC slices, including forgetSkippable, during idle time, r=mccr8 2017-06-07 23:46:31 +03:00
Carsten "Tomcat" Book
4960a7d0ca Backed out changeset ff33e6c6f6a5 (bug 1367905) for memory leaks 2017-06-07 15:13:37 +02:00
Olli Pettay
e0c64e438d Bug 1367905 - Try to run GC/CC slices, including forgetSkippable, during idle time, r=mccr8 2017-06-06 20:41:34 +03:00
Mantaroh Yoshinaga
1aeab06797 Bug 1367981 - Use AutoTArray instead of nsCOMArray in Tick(). r=smaug
MozReview-Commit-ID: 48baDUvkTMc
2017-05-26 16:22:34 +09:00
Andreas Farre
133e7398de Bug 1311425 - Prepare for handling several sources of idleness, r=smaug 2017-05-24 21:11:12 -04:00
Bill McCloskey
c402a046c2 Bug 1363560 - Name more runnables (r=mccr8)
MozReview-Commit-ID: 3hxZDA4JlTV
2017-05-09 21:53:25 -07:00
Olli Pettay
48a8ebc184 Bug 1352523, enable high priority vsync processing in e10s parent process, r=ehsan 2017-04-12 12:53:48 +03:00
Sebastian Hengst
b16b590243 Backed out changeset c5123cf34c22 (bug 1352523) for failing browser_parsable_css.js for chrome://webide/skin/logs.css. r=backout 2017-04-11 16:21:23 +02:00
Olli Pettay
0bb9a7e7e3 Bug 1352523, enable high priority vsync processing in e10s parent process, r=ehsan 2017-04-10 19:02:54 +03:00
Timothy Nikkel
cafba44425 Bug 1352074. Remove high precision timer mode from refresh driver because it is not needed with vsync based refresh drivers. r=mchang
Bug 731974 added this code to get more accurate timer callbacks back when the refresh driver was based on timers. It shouldn't be needed anymore now that the refresh driver is based on vsync.
2017-04-04 00:14:28 -05:00
Emilio Cobos Álvarez
f6d2513b77 Bug 1351275: Move style flush observer logic to nsIPresShell, and align layout observing code. r=bholley
MozReview-Commit-ID: 2oUTNfTS4Ku
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-03-29 15:41:11 +02:00
Emilio Cobos Álvarez
e6f1a62f0d Bug 1351275: Cleanup nsRefreshDriver observer array handling to avoid walking them twice. r=bholley
MozReview-Commit-ID: Jnwb9HtSjoC
Signed-off-by: Emilio Cobos Álvarez <emilio@crisal.io>
2017-03-29 15:32:14 +02:00
Wes Kocher
82cb89d1e7 Merge m-c to inbound, a=merge
MozReview-Commit-ID: HwfVdTF9Np5
2017-03-23 16:55:48 -07:00
Nicholas Nethercote
96e9ad0beb Bug 1349856 - Reinstate proper usage of mReflowCause. r=froydnj.
Bug 1322553 introduced GeckoProfilerTracingRAII. Part 2 converted a bunch of
places to use it, but messed one of them up:

> -          profiler_tracing("Paint", "Reflow", Move(mReflowCause), TRACING_INTERVAL_START);
> +          tracingLayoutFlush.emplace("Paint", "Reflow");

The Move(mReflowCause) was erroneously deleted. (There was a similar case with
Move(mStyleCause) that was not deleted.)

This patch reinstates the Move(mReflowCause).
2017-03-23 17:15:54 +11:00
KuoE0
51884664e5 Bug 1342863 - (Part 8) DocGroup labeling for timer callback in nsRefreshDriver. r=dholbert
MozReview-Commit-ID: DP7WFkvlrPq
2017-03-15 17:38:53 +08:00
KuoE0
dfa8cad22c Bug 1342863 - (Part 5) DocGroup labeling for runnables dispatched by NS_DispatchTo(Main|Current)Thread in nsRefreshDriver. r=dholbert
MozReview-Commit-ID: CzddDOagdfZ
2017-03-15 12:15:24 +08:00
Carsten "Tomcat" Book
20eea54f06 Backed out changeset 1c8548bdac7f (bug 1342863) 2017-03-23 08:41:28 +01:00
Carsten "Tomcat" Book
e14dbe69c7 Backed out changeset ca409f78c8a3 (bug 1342863) 2017-03-23 08:41:18 +01:00
KuoE0
e3ac8968d0 Bug 1342863 - (Part 8) DocGroup labeling for timer callback in nsRefreshDriver. r=dholbert
MozReview-Commit-ID: DP7WFkvlrPq
2017-03-15 17:38:53 +08:00
KuoE0
4bccf66ec7 Bug 1342863 - (Part 5) DocGroup labeling for runnables dispatched by NS_DispatchTo(Main|Current)Thread in nsRefreshDriver. r=dholbert
MozReview-Commit-ID: CzddDOagdfZ
2017-03-15 12:15:24 +08:00
Olli Pettay
4b1eb60097 Bug 1346644 - Disable high priority vsync handling in parent process, r=ehsan 2017-03-13 18:25:10 +02:00
Samael Wang
fb90ba2dfe Bug 1283947 - Clear pending transactions when ClientLayerManager is assigning to a different refresh driver. r=mattwoodrow 2017-03-09 18:35:50 +08:00
Hiroyuki Ikezoe
45e09acb30 Bug 1341985 - We call EnsureTimerStarted on the main-thread after the traversal. r=heycam
We end up calling it in SequentialTask for updating CSS animations.

MozReview-Commit-ID: 7ip5XzU0VFb
2017-03-10 11:53:17 +09:00
Markus Stange
acf5c880f1 Bug 1340709 - Rename the profiler tracing marker for the refresh driver tick from RD to RefreshDriverTick. r=mattwoodrow
MozReview-Commit-ID: 9yrrH3T6l4c
2017-02-17 20:10:38 -05:00
Markus Stange
50d3418d30 Bug 1340709 - Add profiler tracing markers for more phases of the refresh tick. r=mattwoodrow
This adds markers for FireScrollEvent, DispatchSynthMouseMove, ForwardTransaction, and NotifyDidPaint.

MozReview-Commit-ID: 9XahFGzIOls
2017-02-17 13:03:37 -05:00
Carsten "Tomcat" Book
3dcf68221c Merge mozilla-central to autoland 2017-02-20 14:12:30 +01:00
Olli Pettay
dbf7550aa2 Bug 1340869, crash @ RefreshDriverVsyncObserver::RecordTelemetryProbes, r=stone 2017-02-20 10:24:46 +02:00
Hiroyuki Ikezoe
72d06432c0 Bug 1340340 - Stop mutating nsRefreshDriver during parallel traversal. r=heycam
MozReview-Commit-ID: D5VYPWXm5jO
2017-02-20 14:37:13 +09:00
Tom Tromey
a4b717ab39 Bug 1060419 - make log_print use Printf.h, r=froydnj
MozReview-Commit-ID: BIZ1GQEZ1vs
2016-12-15 20:16:31 -07:00
Carsten "Tomcat" Book
a5c0126a56 Merge mozilla-central to autoland 2017-02-17 13:28:16 +01:00
Matt Woodrow
96389b5cf7 Bug 1302071 - Part 1: Remove AddPresShellToInvalidateIfHidden since it doesn't appear to be necessary. r=tnikkel
We added this so that MozAfterPaint events would be delivered to hidden documents as part of bug 539356, but I don't remember what needed it.
It doesn't appear to be necessary for any tests any more, so let's just get rid of it

MozReview-Commit-ID: HcmIjstZyLQ
2017-02-17 11:49:29 +13:00
Olli Pettay
badea56908 Bug 1339135, if processing high priority vsyncs takes too much time, fallback to normal priority, r=afarre 2017-02-16 18:50:44 +02:00
Neil Deakin
bbadbd2016 Bug 1109868, panels should watch their anchors for position and visibility changes and update accordingly, r=tn 2017-02-16 08:53:59 -05:00
Cameron McCormack
87f3ad6dfb Bug 1297899 - Part 6: Move RestyleManagerHandle functionality into RestyleManager. r=bholley
MozReview-Commit-ID: 7lsti0bGzNr
2017-02-13 11:21:33 +08:00
Cameron McCormack
61f5edfdb9 Bug 1297899 - Part 1: Rename RestyleManager.{h,cpp} to GeckoRestyleManager.{h,cpp}. r=bholley
MozReview-Commit-ID: 1v0ufuGFtiD
2017-02-13 11:21:30 +08:00
Olli Pettay
b5d4262b3e Bug 1338887, try to avoid extra allocations when dispatching animation events, r=mantaroh 2017-02-13 12:22:21 +02:00
Olli Pettay
26386f2fa1 Bug 1315570, vsync handling in parent process' main thread should use high priority runnables, r=ehsan 2017-02-11 16:59:36 +02:00