Граф коммитов

541498 Коммитов

Автор SHA1 Сообщение Дата
Florian Quèze fd8b6d1c71 Bug 1372901 - Add a pseudo stack frame showing which module is being imported by a Cu.import call, r=mstange. 2017-06-15 00:58:25 +02:00
Ted Campbell 8b0a6d7518 Backed out changeset a40056f67040 (bug 1169746) for breaking six-speed benchmark 2017-06-14 18:25:29 -04:00
Andrew McCreight 9407ff76bb Bug 1372714 - Add an option to output parse_about_memory.py results in mebibytes. r=erahm
This makes it easier to compare results to about:memory.
2017-06-14 10:30:00 -07:00
Eric Rahm 225659c3fd Bug 1372667 - Part 2: Clean up path_total. r=mccr8
This attempts to make the path_total function more legible.

MozReview-Commit-ID: 4quRaQ4DV9j
2017-06-14 15:09:49 -07:00
Andrew McCreight 1c02e9be58 Bug 1372667 - Only count heap memory once in totals_heap. r=erahm 2017-06-13 11:59:00 -07:00
Eric Rahm 61c1bb639a Bug 1372437 - Part 2: Update paths to include slash for prefix match. r=mccr8
MozReview-Commit-ID: Br5FN3mOzYD
2017-06-14 15:09:47 -07:00
Eric Rahm a60afc36f3 Bug 1372437 - Part 1: Perform an exact match if path does not end in a slash. r=mccr8
This changes the about memory parser to only perform prefix matches if the
path ends in a '/'. For example:

> parse_about_memory.py memory-report.json.gz 'resident'

Will match the 'resident' node, but not 'resident-unique'.

MozReview-Commit-ID: CK2jAemGNDn
2017-06-14 15:09:46 -07:00
Ehsan Akhgari 02b2136122 Bug 1372761 - Avoid needlessly grabbing the timer thread lock when selections change in order to reset the caret timer; r=mats 2017-06-14 17:53:48 -04:00
Bill McCloskey d7df561295 Bug 1372426 - More detailed names for nsInputStreamReadyEvent (r=erahm)
MozReview-Commit-ID: 6beE0eMCxg7
2017-06-14 14:44:04 -07:00
Andrew Sutherland 13e936cdab Bug 1345421 - Part 2: Ensure mOriginsHavingData is up-to-date via flushing. r=baku
The intermittent failure appears to have been due to mOriginsHavingData
only being updated when the db thread flushes.  The db thread has a
hard-coded 5 second flush interval.  It's likely that e10s startup was
previously so slow that we were assured of having a flush happen by the
time our fresh process created its parent actor.

We correct this by reliably ensuring a flush before spinning up the
process to check preload state.  We also ensure a flush at the start of
the test for our check that there was no preload in the initial cases.
We were actually more vulnerable in that case, I believe, but as a
browser chrome test, there were no other tests that would have used
content localStorage.

We additionally ensure that the content process has received and
populated mOriginsHavingData by having the tab opening process wait for
about:blank to load in the process before actually opening our origin.
Prior to this change we were depending on orderings that aren't
guaranteed.

--HG--
extra : rebase_source : 92d3c675cee82ffe8b562e83860601e0c6dc1a9b
2017-06-12 04:52:21 -04:00
Andrew Sutherland c742aa9555 Bug 1345421 - Part 1: Clean up mechanism used to create fresh processes. r=baku
Bug 1345990 introduced a "forceNewProcess" argument in
BrowserTestUtils.openNewForegroundTab.  By switching to this we can
stop bloating the process count pref to try and produce equivalent
results.  To minimize test churn and because it doesn't really hurt to
double-check, the code that asserts that our tabs are each in different
processes and related book-keeping infrastructure have been left intact.

We also set a preference to disable preallocated processes in the interest
of maximizing test consistency and minimizing breakage.  It's conceivable
that a preallocated process might end up creating its StorageDBParent
actor prior to when we want, breaking things.  By ensuring the process
isn't created until we want it, we avoid a lot of brittleness.

--HG--
extra : rebase_source : 5736f7b2d06b720cefbe82eb6052e71b9fc14f23
2017-06-12 03:17:17 -04:00
Olli Pettay 0bb08227bb Bug 1372042 - Add telemetry about running collectors during idle time, r=mccr8 2017-06-14 23:41:22 +03:00
Ted Campbell 294999ca3a Bug 1368360 - Use distinct TDZCheckCache for for-of/for-in expression. r=shu
MozReview-Commit-ID: 6dS4wSFf4fB
2017-06-14 16:18:54 -04:00
Sebastian Hengst c267095078 Backed out changeset 0ee807301e66 (bug 1358898) for crashing in test_add_task_run_next_test.js during Linux build. r=backout 2017-06-14 21:25:49 +02:00
Ted Campbell d3fb13b80b Bug 1169746 - Support |super()| in Baseline. r=jandem
- Update BaselineIC for JSOP_SUPERCALL / JSOP_SPREADSUPERCALL
    - Support JSOP_SUPERFUN
    - Support JSOP_CHECKTHISREINIT

MozReview-Commit-ID: BlWsaUGeBqS
2017-06-14 15:08:51 -04:00
Ted Campbell d9a001a139 Bug 1169746 - Disable JSOP_SUPERCALL in IonBuilder. r=jandem
This opcode has been blocked on other missing opcodes for a long
    time and requires further testing before it is unblocked again.

MozReview-Commit-ID: 7oKkJwxjVu5
2017-06-14 15:08:40 -04:00
Ted Campbell 6b004bce24 Bug 1169745 - Support JSOP_SUPERBASE in Baseline. r=jandem
MozReview-Commit-ID: QA2j2Wsrs8
2017-06-14 15:08:32 -04:00
Ted Campbell 3c43c7e2f0 Bug 1169745 - JSOP_GETPROP_SUPER should Typescript::Monitor. r=jandem
MozReview-Commit-ID: IRRNhDBzMAF
2017-06-14 15:03:10 -04:00
Olli Pettay 48ebc09772 Bug 1358898, ensure AsyncFreeSnowWhite is run often enough, r=mccr8 2017-06-14 21:43:37 +03:00
Dan Minor 8e114807a7 Bug 1341285 - Fix lint errors in WebRtcAudioTrack.java; r=drno
--HG--
extra : rebase_source : 84981127cde93ca9de53d56ee29a4d8b00aebfeb
2017-06-14 08:38:07 -04:00
Ted Campbell ca0e63927f Bug 1169743 - Implement class decls with extends in Baseline (cont.) r=jandem
Add baseline support for
        JSOP_INITHOMEOBJECT
        JSOP_CLASSCONSTRUCTOR
        JSOP_DERIVEDCONSTRUCTOR

MozReview-Commit-ID: 1Vdfzq1DHuD
2017-06-14 14:08:35 -04:00
Brendan Dahl 79318e1a8c Bug 1370704 - Use retained layer manager in headless. r=jmuizelaar 2017-06-14 11:02:10 -07:00
Eden Chuang f9257bbf5b Bug 1345365 - Mochitest for PaymentRequest API canMakePayment() and abort(). r=baku
--HG--
extra : rebase_source : 854f2a94f2951f979c9bf5173c39c8fc1c11555c
2017-06-13 14:43:18 +08:00
Eden Chuang 5b3b71aae6 Bug 1345365 - PaymentRequest API canMakePayment(), abort() and show() implementation. r=baku
--HG--
extra : rebase_source : 1471c9b98cd919d411b22426c55bc3159d4d2f00
2017-06-14 15:59:00 +08:00
Jan Keromnes d14a6bb45e Bug 1372877 - Use nullptr in /js (clang-tidy: modernize-use-nullptr). r=nbp
--HG--
extra : rebase_source : cac11ab1f6be2dc44630aba992c2ce75d783fe66
2017-06-14 07:36:00 -04:00
Andrew Osmond fdb5476ee6 Bug 1365231 - WebRender should not use FLAG_HIGH_QUALITY_SCALING with RasterImage::GetImageContainer. r=jrmuizel 2017-06-14 12:53:07 -04:00
Ben Hearsum ef8dce082d bug 1359084: remove unused mozharness config file. r=asasaki 2017-06-14 12:40:26 -04:00
Michael Layzell e51690c5b9 Bug 1357829 - Part 4: Remove TickController, r=njn
MozReview-Commit-ID: 2IHa6ybR9ug
2017-06-14 12:27:52 -04:00
Michael Layzell 3e295cfe16 Bug 1357829 - Part 3: Remove profiler_get_stack_top, r=njn
MozReview-Commit-ID: C4DvuOvYSrs
2017-06-14 12:27:51 -04:00
Michael Layzell 7121551189 Bug 1357829 - Part 2: Use profiler_suspend_sample_thread in the background hang monitor, r=froydnj
This patch uses the profiler_suspend_sample_thread method which was added in
part 1.

With this patch, we no longer manually run code to pause the target thread,
instead using the profiler's provided code to do so. In addition, we no longer
manually walk the stack to collect native stack frames, instead relying on the
profiler's cross-platform stack walking logic.

This helps remove some of the code from ThreadStackHelper which was redundant
with the profiler. Much of the pseudostack code in ThreadStackHelper is also
redundant, and should hopefully be eliminated in a follow-up.

MozReview-Commit-ID: 4RjLHt6inH9
2017-06-14 12:27:49 -04:00
Michael Layzell 029576f19d Bug 1357829 - Part 1: Expose profiler_suspend_and_sample_thread, r=njn
This patch performs a refactoring to the internals of the profiler in order to
expose a function, profiler_suspend_and_sample_thread, which can be called from a
background thread to suspend, sample the native stack, and then resume the
target passed-in thread.

The interface was designed to expose as few internals of the profiler as
possible, exposing only a single callback which accepts the list of program
counters and stack pointers collected during the backtrace.

A method `profiler_current_thread_id` was also added to get the thread_id of the
current thread, which can then be passed by another thread into
profiler_suspend_sample_thread to sample the stack of that thread.

This is implemented in two parts:

1) Splitting SamplerThread into two classes: Sampler, and SamplerThread.

Sampler was created to extract the core logic from SamplerThread which manages
unix signals on android and linux, as well as suspends the target thread on all
platforms. SamplerThread was then modified to subclass this type, adding the
extra methods and fields required for the creation and management of the actual
Sampler Thread.

Some work was done to ensure that the methods on Sampler would not require
ActivePS to be present, as we intend to sample threads when the profiler is not
active for the Background Hang Reporter.

2) Moving the Tick() logic into the TickController interface.

A TickController interface was added to platform which has 2 methods: Tick and
Backtrace. The Tick method replaces the previous Tick() static method, allowing
it to be overridden by a different consumer of SuspendAndSampleAndResumeThread,
while the Backtrace() method replaces the previous MergeStacksIntoProfile
method, allowing it to be overridden by different consumers of
DoNativeBacktrace.

This interface object is then used to wrap implementation specific data, such as
the ProfilerBuffer, and is threaded through the SuspendAndSampleAndResumeThread
and DoNativeBacktrace methods.

This change added 2 virtual calls to the SamplerThread's critical section, which
I believe should be a small enough overhead that it will not affect profiling
performance. These virtual calls could be avoided using templating, but I
decided that doing so would be unnecessary.

MozReview-Commit-ID: AT48xb2asgV
2017-06-14 12:27:48 -04:00
Andrew Osmond 9e4c9d88a1 Bug 1365927 - Part 6. Remove CompositorThreadHolder reference from CompositorBridgeParent. r=dvander 2017-06-14 11:40:00 -04:00
Andrew Osmond cafe9dcd45 Bug 1365927 - Part 5. Make PCompositorManager the manager protocol of PCompositorBridge. r=dvander 2017-06-14 11:40:00 -04:00
Andrew Osmond 27eaaaed2f Bug 1365927 - Part 4. Replace PCompositorBridge integration hooks with PCompositorManager. r=dvander 2017-06-14 11:39:59 -04:00
Andrew Osmond 9abc5f52d5 Bug 1365927 - Part 3. Move PCompositorBridge toplevel protocol overrides to PCompositorManager. r=dvander 2017-06-14 11:39:59 -04:00
Andrew Osmond fc4e6a00ae Bug 1365927 - Part 2. Add minimal PCompositorManager protocol. r=dvander 2017-06-14 11:39:59 -04:00
Andrew Osmond a3d11c8688 Bug 1365927 - Part 1. Add missing headers and other build housekeeping. r=dvander 2017-06-14 11:39:59 -04:00
Mats Palmgren d40a0ac6c8 Bug 1372431 - Use RemoveEntry(EntryType*) instead of RemoveEntry(KeyType) to avoid another hashtable lookup. r=michal
MozReview-Commit-ID: 7zOWbhd8MnN
2017-06-14 17:27:25 +02:00
Mats Palmgren c7e9bf0310 Bug 1372429 - Use RemoveEntry(EntryType*) instead of RemoveEntry(KeyType) to avoid another hashtable lookup. r=michal
MozReview-Commit-ID: IAupx4Eu75h
2017-06-14 17:27:25 +02:00
Mats Palmgren 3d62b7ca50 Bug 1372413 - Use RemoveEntry(EntryType*) instead of RemoveEntry(KeyType) to avoid another hashtable lookup. r=mak
MozReview-Commit-ID: 1isuxbPXV94
2017-06-14 17:27:25 +02:00
Mats Palmgren 185a60c094 Bug 1372327 - Use LookupForAdd instead of Get+Put to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: 5J6Ea73JX4f
2017-06-14 17:27:25 +02:00
Mats Palmgren 2979d4b762 Bug 1372368 - Use LookupForAdd instead of Get+Put to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: trugd3ihLh
2017-06-14 17:27:25 +02:00
Mats Palmgren 9fc0c76c2f Bug 1372356 part 2 - Use mWindowMap.LookupForAdd instead of Get+Put, and LookupRemoveIf instead of Get+Remove, to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: 9L3GGGKDoJZ
2017-06-14 17:27:25 +02:00
Mats Palmgren 70e1ca483d Bug 1372356 - Use LookupForAdd instead of Get+Put to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: 4jKIhueYx13
2017-06-14 17:27:25 +02:00
Mats Palmgren 5f77c14065 Bug 1372349 - Use LookupForAdd instead of GetWeak+Put to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: 37FVkb3vOO4
2017-06-14 17:27:25 +02:00
Mats Palmgren b909321f2a Bug 1372342 - Use LookupForAdd instead of Get+Put to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: LAxL0tVtrFF
2017-06-14 17:27:25 +02:00
Mats Palmgren 95d8ecc7bf Bug 1372323 - Use LookupForAdd instead of Get+Put to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: GWsRF1vSLXx
2017-06-14 17:27:25 +02:00
Mats Palmgren 45166146e9 Bug 1372274 - Use LookupForAdd instead of Get+Put, and LookupRemoveIf instead of Get+Remove, to avoid unnecessary hashtable lookups. r=froydnj
MozReview-Commit-ID: Fo23d82qpaP
2017-06-14 17:27:25 +02:00
Mats Palmgren cfd3f9f9cf Bug 1371954 - Use RemoveEntry(EntryType*) rather than RemoveEntry(KeyType) to avoid an unnecesary hashtable lookup. r=froydnj
MozReview-Commit-ID: 10mB1SslmUm
2017-06-14 17:27:24 +02:00
Nicolas B. Pierron 3fc61ce76c Bug 1372207 - Schedule JSBC encoding to be executed at the next idle time after the onload event. r=smaug 2017-06-14 14:37:14 +00:00