Commit Graph

526468 Commits

Author SHA1 Message Date
Julian Seward
660aaef3f5 Bug 1345032 - Further cost reductions for ProfileBuffer::FindLastSampleOfThread. r=n.nethercote.
ProfileBuffer::FindLastSampleOfThread currently involves a linear search
backwards through the sample buffer.  Profiling showed that to be the largest
profiler cost by far, at least on Linux.  Bugs 1344118 and 1344258
significantly improve the situation, collectively reducing the cost by a
factor of at least 5 and often much more.  But the linear search is still
present and still dominant.  The worst of it is that it's unnecessary: we
could achieve the same by recording the start point of the most recent sample
for each thread in that thread's ThreadInfo record.

This patch does exactly that, adding the type ProfileBuffer::LastSample to
store the start points.  LastSample also includes the ID of the thread it
pertains to as a read-only field, as that is needed in various places.

addTag doesn't check whether we're overwriting buffer entries containing start
points.  Instead, FindLastSample checks whether the entry pointed to the
LastSample it is given still contains a marker.

--HG--
extra : rebase_source : 2987ec744a5c16e8b6814abe7efb507fc7280605
2017-03-22 11:18:31 +01:00
Boris Zbarsky
5497e491cb Bug 1349690. Improve dangling-exception logging in AutoJSAPI::InitInternal to deal better with exceptions from a different origin. r=bholley
MozReview-Commit-ID: IpvRcBC2d6k
2017-03-23 03:06:25 -04:00
Boris Zbarsky
0660340117 Bug 1348095 part 3. Cache the proto of an Xray on its holder, so we don't have to keep re-wrapping it. r=bholley
MozReview-Commit-ID: I78AoSB3TNW
2017-03-23 03:06:25 -04:00
Boris Zbarsky
ad63ed3278 Bug 1348095 part 2. Give all the Xray holders a JSClass that has a slot for caching a prototype. r=bholley
MozReview-Commit-ID: ID9vMG3iJfZ
2017-03-23 03:06:25 -04:00
Boris Zbarsky
0341ce9cc9 Bug 1348095 part 1. Remove the unused reserved slots from the XPCWN xray holder. r=bholley
MozReview-Commit-ID: 5IRrE8EmL9A
2017-03-23 03:06:25 -04:00
Cervantes Yu
0f5d7dafd5 Bug 1320134 - Part 3: Annotate the crash report with TLS allocation stacks on running out of TLS slots. r=ted
MozReview-Commit-ID: 9BEe4G28Txd
2017-02-23 16:46:27 +08:00
Cervantes Yu
615a84813f Bug 1320134 - Part 2: Initialize and shutdown the TLS allocation tracker in the content process. r=froydnj
MozReview-Commit-ID: 2Pu9r1MV1e4
2017-03-16 14:06:35 +08:00
Cervantes Yu
ad89036000 Bug 1320134 - Part 1: Tracking TLS allocations for diagnosing out-of-TLS-slots crashes on Windows. r=froydnj
This tracks TlsAlloc() and TlsFree() calls on Windows for diagnosing crashes when a proces reaches
its limit (1088) for TLS slots. Tracking of TLS allocation is done by intercepting TlsAlloc() and
TlsFree() in kernel32.dll. After initialization, we start tracking the number of allocated TLS
slots. If the number of observed TLS allocations exceeds a high water mark, we record the stack
when TlsAlloc() is called, and the recorded stacks gets serialized in a JSON string ready for
crash annotation.

MozReview-Commit-ID: 5fHVr0eiMy5
2017-03-15 18:20:30 +08:00
Andrea Marchesini
15ee5f552d Bug 1349572 - FileSystemSync must be able to work also with non nsISeekableStream, r=smaug 2017-03-23 07:19:55 +01:00
Mason Chang
f51576a84d Bug 1348584 Default to 1.0 contrast for Skia backends if custom contrast dwrite param isn't supported by skia. r=emk 2017-03-22 22:04:00 -07:00
Timothy Nikkel
3d98a47ed8 Bug 1343341. Change GetTimeoutForFrame to return a Maybe, and make all callers deal with a lack of a return value. r=aosmond
Do this to allow GetTimeoutForFrame to be called for frames that haven't been decoded yet. Propagate a Maybe result where it makes sense. The remaining callers just bail if they get no return value. Many of them can just assert that they get a return value because they already got the same frame, so the timeout has to be available.

The logic is a little tricky because we have "Forever" timeouts that were sort of treated as error cases.
2017-03-23 00:02:54 -05:00
Timothy Nikkel
f088324ed2 Bug 1347302. Add animated image specific probes for several imagelib telemetry probes. r=aosmond f=bsmedberg 2017-03-23 00:02:54 -05:00
sotaro
b98245c5fc Bug 1349476 - Remove LayersBackend::LAYERS_D3D9 type r=mattwoodrow 2017-03-23 11:00:41 +09:00
Sheldon Roddick
9bb7aa8e77 Bug 1061823 - Allow to edit width and height in the box model. r=gl 2017-03-14 23:58:53 -07:00
Sean Stangl
e9975370e7 Bug 1342016 - Fast-path for isObservableSlot(). r=nbp 2017-03-21 12:12:15 -04:00
Stanford Lockhart
4d101075ee Bug 1292051 - Part 2: Add unit tests for properties under the box model. r=gl
MozReview-Commit-ID: K99iGuucH1I
2017-03-01 08:58:12 -04:00
Steve Fink
1d35364a0b Bug 1330746 - Disable terminal-style output when running within emacs, r=qdot
MozReview-Commit-ID: CgjgL91alUa

--HG--
extra : rebase_source : ba00d397e310d1f3159ff2239ebc3c158184305c
2017-03-22 14:03:53 -07:00
Sebastian Hengst
736ff34e7c Backed out changeset 421407ec02c0 (bug 1338277) for failing its own crashtest. r=backout 2017-03-22 23:47:25 +01:00
Luke Wagner
888ae610aa Bug 1334504 - Baldr: move reload of TLS out of bloaty out-of-line paths (r=bbouvier)
MozReview-Commit-ID: 5u8qNfxK1fC

--HG--
extra : rebase_source : c8aced29c17b64a59bb6860e488d0e04cdd0e031
2017-03-22 17:26:55 -05:00
Luke Wagner
2164377bd8 Bug 1334504 - Baldr: maintain fp register instead a virtual fp (r=bbouvier)
MozReview-Commit-ID: 2Mi60u3DyJg

--HG--
extra : rebase_source : 155ce830bcd55e7f9fdf890d4da4b1c12377f12b
2017-03-22 17:26:05 -05:00
Luke Wagner
957d1e69d5 Bug 1334504 - Baldr: set ARM's FrameRegister (r=bbouvier)
MozReview-Commit-ID: 7kDJI6HqGD0

--HG--
extra : rebase_source : ea6311187695c48644af487e9c8025f8e85a9844
2017-03-22 17:24:22 -05:00
Luke Wagner
b9beec7efd Bug 1334504 - Baldr: remove hacky register allocation from i64 div/mod (r=bbouvier)
MozReview-Commit-ID: ARySD2vX1xH

--HG--
extra : rebase_source : e96a6ac1a9dfb956722d1b2172db31e8fd535705
2017-03-22 17:23:35 -05:00
Luke Wagner
2bf1fbb0cc Bug 1334504 - Baldr: remove SymbolicAddress::ContextPtr (r=lth)
MozReview-Commit-ID: HZOVOhq8pdv

--HG--
extra : rebase_source : 2e882f46991077e8bc828e69be64ae41d447b562
2017-03-22 17:22:16 -05:00
Luke Wagner
4fbe090e6e Bug 1334504 - Baldr: remove the wasm::Compartment GC hack (r=bbouvier)
MozReview-Commit-ID: LVAPQ1Kft8g

--HG--
extra : rebase_source : 6464176d9bd0e5eae8722ecd21bfa0dc4e0ba5f4
2017-03-22 17:18:54 -05:00
Luke Wagner
0f64a61281 Bug 1334504 - Baldr: remove movw/movt requirement for wasm on ARM (r=bbouvier)
MozReview-Commit-ID: IPYbhkYqPwU

--HG--
extra : rebase_source : 7eab849de87d86547b0bcbb0aef8c5505aa28041
2017-03-22 17:17:50 -05:00
Luke Wagner
e24cd03181 Bug 1334504 - Baldr: remove stubs' explicit TLS-saving (r=bbouvier)
MozReview-Commit-ID: INtxrPyoni7

--HG--
extra : rebase_source : 52f7501be32155358cc8a7a58f6803e2409d33a4
2017-03-22 17:16:35 -05:00
Luke Wagner
dd552f19d7 Bug 1334504 - Baldr: remove ion's explicit TLS-saving (r=bbouvier)
MozReview-Commit-ID: 57GppQ6y2Mw

--HG--
extra : rebase_source : 435cca09a8c5f7d764d47ae11b7a17aa467cd0b7
2017-03-22 17:15:50 -05:00
Luke Wagner
2710499799 Bug 1334504 - Baldr: remove baseline's explicit TLS-saving (r=yury)
MozReview-Commit-ID: 3MyiHUo0da2

--HG--
extra : rebase_source : c81c5636f58abed9a2763319a72c3080e695bdc6
2017-03-22 17:15:18 -05:00
Luke Wagner
d4d809f4c4 Bug 1334504 - Baldr: save TLS reg in Frame (r=bbouvier)
MozReview-Commit-ID: Lp1YArEH9jh

--HG--
extra : rebase_source : cfb6283b07a417e2d6745bfb066149d1d228b3e2
2017-03-22 17:13:02 -05:00
Luke Wagner
ed96f9e4ea Bug 1334504 - Baldr: always enable profiling prologue (r=bbouvier)
MozReview-Commit-ID: 6bPt7dtuwPU

--HG--
extra : rebase_source : 06f9a37e14c18261da25ff234ea45df07bf5d6f3
2017-03-22 17:11:48 -05:00
Alexander Surkov
7d7b3c1dbe Bug 1346518 - extend Accessible::RemoveChild debugging assertions, part2, r=yzen 2017-03-22 18:31:18 -04:00
Jonathan Watt
2773e5508d Bug 1349477, part 4 - Use AutoReferenceChainGuard in nsSVGMaskFrame. r=longsonr
MozReview-Commit-ID: 5tVLBcTOLQZ
2017-02-21 10:47:22 +00:00
Jonathan Watt
1fdd3184b8 Bug 1349477, part 3 - Use AutoReferenceChainGuard in nsSVGPatternFrame. r=longsonr
MozReview-Commit-ID: EUgSIK92Jtq
2017-02-21 10:34:52 +00:00
Jonathan Watt
ae571cea0c Bug 1349477, part 2 - Use AutoReferenceChainGuard in nsSVGGradientFrame. r=longsonr
MozReview-Commit-ID: 5xw5i696ipe
2017-02-21 10:10:43 +00:00
Jonathan Watt
fc37ee1940 Bug 1349477, part 1 - Use AutoReferenceChainGuard in nsSVGFilterFrame. r=longsonr
MozReview-Commit-ID: HTcySIH3qNt
2017-02-21 09:37:09 +00:00
Jonathan Watt
8565c76302 Bug 1349731 - Document how SVG frames use nsIFrame::mRect. r=longsonr
MozReview-Commit-ID: EcrJfuVWsJg
2017-02-20 12:47:19 +00:00
Eric Rahm
3693cc51e3 Bug 1349350 - Make IPDL checker sync IPC message errors fatal. r=ehsan
The IPDL sync IPC message error checker needs to actually return a result and
exit if it fails.

MozReview-Commit-ID: 1ZAuAWRlsvk
2017-03-22 15:01:50 -07:00
Eric Rahm
1ad9009da0 Bug 1347000 - Fix false-positive sync message not found errors on windows builds. r=billm
MozReview-Commit-ID: 6ZLCJKotqEE
2017-03-22 15:01:49 -07:00
Sebastian Hengst
03b2ac1e59 Backed out changeset 5f62af954609 (bug 1333858) for bustage. r=backout on a CLOSED TREE 2017-03-22 22:50:54 +01:00
Kartikaya Gupta
42ab51af17 Bug 1342450 - Keep webrender disabled by default on OS X buildbot builders. r=ted
MozReview-Commit-ID: 9Ydrr67qKGu
2017-03-22 17:38:10 -04:00
Kartikaya Gupta
301e315b2f Bug 1342450 - Extract a MOZ_ENABLE_WEBRENDER from MOZ_BUILD_WEBRENDER so that we build but disable by default. r=rhunt,froydnj,ted
This adds back a MOZ_ENABLE_WEBRENDER define, which only controls whether or
not WebRender is enabled at runtime. The default behaviour is changed so that:
- if the user specifies --disable-webrender in the mozconfig, WebRender is
  neither built nor enabled
- if the user specifies --enable-webrender in the mozconfig, WebRender is
  built and enabled
- if the user specifies --enable-webrender=build in the mozconfig, WebRender is
  built but not enabled, except on Android where it is neither built nor enabled
- if the user doesn't specify any of the above, the default behaviour is:
  - on nightly/local builds, the same as --enable-webrender=build
  - on other channels (e.g. aurora), the same as --disable-webrender

The net effect is that local/Nightly-automation builds will have WebRender
built-in but not enabled where possible (i.e. not Android). However the user
can override this behaviour via mozconfig options to either not build WebRender
at all, or to enable it in addition to building it.

MozReview-Commit-ID: IM7DdSHkIB
2017-03-22 17:38:09 -04:00
Kartikaya Gupta
b215cfd1e1 Bug 1342450 - Rename MOZ_ENABLE_WEBRENDER to MOZ_BUILD_WEBRENDER. r=rhunt
MozReview-Commit-ID: 3GkmCJJq8et
2017-03-22 17:36:25 -04:00
Peter Van der Beken
93ec4103b3 Bug 1338277 - Deal better with failed matching for variables, r=erahm.
--HG--
extra : rebase_source : 418322b5c91f6d46172aed0050b95675e2eab469
extra : intermediate-source : d9bde4fb33c8d5a9d22fda6a8be7f86177599ce3
extra : source : 5669c2511dec853fecd42dbdc8b1fdfea64c362d
extra : histedit_source : 7549ec8331f45cd672d0d98ff02ce13e81e1c750
2017-02-20 15:04:51 +01:00
Peter Van der Beken
8d2e5e5fcc Bug 1336832 - Properly delete pushed eval contexts, r=erahm.
--HG--
extra : rebase_source : ba12699d8a56ce02506d02e3862cbb64b7a3c111
extra : intermediate-source : 10b01aa90dfb81674b3c2692f5ae998c609dd346
extra : source : 776028b9a43ac77174efd2b450755f6904e4c0d9
extra : histedit_source : 4324510fb418805ba9ee25d01a53309e668d67aa
2017-02-22 11:54:13 +01:00
Peter Van der Beken
382e01d333 Bug 1336828 - Ignore the obsolete handler if the transform fails, r=erahm.
--HG--
extra : rebase_source : f0d382b9df96037592dab8796b970edcb5620968
extra : intermediate-source : 76ad1e2f09a8720129c9bc5a503711af67bc8a95
extra : source : 208af3997a41ae3dd7d9fd160c7d5b5d8bcb623e
extra : histedit_source : 40543896f15126261df040910db10b2b1ae2ad02
2017-02-10 14:38:57 +01:00
Peter Van der Beken
8531f10c6c Bug 1336830 - Pop state immediately after running a template, r=erahm.
--HG--
extra : rebase_source : bf1d578f7c69b8b1ebd89ef1525a757db98a4b05
extra : intermediate-source : a8303eba5aa64b01edc628824b60153f05bc6ad2
extra : source : 325e2b88bff6b645d3319b3e358f426bc6b4648b
extra : histedit_source : 6b951be83c7ccc5b72f771e1bc6d7ec57d1e4a71
2017-02-10 17:20:08 +01:00
djmdev
6e08d9cb2a Bug 1344737 - Update TelemetrySession.jsm to async function & await. r=chutten
Updated Task.async, Task.spawn and yield to async and await.
2017-03-12 11:31:38 +05:30
Sébastien Blin
ccc234ac92 Bug 1298321 - Refactor tests related to getHash. r=francois 2017-01-17 07:03:00 -05:00
Jeff Gilbert
d77aa7d59a Bug 1333858 - Intersect should be fallible on overflow. r=daoshengmu
MozReview-Commit-ID: 6lmIKKyXXah
2017-03-22 17:07:25 -04:00
Sebastian Hengst
f5e68bc3e1 Backed out changeset ef22dba0dac5 (bug 1316683) for various test failures, e.g. xpcshell netwerk/test/unit/test_bug826063.js and browser-chrome browser/components/downloads/test/browser/browser_iframe_gone_mid_download.js. r=backout on a CLOSED TREE 2017-03-22 20:28:39 +01:00