Commit Graph

1523 Commits

Author SHA1 Message Date
Nick Fitzgerald
03303bde0d Bug 1263270 - Sort census reports by smallest node ID counted, rather than number of nodes counted. r=jimb 2016-04-08 16:21:00 -04:00
Nicholas Nethercote
dbc9af380e Bug 1262731 - Add JS_InitWithFailureDiagnostic(). r=sfink.
This will help identify the cause of some Firefox start-up crashes when JS
initialization fails.

--HG--
extra : rebase_source : 3ed3c5e60f487e0ca11dc13bab93aa820ca8273f
2016-04-08 09:08:49 +10:00
Terrence Cole
6ab8c8ca99 Bug 1259580 - Hide as many Proxy details as possible behind a detail namespace; r=efaust
--HG--
extra : rebase_source : 9acd8f66646e5104579cde751a85175a365c9662
2016-03-24 13:24:51 -07:00
Terrence Cole
172b7c970b Bug 1259578 - Use GC infrastructure to allocate proxy's malloced blob; r=jonco
--HG--
extra : rebase_source : ed7051ff26fdebc7ebbfbe693880dacee51366fa
2016-03-24 13:03:55 -07:00
Nicholas Nethercote
0faa7a06ba Bug 1261720 (part 2) - Move ClassExtension::isWrappedNative into js::Class::flags. r=jorendorff.
This saves 10 KiB of static data on 64-bit, and half that on 32-bit.

--HG--
extra : rebase_source : f0e9c5cdba7f5a71cda046152691de6a5184a223
2016-04-04 08:47:15 +10:00
Nicholas Nethercote
f7dab46ae8 Bug 1261720 (part 1) - Separate js::ClassExtension from js::Class. r=jorendorff,bz.
js::ClassExtension is often all null. When it's not all null, it's often
duplicated among classes. By pulling it out into its own struct, and using a
(possibly null) pointer in js::Class, we can save 17 KiB per process on
64-bit, and half that on 32-bit.

--HG--
extra : rebase_source : eb78ade09ce268e886d091f6cbc38d7e5e912527
2016-04-04 08:45:07 +10:00
Jim Blandy
b44fbd0499 Bug 1251529: In object metadata world, rename "object metadata" to "allocation metadata" and "callback" to "builder". r=fitzgen
Exceptions:
- AutoSetNewObjectMetadata and its related type are still exclusively about objects.
- JSCompartment::objectMetadataTable is still only about objects.
- the ObjectMetadataMap type still only has objects as keys.

Non-exceptions:

The builder type, and the JSCompartment member:
ObjectMetadataCallback -> AllocationMetadataBuilder
objectMetadataCallback -> allocationMetadataBuilder

jsfriendapi.h interface:
SetObjectMetadataCallback -> SetAllocationMetadataBuilder
GetObjectMetadata -> GetAllocationMetadata

JSCompartment methods:
hasObjectMetadataCallback -> hasAllocationMetadataBuilder
getObjectMetadataCallback -> getAllocationMetadataBuilder
setObjectMetadataCallback -> setAllocationMetadataBuilder
forgetObjectMetadataCallback -> forgetAllocationMetadataBuilder
addressOfMetadataCallback -> addressOfMetadataBuilder

Shell and testing functions:
SavedStacksMetadataCallback -> SavedStacksMetadataBuilder
ShellObjectMetadataCallback -> ShellAllocationMetadataBuilder
EnableShellObjectMetadataCallback -> EnableShellAllocationMetadataBuilder
enableShellObjectMetadataCallback -> enableShellAllocationMetadataBuilder
GetObjectMetadata -> GetAllocationMetadata
getObjectMetadata -> getAllocationMetadata

Delayed metadata collection:
shouldDelayMetadataCallback -> shouldDelayMetadataBuilder
JSCLASS_DELAY_METADATA_CALLBACK -> JSCLASS_DELAY_METADATA_BUILDER
suppressObjectMetadataCallback -> suppressAllocationMetadataBuilder

--HG--
extra : rebase_source : 54af5a56edd9b39466fa418f7a72fc586d0482d3
2015-09-01 15:26:46 -07:00
Nicholas Nethercote
3e563eab78 Bug 1260984 (part 3) - Separate js::ClassSpec from js::Class. r=jorendorff.
js::ClassSpec is often all null. When it's not all null, it's often duplicated
among classes. By pulling it out into its own struct, and using a (possibly
null) pointer in js::Class, we can save 138 KiB per process on 64-bit, and half
that on 32-bit.

--HG--
extra : rebase_source : 852ac6770ace46958d018107e78c5c44ebd6528a
2016-04-01 10:59:54 +11:00
Jon Coppeard
ca319d558f Bug 1235677 - Add assertion to catch unsafe concurrent use of AutoEnterOOMUnsafeRegion r=terrence 2016-03-30 12:33:56 +01:00
Phil Ringnalda
4204667ede Back out 735da799e3bb (bug 1211723) for assertion failures and crashes in SharedImmutableStringsCache
CLOSED TREE
2016-03-29 21:57:51 -07:00
Nick Fitzgerald
35e15a7ddb Bug 1211723 - Share JS source text between JSRuntimes; r=jimb
This commit adds `SharedImmutableStringsCache` which allows for de-duplication
and sharing of immutable strings between threads and JSRuntimes.

Each JSRuntime gets a SharedImmutableStringsCache member, but the accessor
always returns the parent runtime's cache. The caches in child JSRuntime's are
not wasting space, however, as initialization and allocation of the table
happens lazily within SharedImmutableStringsCache.

Furthermore, this commit removes `js::ScriptSource::Parent` and the
`CompressedSourceSet`. They are unnecessary because source text is always shared
via the parent runtime's `SharedImmutableStringsCache` now.
2016-03-29 15:15:47 -07:00
Nicholas Nethercote
e114b226dc Bug 1259194 (part 4) - Separate js::ObjectOps from js::Class. r=efaust,mrbkap,bz.
js::ObjectOps is often all null. When it's not all null, it's often duplicated
many times among classes. By pulling it out into its own struct, and using a
(possibly null) pointer in js::Class, we can save 208 KiB per process on
64-bit, and half that on 32-bit.

--HG--
extra : rebase_source : 5be8fe45f652392571b8a6d7b63777cbafba6ae4
2016-03-24 07:00:29 +11:00
Nathan Froyd
cccdd9fbca Bug 1177488 - use |const char*| for representing async call reasons; r=bz,fitzgen
Using a simple |const char*| is more memory-efficient than allocating a
JS string. We still have to allocate the JS string for passing things
into JS, but ideally we will be able to move the point of allocation
much closer to where it's actually needed, rather than indiscriminantly
doing it all the time.
2016-03-23 10:40:53 -04:00
Wes Kocher
ea76ed99d7 Backed out changeset 95494e68c722 (bug 1177488) for crashes in test_bug732665.xul CLOSED TREE
MozReview-Commit-ID: IFUHUBUCnCD
2016-03-25 12:11:48 -07:00
Nathan Froyd
418aa2af4f Bug 1177488 - use |const char*| for representing async call reasons; r=bz,fitzgen
Using a simple |const char*| is more memory-efficient than allocating a
JS string. We still have to allocate the JS string for passing things
into JS, but ideally we will be able to move the point of allocation
much closer to where it's actually needed, rather than indiscriminantly
doing it all the time.
2016-03-23 10:40:53 -04:00
Jeff Walden
1dd8dbc3f7 Bug 1246061. r=jandem, r=bz, r=luke, r=froydnj
--HG--
extra : rebase_source : 5b314d4c4c6e0b553290884be7338f8e79c22f71
2016-03-09 00:37:20 -08:00
Wes Kocher
1922ce7aa8 Merge m-c to inbound, a=merge CLOSED TREE
MozReview-Commit-ID: KCev5FqbsuD
2016-03-22 16:57:35 -07:00
Carsten "Tomcat" Book
58f863b9a0 Merge mozilla-central to fx-team 2016-03-22 12:32:56 +01:00
Victor Porof
8dd039677b Bug 1258302 - Create a categories module instead of placing everything in global.js, r=jsantell 2016-03-22 10:17:20 +01:00
Jim Blandy
0a2e45670b Bug 1258555: Fix return type of js::GCPointerPolicy::needsSweep. r=terrence
--HG--
extra : rebase_source : 987a12c8e8d32eb13aabd057e7ffa8a77ca84be0
2016-03-21 15:23:08 -07:00
Jon Coppeard
f0d2a7676e Bug 1256672 - Make OOM alloc counters 64 bit. r=terrence 2016-03-15 11:46:00 +01:00
Carsten "Tomcat" Book
41c5d93a8a Backed out changeset 5e4e30fff99b (bug 1235677) for landing with wrong bugnumber 2016-03-16 10:59:41 +01:00
Jon Coppeard
93d786cfd8 Bug 1235677 - Refactor OOM simulation and make counters 64 bit r=terrence 2016-03-16 09:41:57 +00:00
Till Schneidereit
db904728ee Bug 911216 - Part 7: Implement ES6 Promises in the JavaScript engine. r=efaust
--HG--
extra : rebase_source : 44ac4d767f6b2298acea444675c7177cb8f0d602
2015-11-10 12:34:00 +01:00
Jim Blandy
db7bf419d6 Bug 1257395: Update comments for GCHashTable and GCPolicy. DONTBUILD r=terrence
--HG--
extra : rebase_source : 12d7d4f2b7a1178498e1499c1f68b0033449f887
2016-03-16 18:16:01 -07:00
Jeff Walden
1a0903f98c Bug 1257979 - Use a GCHashSet for a hash in the JSON stringifying algorithm. r=sfink
--HG--
extra : rebase_source : c6e2b22de7467ac4c99fa6e010a88c2f2ca1d981
2016-03-18 16:43:53 -07:00
Steve Fink
517605b022 Bug 1246804 - Switch to using in-source annotations. Use C++ inheritance information when describing GC types. Add a test suite., r=terrence
MozReview-Commit-ID: HCcG2k8Wyb9

--HG--
extra : rebase_source : 732ef6ecc52f0e528d38b8c42e442919eba9b5ae
extra : source : 901b1c651c982ccbf42604231c723d168e1cde69
2015-09-29 13:39:33 -07:00
Nick Fitzgerald
1685818a63 Bug 1254092 - TraceIncomingCCWs should work at the JSCompartment level of granularity. r=jimb
There can be multiple compartments within the same zone, only one of which is a
debuggee. In this scenario, CCWs from other compartments into the debuggee
compartment should be traced and treated as roots. Therefore, dealing with CCWs
at the JS::Zone level is incorrect, and this patch changes the granularity level
to JSCompartments. If you look at the callers and uses of the function, it makes
much more sense now.

Additionally, it renames `JS_TraceIncomingCCWs` to `JS::TraceIncomingCCWs`.

--HG--
rename : devtools/shared/heapsnapshot/tests/gtest/DoesCrossZoneBoundaries.cpp => devtools/shared/heapsnapshot/tests/gtest/DoesCrossCompartmentBoundaries.cpp
rename : devtools/shared/heapsnapshot/tests/gtest/DoesntCrossZoneBoundaries.cpp => devtools/shared/heapsnapshot/tests/gtest/DoesntCrossCompartmentBoundaries.cpp
2016-03-14 16:11:00 +01:00
Steve Fink
57bca06b15 Backed out changeset 901b1c651c98 (bug 1246804)
--HG--
extra : rebase_source : d80a34f467275bf74672b87fd09a254b39ee20a1
2016-03-14 21:58:31 -07:00
Steve Fink
2dada4b1a0 Bug 1246804 - Switch to using in-source annotations. Use C++ inheritance information when describing GC types. Add a test suite., r=terrence
MozReview-Commit-ID: HCcG2k8Wyb9

--HG--
extra : rebase_source : 4b048fdcb150662c82e1b623e455551cc7281251
2015-09-29 13:39:33 -07:00
Wes Kocher
168746512d Backed out changeset ee3c99e6f676 (bug 1177488) for LeakSanitizer failures
MozReview-Commit-ID: FFfF4u2vOrS

--HG--
extra : rebase_source : 0c7f5e290b388b2f35837a5f757f2d962b973da3
2016-03-14 13:15:21 -07:00
Nathan Froyd
6b6c2a1fcd Bug 1177488 - use |const char*| for representing async call reasons; r=bz,fitzgen
Using a simple |const char*| is more memory-efficient than allocating a
JS string.  We still have to allocate the JS string for passing things
into JS, but ideally we will be able to move the point of allocation
much closer to where it's actually needed, rather than indiscriminantly
doing it all the time.
2016-03-08 16:29:25 -05:00
Shu-yu Guo
5969cafc7d Bug 1254453 - Support using Variant inside GC wrappers. (r=terrence) 2016-03-11 21:43:20 -08:00
Till Schneidereit
dc24ad50e8 Bug 1254968 - Add support for running JS builtins' constructors over Xray wrappers without unwrapping the newTarget. r=bholley,f=bz 2016-02-10 23:09:13 +01:00
Lars T Hansen
1996b83ba5 Bug 1248153 - Do not convert fp to int by cast. r=waldo
--HG--
extra : amend_source : 6eea6a7a9bf113efe43822423ad7d0ab542d94c7
extra : histedit_source : 63cd6daa497e79a01b7011bb5fb56e098104d00d
2016-03-04 14:18:06 +01:00
Jonathan Watt
fea223341b Bug 1253094, part 4 - Stop using DebugOnly for class/struct members in js/. r=billm
MozReview-Commit-ID: mBuo3b34dR
2016-02-26 15:52:07 +00:00
Emanuel Hoogeveen
c8f99e6a24 Bug 1251833 - Part 3: Merge ArenaHeader into Arena. r=terrence 2016-02-29 11:24:00 -05:00
Emanuel Hoogeveen
75b7110778 Bug 1251833 - Part 1: Move allocation into FreeSpan and move firstFreeSpan to the top of Arenas. r=terrence 2016-02-29 11:21:00 -05:00
Steve Fink
8916274a41 Bug 1251480 - Use Rooted<UniquePtr<StateData>> in place of StateData::CustomAutoRooter, r=bz
--HG--
extra : rebase_source : c68dedf2cdfe1e6fda4941cd1b3c52a20f6b7ffe
2016-02-26 18:16:17 -08:00
Steve Fink
ffcba27ec8 Bug 1251480 - Implement Rooted<UniquePtr<T>>, r=terrence
--HG--
extra : rebase_source : 26962432d56d40f42e89b90e7585037d90ce4b68
2016-02-26 11:56:29 -08:00
Nick Fitzgerald
4562939197 Bug 1249107 - Fix assertion failure when reaching start node in JS::ubi::ShortestPaths; r=jimb
The start node was being marked "visited" at the start of the traversal, but
this broke the invariant that if we come across a target node that is marked
"visited" then we had better have an entry for it in our results map. In order
to maintain this invariant and stop triggering these assertion failures, this
commit stops marking the start node as "visited" right off the bat.
2016-02-22 08:55:00 +01:00
Nick Fitzgerald
241e342004 Bug 961323 - Add a method for finding shortest retaining paths of JS::ubi::Node heap graphs; r=jimb
This commit adds `JS::ubi::ShortestPaths` which can find the N shortest
retaining paths starting from some root for any number of target nodes.
2016-02-11 10:38:00 +01:00
Terrence Cole
4ed1c831e9 Bug 1244909 - Store all persistent roots on the JSRuntime; r=sfink 2016-02-11 13:04:10 -08:00
Nick Fitzgerald
70a5002b41 Bug 1247413 - Give JS::ubi::BreadthFirst handlers a non-const reference; r=jimb 2016-02-11 07:59:00 +01:00
Carsten "Tomcat" Book
b054cb159a Backed out changeset 09836ef7b0f6 (bug 961323) for bustage on a CLOSED TREE
--HG--
extra : rebase_source : 80a8d58487f1e56624bd06572e09cc07e4404fe2
2016-02-12 08:41:24 +01:00
Nick Fitzgerald
649d03679a Bug 961323 - Add a method for finding shortest retaining paths of JS::ubi::Node heap graphs; r=jimb
This commit adds `JS::ubi::ShortestPaths` which can find the N shortest
retaining paths starting from some root for any number of target nodes.
2016-02-11 10:38:00 +01:00
Nicholas Nethercote
931d190779 Bug 1244841 - Don't measure SharedArrayBuffer objects multiple times. r=lth.
Redoes object element measurement and reporting:

- Adds "non-heap/elements/shared", which reports a (size / refcount)
  measurement. Previously these measurements went into
  "non-heap/elements/mapped" and the full size would be erroneously reported
  for every thread sharing the buffer.

- Renames "non-heap/elements/mapped" as "non-heap/elements/normal".

- Renames "malloc-heap/elements/non-asm.js" as "malloc-heap/elements/normal".

- Leaves "{malloc,non}-heap/elements/asm.js" unchanged.

--HG--
extra : rebase_source : cd1a660000fcb95674b317098be2dfec792b2c8e
2016-02-12 09:18:46 +11:00
Nicholas Nethercote
462eb9a0d4 Bug 1245737 (part 2) - Don't bother measuring DtoaState. r=bhackett.
It's gone from 4,096 bytes per JS thread to 72 bytes per thread. (Also, the
old code only measured the DtoaState for the main thread.)

--HG--
extra : rebase_source : bfe0772b8c760a45ca3665e2c0939b121189520a
2016-02-05 14:50:55 +11:00
Terrence Cole
537d4adc58 Bug 1247328 - Make PersistentRooted fully support Move semantics; r=sfink
--HG--
extra : rebase_source : fb4ccb31648f27b75c3088636a9cafd0934b6082
2016-02-10 12:28:18 -08:00
Terrence Cole
dcd54c45e5 Bug 1246697 - Use simpler semantics for PersistentRooted<Traceable>; r=sfink
--HG--
extra : rebase_source : 4b67513c7c9b9405f06c0d633af45c1b8d971393
2016-02-10 09:48:28 -08:00
Nicholas Nethercote
ff840e5f16 Bug 1246855 (part 2) - Measure CompartmentPrivates during memory reporting. r=terrence.
This also expands the coverage to include the hash table elements in the
mWrappedJSMap.
2016-02-10 08:41:38 +11:00
Tom Schuster
9c44f6d73e Bug 1246318 - Make the proxy enumerate trap non-standard. r=efaust 2016-02-10 00:12:24 +01:00
Nicholas Nethercote
3a94c4149a Bug 1245761 (part 2) - Measure JIT compartments. r=jandem.
--HG--
extra : rebase_source : cc6d1c57306405cdaada9ff876256b8eb2dad03f
2016-02-04 17:36:06 +11:00
Hannes Verschore
ccede1b3ba Bug 1242578 - Add documentation about the binary arith annotations for jit coach, r=shu 2016-02-04 06:56:49 -05:00
Hannes Verschore
e9ef8380a9 Bug 1242578 - Annotate binary arith for jit coach, r=shu 2016-02-04 06:56:46 -05:00
Terrence Cole
245c375321 Bug 1244365 - Remove Traceable; r=sfink
--HG--
extra : rebase_source : 8e6498b6e379b026c70b4ba7d13d30b664eef4ed
2016-01-29 16:56:11 -08:00
Terrence Cole
681960447c Bug 1244358 - Support all types in PersistentRooted; r=sfink
--HG--
extra : rebase_source : 4b2d0c675075c1a0e19bad293ca255ba898f057c
2016-01-27 13:03:52 -08:00
Terrence Cole
309f950dae Bug 1243888 - Derive RootKind automatically from TraceKind; r=sfink
--HG--
extra : rebase_source : 4ea174eb95c36ac1452baa0ed44b4c99ff517d9e
2016-01-27 09:54:53 -08:00
Terrence Cole
ecf2779f43 Bug 1234862 - Part 5.1: Followup comment fixes; r=sfink
--HG--
extra : rebase_source : 3f8232d081da939faa9d8890e2001869498d810a
2016-01-28 14:48:17 -08:00
Luke Wagner
c4e57a6906 Bug 1243252 - Remove const restriction on CharsToNewUTF8CharsZ (r=jandem)
--HG--
extra : commitid : CZd2zqCgeCG
extra : rebase_source : 3c6a71b1e64e605d9e5e8bde848a7dc9c12b824d
2016-01-28 09:20:19 -06:00
Tom Schuster
180499c4ff Bug 1242214 - Rename JSPropertyDescriptor JS::PropertyDescriptor in js. r=sstangl 2016-01-28 11:28:04 +01:00
Terrence Cole
52e9feb9d3 Bug 1234862 - Part 5: Rename DefaultGCPolicy to GCPolicy; r=sfink 2016-01-26 12:53:35 -08:00
Terrence Cole
f4ed10f0f7 Bug 1234862 - Part 3: Always use DefaultGCPolicy for GCHashTables; r=sfink 2016-01-25 08:43:53 -08:00
Terrence Cole
bacbbed947 Bug 1234862 - Part 2: Always use DefaultGCPolicy with GCVector; r=sfink 2016-01-22 11:24:11 -08:00
Terrence Cole
eff749c612 Bug 1234862 - Part 1: Rename GCMethods to BarrierMethods; r=sfink
--HG--
extra : rebase_source : a773cf25e8e9986a154b8a8b0d04c6b9267545b8
2015-12-28 10:11:40 -08:00
Jeff Walden
58c4a19e64 Bug 1079844 - Refer to "detaching" instead of "neutering" of ArrayBuffers, in JIT optimization tracking code. r=jandem
--HG--
extra : rebase_source : b29be8b291a5273b36b6249e6db93320aa9a881c
2016-01-24 23:41:38 -08:00
Luke Wagner
b4d7059241 Bug 1234985 - Hoist CStringHasher (r=sfink)
--HG--
extra : commitid : KxwfOhuDfeq
extra : rebase_source : 1a38c30bea5b324ca913a7688c2febd834873d49
2016-01-20 12:00:21 -06:00
Jon Coppeard
de80f46e74 Bug 1240416 Disallow setting GC mark stack size to zero, and assert on attempt to realloc() zero bytes r=terrence 2016-01-20 10:13:14 +00:00
Nick Fitzgerald
59008f94c6 Bug 1233831 - Part 2: Expose JS::gcreason::ExplainReason to embedders; r=terrence
This renames the internal function `js::gcstats::ExplainReason` to
`JS::gcreason::ExplainReason` and publicly exposes it to embedders.
2016-01-19 12:48:22 -08:00
Nick Fitzgerald
445de2814b Bug 1233831 - Part 0: JSAPI plumbing for nursery collection callbacks; r=terrence
This commit adds the relatively boring plumbing needed to expose methods to set
callbacks that get fired on nursery collection start and end, as well as storing
said callbacks internally.
2016-01-19 12:48:22 -08:00
Luke Wagner
72ea23c63e Bug 1239601 - improve the UniquePtr situation (r=jandem)
--HG--
extra : commitid : JegWAoGsuQ9
extra : rebase_source : 995c1b6ab8e4fd3b83c44741cd84a2d7b0d934d7
2016-01-15 18:26:20 -06:00
Luke Wagner
6ebd19920f Bug 1239601 - improve the UniquePtr situation (r=jorendorff)
--HG--
extra : commitid : FwqWNSZ3SKY
extra : rebase_source : 75ed67bfadcbdaeb5bf89a57ad6ca9ef75b7f1f0
2016-01-15 18:26:06 -06:00
Terrence Cole
3c0b63c8e8 Bug 1239515 - Simplify HashSet's key-overwriting interface; r=sunfish 2016-01-14 09:43:30 -08:00
Georg Kilzer
8ffe0ffc55 Bug 1236373 - Fix JSCLASS_CACHED_PROTO_WIDTH's definition when it appears outside the js namespace. r=jwalden
--HG--
extra : rebase_source : 27179d493978c6d5dbc1f5c7d05a6597ae9a0109
2016-01-03 21:15:41 +01:00
Jim Blandy
9aba54fc4f Bug 1236801: Don't check for simulated OOM in a way that invalidates AddPtrs for no discernable reason. (Revised to fix uninitialized var, r=sfink) r=jonco
--HG--
extra : rebase_source : 23222e831fb516bc3cc2672b4c6807564d56bce1
2016-01-12 16:49:45 -08:00
Wes Kocher
0439338087 Backed out changeset 7111837e42b9 (bug 1236801) for SM wError bustage
--HG--
extra : commitid : EZ9x68Sn1qG
2016-01-12 16:55:12 -08:00
Jim Blandy
637fbf70ae Bug 1236801: Don't check for simulated OOM in a way that invalidates AddPtrs for no discernable reason. r=jonco
--HG--
extra : rebase_source : 12fd6cb6969733355581d7cd28876a7b46097c45
extra : amend_source : 04430312d8175c746139a85b0f8062b408c82192
2016-01-08 10:01:53 -08:00
Terrence Cole
738245d262 Bug 1238786 - Part 1: Allow null pointers in public tracing APIs; r=sfink
--HG--
extra : rebase_source : aaa025bffb09758f886450b8a6a9372a65fa6db7
2016-01-12 13:07:53 -08:00
Terrence Cole
cadd5c5f26 Bug 1238779 - Remove the unused and nonsensical JS_TraceRuntime; r=fitzgen 2016-01-12 13:07:54 -08:00
Terrence Cole
b8876546d0 Bug 1238711 - Rename TraceableVector to GCVector; r=sfink
--HG--
rename : js/public/TraceableVector.h => js/public/GCVector.h
2015-12-28 11:45:13 -08:00
Luke Wagner
498e4980ad Bug 1238195 - Switch over some AutoVectorRooters to Rooted<TraceableVector>s and fill in some missing support (r=terrence)
--HG--
extra : commitid : GJxokWWXWjW
extra : rebase_source : ad0f7b28e6da997c139de661182980ecfced1b20
2016-01-11 12:37:11 -06:00
Benjamin Bouvier
a2ffb6e845 Bug 1235408: Lazily resolve SIMD types; r=jandem
--HG--
extra : rebase_source : 552c34977142aa1bb89eced6d709ea3645460f04
2016-01-11 16:03:02 +01:00
Nigel Babu
3989c307d6 Backed out changeset 51e26ad49ed2 (bug 1235408) for build bustage on a CLOSED TREE
--HG--
extra : commitid : 24qZk2WyHvI
2016-01-11 16:27:20 +05:30
Benjamin Bouvier
06044ccf15 Bug 1235408: Lazily resolve SIMD types; r=jandem
--HG--
extra : commitid : KF8d4hqdx47
extra : rebase_source : 19270a20ddcf9b05552a092a6f9f59c89f58f73b
2015-12-31 10:25:00 +01:00
Luke Wagner
ce49978208 Bug 1237508 - Odin: make AsmJSModule derive wasm::Module (r=bbouvier)
--HG--
extra : commitid : FRmfuJ5MQZo
extra : rebase_source : 603b10e7fcf1cd6daa9587cd8e7cab570c519230
2016-01-08 12:35:23 -06:00
Terrence Cole
b7aa38d7ac Bug 1235923 - Part 1: Add C++ APIs for unbarriered pointer tracing; r=sfink 2015-12-30 10:10:29 -08:00
Steve Fink
1445b238f3 Bug 1237445 - Implement GCRekeyableHashMap, r=terrence
--HG--
extra : rebase_source : f07a27b1497d6099300b99ac712e27115be29370
2016-01-06 14:41:12 -08:00
Terrence Cole
eca54a7ace Backout 9dfd86b06459c257390c2514380a09456b008e33 (Bug 1235923) for build bustage on a CLOSED TREE.
--HG--
extra : rebase_source : 412366ba75e73e2338a9ec21a96c40bd466fa6db
2016-01-06 12:05:08 -08:00
Terrence Cole
e03a483cfa Bug 1235923 - Part 1: Add C++ APIs for unbarriered pointer tracing; r=sfink 2015-12-30 10:10:29 -08:00
Terrence Cole
14bc095b59 Bug 1235598 - Part 1: Add better SpiderMonkey API support for tracing in C++; r=sfink
--HG--
extra : rebase_source : 777e1dd17331f38b482fc12ef1e2d96ec61fb02d
2015-12-30 08:52:12 -08:00
Wes Kocher
a69ea37914 Backed out 2 changesets (bug 1235598) for linux reftest bustage
Backed out changeset 3bcd3c276785 (bug 1235598)
Backed out changeset 80cd10a8b3d7 (bug 1235598)

--HG--
extra : commitid : DZRlFy6bH2m
extra : rebase_source : 3479cd1146e58115883f2329861647a962d162cc
2015-12-31 15:51:13 -08:00
Terrence Cole
dbe067989c Bug 1235598 - Part 1: Add better SpiderMonkey API support for tracing in C++; r=sfink
--HG--
extra : rebase_source : 8e2a38d3eedc0bc795be696ca36759c153e3b34e
2015-12-30 08:52:12 -08:00
Sean Stangl
f69acc592f Bug 470143 - Part 2/2 - TrackedOptimization changes for TypeOfNoSuchVar. r=shu 2015-12-15 13:42:56 -08:00
Wes Kocher
a865324b23 Backed out 3 changesets (bug 1235598) for build bustage CLOSED TREE
Backed out changeset 7da07459ce20 (bug 1235598)
Backed out changeset cf35918cb3ba (bug 1235598)
Backed out changeset 55db488f9dfd (bug 1235598)

--HG--
extra : commitid : 2Q694NrtoN0
2015-12-30 15:17:44 -08:00
Terrence Cole
4cc6b37c96 Bug 1235598 - Part 1: Add better SpiderMonkey API support for tracing in C++; r=sfink
--HG--
extra : rebase_source : 66daf07ec194720d31b058ef7288ef1ee2fcf6ca
2015-12-30 08:52:12 -08:00
Luke Wagner
3c88b36742 Bug 1229642 - Split wasm::Module out of AsmJSModule (r=bbouvier)
--HG--
rename : js/src/asmjs/AsmJSFrameIterator.cpp => js/src/asmjs/WasmFrameIterator.cpp
rename : js/src/asmjs/AsmJSFrameIterator.h => js/src/asmjs/WasmFrameIterator.h
rename : js/src/asmjs/AsmJSSignalHandlers.cpp => js/src/asmjs/WasmSignalHandlers.cpp
rename : js/src/asmjs/AsmJSSignalHandlers.h => js/src/asmjs/WasmSignalHandlers.h
rename : js/src/asmjs/Wasm.h => js/src/asmjs/WasmTypes.h
extra : commitid : 4LBqZ9p8yXp
extra : rebase_source : b0b165b4be2a5ac4bca20d75d9561005e8f57020
2015-12-28 17:39:21 -06:00
Jakob Stoklund Olesen
2d7330a315 Bug 1233111 - Add a new ToUint8() function. r=efaust
This is needed for casting values into a SIMD.Uint8x16 lane.

--HG--
extra : rebase_source : 361feb40a7216cacf9e39c4e264b925cb06da540
2015-12-23 09:52:39 -08:00
Jon Coppeard
498b421261 Bug 1232672 - Use MOZ_WARN_UNUSED_RESULT to make hash table clients check for failure r=luke r=billm r=njn 2015-12-22 13:29:43 +00:00
Nick Fitzgerald
bc24ddcf02 Bug 1233101 - Use MOZ_LIKELY in js_new etc to help branch prediction; r=terrence 2015-12-18 12:05:14 -08:00
Nick Fitzgerald
ffd963dd3f Bug 1231763 - Extract breakdown parsing from JS::ubi::Census. r=jimb 2015-12-16 09:19:00 +01:00