Commit Graph

56288 Commits

Author SHA1 Message Date
Terrence Cole
240896825f Bug 1290551 - Part 2: Assert that finishRoots actually unroots everything; r=jonco
--HG--
extra : rebase_source : 322bbaf46bb1dc1b14bef0a939a07702f478c01c
2016-08-05 14:13:35 -07:00
Terrence Cole
3ab082dab8 Bug 1290551 - Part 1: Move finishRoots adjacent to traceRoots; r=jonco
--HG--
extra : rebase_source : d67b41ec9318b36502e0c07c11faf65619c24c6a
2016-08-05 14:13:32 -07:00
Jon Coppeard
509ffe40c1 Bug 1293127 - Fix testcode to handle zeal builds r=me 2016-08-19 18:04:47 +01:00
Bill McCloskey
3799faa926 Bug 1279086 - Allow painting for tab switch when JS is running (r=dvander,mconley,mrbkap) 2016-08-19 09:59:40 -07:00
Bill McCloskey
95c5d71549 Bug 1279086 - Allow multiple interrupt callbacks (r=dvander) 2016-08-19 09:59:39 -07:00
Jon Coppeard
a4026dfbb4 Bug 1293127 - Mark CCW keys that have nursery pointers explicitly rather than using the generic buffer r=terrence 2016-08-19 16:56:25 +01:00
Terrence Cole
73b768f849 Bug 1290550 - Fix markRuntime's interface; r=jonco 2016-07-28 09:42:17 -07:00
Jon Coppeard
35539866a9 Bug 1293239 - Revert nursery resizing heuristics r=terrence 2016-08-19 10:44:01 +01:00
Jon Coppeard
d170af87c1 Bug 1293209 - Don't assert tables are empty if the embedding leaked JS GC things r=terrence 2016-08-19 10:44:01 +01:00
Iris Hsiao
67de9ad6e4 Backed out changeset 3172e3fa6e24 (bug 1294606) 2016-08-19 17:42:14 +08:00
Iris Hsiao
e3f411bb25 Backed out changeset defd76119eda (bug 1294606) 2016-08-19 17:41:57 +08:00
Iris Hsiao
0cadff9393 Backed out changeset 4d05a40172ca (bug 1294606) for Spider Monkey ARM64 bustage 2016-08-19 17:41:45 +08:00
Heiher
d8e57bddcc Bug 1294606 - Part 3: Add tests for SignExtend. r=nbp
---
 .../jit-test/tests/ion/dce-with-rinstructions.js   | 40 ++++++++++++++++++++++
 1 file changed, 40 insertions(+)
2016-08-19 17:07:52 +08:00
Heiher
c8cef5ba11 Bug 1294606 - Part 2: Folds Lsh/Rsh same bits to SignExntend. r=nbp
---
 js/src/jit/CodeGenerator.cpp                       | 16 +++++++++
 js/src/jit/CodeGenerator.h                         |  1 +
 js/src/jit/Lowering.cpp                            | 13 ++++++++
 js/src/jit/Lowering.h                              |  1 +
 js/src/jit/MIR.cpp                                 | 27 +++++++++++++++
 js/src/jit/MIR.h                                   | 39 ++++++++++++++++++++++
 js/src/jit/MOpcodes.h                              |  1 +
 js/src/jit/MacroAssembler.h                        |  3 ++
 js/src/jit/Recover.cpp                             | 37 ++++++++++++++++++++
 js/src/jit/Recover.h                               | 12 +++++++
 js/src/jit/arm/MacroAssembler-arm-inl.h            | 12 +++++++
 js/src/jit/arm64/MacroAssembler-arm64-inl.h        | 12 +++++++
 .../mips-shared/MacroAssembler-mips-shared-inl.h   | 12 +++++++
 js/src/jit/shared/LIR-shared.h                     | 16 +++++++++
 js/src/jit/shared/LOpcodes-shared.h                |  1 +
 .../jit/x86-shared/MacroAssembler-x86-shared-inl.h | 12 +++++++
 js/src/vm/Interpreter-inl.h                        | 11 ++++++
 17 files changed, 226 insertions(+)
2016-08-19 17:07:47 +08:00
Heiher
f5130bf88d Bug 1294606 - Part 1: Implement LIRGenerator::useByteOpRegisterAtStart. r=nbp
---
 js/src/jit/arm/Lowering-arm.cpp                 | 6 ++++++
 js/src/jit/arm/Lowering-arm.h                   | 1 +
 js/src/jit/arm64/Lowering-arm64.cpp             | 6 ++++++
 js/src/jit/arm64/Lowering-arm64.h               | 1 +
 js/src/jit/mips-shared/Lowering-mips-shared.cpp | 6 ++++++
 js/src/jit/mips-shared/Lowering-mips-shared.h   | 1 +
 js/src/jit/none/Lowering-none.h                 | 1 +
 js/src/jit/x64/Lowering-x64.cpp                 | 6 ++++++
 js/src/jit/x64/Lowering-x64.h                   | 1 +
 js/src/jit/x86/Lowering-x86.cpp                 | 6 ++++++
 js/src/jit/x86/Lowering-x86.h                   | 1 +
 11 files changed, 36 insertions(+)
2016-08-19 17:07:39 +08:00
Phil Ringnalda
c953d529f4 Backed out 3 changesets (bug 1290551, bug 1290550) for Windows (at least) Marionette crashes in AssertNoRootsTracer::onChild
CLOSED TREE

Backed out changeset 3ffbd71ee977 (bug 1290551)
Backed out changeset 77bda0e9caba (bug 1290551)
Backed out changeset 3763a23b6353 (bug 1290550)
2016-08-18 19:30:33 -07:00
Nick Fitzgerald
fd249acf72 Bug 1296399 - Make ProfileStringMap values be UniqueChars instead of raw char*. r=shu
There was a lot of manual management of the map's string values. By using
UniqueChars, everything happens automatically and at the right time in
destructors.

--HG--
extra : rebase_source : f4522c4cf5f67163726e0f1f8aca77e512e2fadd
2016-08-18 12:35:00 -04:00
Nick Fitzgerald
94052d5b73 Bug 1296399 - Make the js::SPSProfiler::strings a js::ExclusiveData. r=shu
The js::SPSProfiler::lock_ only existed to protect the js::SPSProfiler::strings
member[0], but it was not clear at all whether it protected all members or
what. Instead, let's wrap the strings member in a js::ExclusiveData so that
the *only* way to access it by taking the lock and so that it is clear what
members need locking.

And of course there were multiple places where the member wasn't getting locked
properly...

[0] See
http://searchfox.org/mozilla-central/diff/0df4a565cc0c7ce54d0f7628a87280a6dca140c4/js/src/vm/SPSProfiler.h#215
for the archaeology bits.

--HG--
extra : rebase_source : b157315e9975529a7553cb236980caa8acd48bf9
2016-08-18 12:35:00 -04:00
Nick Fitzgerald
2fb353111f Bug 1296399 - Make sure that the js::ProfileEntry::Flags fit in the type that they are used with. r=shu
--HG--
extra : rebase_source : 69e9c5e56ab7974c2fb28f95a9b9a0e1d75f0ae5
2016-08-18 12:35:00 -04:00
Shu-yu Guo
71d4ec50b6 Bug 1282741 - Fix assertion involving debug mode toggle cycles in debug mode OSR. r=jandem
--HG--
extra : rebase_source : f7141c3c69bea2d8cb5618c72e565c69deeaf369
2016-08-08 14:46:00 -04:00
Leo Gaspard
eaa48acac4 Bug 1295835 - Address some compilation maybe-uninitialized warnings. r=luke
--HG--
extra : rebase_source : 7842fdd361939aba7248cdc463dd54e41a3162ea
2016-08-18 11:46:28 -07:00
Terrence Cole
2c1cb117fb Bug 1290551 - Part 2: Assert that finishRoots actually unroots everything; r=jonco
--HG--
extra : rebase_source : 1a153b6fc076746b3f51d07da80e0c2a53f6d5c9
2016-08-05 14:13:35 -07:00
Terrence Cole
f190f914ef Bug 1290551 - Move finishRoots to RootMarking.cpp and rename markRuntime to reflect usage; r=jonco
--HG--
extra : rebase_source : 21d7d8ae0468e1226881ae74faba6cd2e013cfdf
2016-08-05 14:13:32 -07:00
Terrence Cole
ff67363aa5 Bug 1290550 - Fix markRuntime's interface; r=jonco
--HG--
extra : rebase_source : 81703cda0c4740be0a8b7296f1ee12de68a08c9e
2016-07-28 09:42:17 -07:00
Steve Fink
aafebe2348 Bug 1295751 - Stop running autoconf in autospider.py, r=glandium
MozReview-Commit-ID: 9COvbxsmRf2

--HG--
extra : rebase_source : 2d92101ec23fcb503ece8a8dba184fa390b67cf0
2016-08-16 12:31:41 -07:00
Mike Hommey
0a56fe18d4 Bug 1295751 - Make it possible to copy configure.in to configure. r=gps
MozReview-Commit-ID: 4Sjr7mWcMIN

--HG--
extra : rebase_source : 4c46a4853eaba6216751d71d3c507a431fd24d7e
2016-08-16 19:35:00 -07:00
Steve Fink
8b3378d2a8 Bug 1295717 - interpreter-only test runs should also disable the regex jit, r=shu
MozReview-Commit-ID: 7AllIx1FkgW

--HG--
extra : rebase_source : 3ddef0e6addf8aae2208ebb82cc4fd763f12cf48
2016-08-16 12:31:28 -07:00
Wes Kocher
55897634c1 Backed out 3 changesets (bug 1288870) for hazards a=backout
Backed out changeset 83bbd356da97 (bug 1288870)
Backed out changeset 4f0ab1a0d8dd (bug 1288870)
Backed out changeset 8d71aba5c1e7 (bug 1288870)
2016-08-18 16:50:13 -07:00
Andrew McCreight
e5e0b12c27 Bug 1288870, part 3 - Remove the now-vestigial Mark code for XPCNativeInterface. r=billm
XPCNativeInterface::Mark(), Unmark() and IsMarked() don't do anything
any more, so anything that calls them can be deleted. This removes the
only use of XPCCallContext::CanGetInterface(), so delete that, too.

MozReview-Commit-ID: 4w3aPTVXNDI
2016-08-18 15:20:48 -07:00
Andrew McCreight
f8d14c904a Bug 1288870, part 2 - Make XPCNativeInterface refcounted. r=billm
There are four classes that call Root() on XPCNativeInterface, and
thus keep interfaces alive. Each of these gets converted to use a
RefPtr:

1. XPCCallContext. This could be on some kind of hot path, but the
FindMemberCall involves various string operations and hashtable
lookups, so adding a single AddRef shouldn't matter. One weirdness
here is that the context only roots the interface when |mState >=
HAVE_NAME|. With a RefPtr<>, this requires nulling out
mInterface. Fortunately, in most cases where it moves from rooting to
non-rooting, it already does this. The one case it does not is in
SystemIsBeingShutDown(), so my patch adds that.

2. XPCNativeSet. This holds an array of interfaces in a weird
placement new array at the end of the object. I wasn't sure how a
non-POD class would interact with the way the array is handled with
casting, so I manually AddRef and Release things put into or removed
from the array.

3. AutoMarkingNativeInterfacePtr simply becomes RefPtr<>. This is the
bulk of the patch, in terms of number of lines changed.

4. Similarly, the one AutoMarkingNativeInterfacePtrArrayPtr becomes
nsTArray<RefPtr<>>. This is the last use of the auto marking array
class, so I deleted it.

Here are some other notes on what the patch does:

- XPCNativeInterfaces are created with placement new. This requires a
special version of refcounting that calls DestroyInstance, defined in
the previous patch. The GetNewOrUsed methods used to explicitly call
DestroyInstance(), but with refcounting this is no longer needed.

- The Mark() etc. methods are gutted so they don't do anything and
mMarked is removed because it is no longer used. The methods will be
cleaned up in later patches in this bug.

- Interfaces are removed from mIID2NativeInterfaceMap in the dtor
instead of during sweeping, requiring an extra hash table lookup.

- All of the methods that can create a new interface (NewInstance,
GetISupports, GetNewOrUsed) now return an already_AddRefed<>, which
gives some static checking that we don't accidentally fail to hold
onto a newly created interface.

MozReview-Commit-ID: CrlH1ENAzvr
2016-08-18 15:20:48 -07:00
Shu-yu Guo
94e75db5b5 Bug 1295775 - Suppress sampling during compaction. (r=djvj) 2016-08-18 15:24:48 -07:00
Tom Schuster
e8296f82f1 Bug 1296324 - Remove logically empty DirectProxyHandler.cpp. r=jandem 2016-08-18 18:00:59 +02:00
Tom Schuster
92024846c1 Bug 1114580 - Define getBuiltinClass on Xray. r=peterv 2016-08-18 10:59:36 +02:00
Luke Wagner
6b009b1299 Bug 1283924 - Baldr: dispatch WebAssembly.compile tasks to a helper thread (r=till)
MozReview-Commit-ID: Ll4zmDi7JuS
2016-08-17 17:06:24 -05:00
Luke Wagner
e55478f5d4 Bug 1283924 - Add JSAPI for dispatching from helper threads back to a JSContext's owner thread (r=till)
MozReview-Commit-ID: AULowZJ3zXJ
2016-08-17 17:05:49 -05:00
Chris Manchester
872c57fe84 Bug 1294803 - Move BUILD_CTYPES to Python configure. r=glandium
MozReview-Commit-ID: 3TlgdpNDLZW
2016-08-17 15:02:31 -07:00
Chris Manchester
269e8590e8 Bug 1294803 - Move MOZ_SYSTEM_FFI to moz.configure in preparation for moving libffi to our build system. r=glandium
This patch introduces a small change in behavior: we now unconditionally
require libffi > 3.0.9 when using system ffi, rather than accepting 3.0.9
when using GCC, as 3.0.10 was released 5 years ago, and should be widely
available.


MozReview-Commit-ID: DtSDPoZSPcx
2016-08-17 15:02:31 -07:00
Chris Manchester
b0b84a1928 Bug 1240134 - Incorporate the interfaces.xpt from downloaded artifacts instead of building XPIDL during an artifact build. r=glandium
MozReview-Commit-ID: 8oEyS1xLOwV
2016-08-17 15:02:31 -07:00
Steve Fink
eaf061e379 Bug 1240984 - Remove the same-data/change-data distinction when detaching ArrayBuffers, r=Waldo
--HG--
extra : rebase_source : b5f8ce4be8efa10f45faa7503f9f08f7aa059b05
2016-07-19 16:19:46 -07:00
Steve Fink
352c38a321 Bug 1240984 - Remove dummy ArrayBufferContents backstop, r=Waldo
--HG--
extra : rebase_source : ac3a7e8d21f47f056956c5339c8cc4f9dc3fcd36
extra : intermediate-source : 11de53329deb91bd355f6b3d62b6be32a0f40bd7
extra : source : 694c87cbc37ae55cd49123324f842669baee7760
2016-07-28 22:03:03 -07:00
Iris Hsiao
f9b93d730f Bug 1294013 - [jsdbg2] Disentangle parsing and checking of resumption values Part 2. r=jimb
CLOSED TREE
2016-08-17 21:07:28 +08:00
Eddy Bruel
6d0ac1efa2 Bug 1294013 - Replace parseResumptionValueHelper with processResumptionValue in handleUncaughtException. r=jimb 2016-08-17 20:18:57 +08:00
Eddy Bruel
aa37c5c999 Bug 1294013 - Factor out processResumptionValue. r=jimb 2016-08-17 20:18:54 +08:00
Eddy Bruel
19be1a2432 Bug 1294013 - Factor out CheckResumptionValue. r=jimb 2016-08-17 20:18:52 +08:00
Eddy Bruel
ab86c4dcea Bug 1294013 - [jsdbg2] Disentangle parsing and checking of resumption values. r=jimb
CLOSED TREE
2016-08-11 10:50:00 +08:00
Iris Hsiao
19389cc679 Backed out changeset 8ead64ff09e8 (bug 1294013) 2016-08-17 18:50:40 +08:00
Iris Hsiao
82b995f603 Backed out changeset 9eec5a814230 (bug 1294013) 2016-08-17 18:50:34 +08:00
Iris Hsiao
91d9cf2da1 Backed out changeset 33283d086876 (bug 1294013) 2016-08-17 18:50:29 +08:00
Iris Hsiao
da330ea42e Backed out changeset 0289f779f30b (bug 1294013) 2016-08-17 18:50:24 +08:00
Iris Hsiao
ccea2b0905 Backed out changeset d14511be496e (bug 1294013) for Windows build bustage 2016-08-17 18:50:18 +08:00