Commit Graph

804 Commits

Author SHA1 Message Date
Jon Coppeard
b59461402a Bug 941804 - Reduce chunk size to 256K for B2G r=terrence 2014-07-14 10:05:17 +01:00
Jeff Walden
fa76238b4c Bug 1037106 - Use UniquePtr to manage ownership of the Debugger C++ class instance created for a new Debugger object, until it can be stored in the Debugger object's private slot (and owned by it). r=jimb, r=luke
--HG--
extra : rebase_source : 0f283bdd22e0e1d320f12b60e9fe98b5a606aa8d
2014-07-09 17:58:43 -07:00
Jan de Mooij
e037c20ef0 Bug 1034627 part 7 - Cleanup and expose UTF8 conversion functions. r=terrence 2014-07-11 16:22:37 +02:00
Ed Morley
25406c0333 Backed out changeset 110fbc2ebc1a (bug 1034627) 2014-07-11 15:46:33 +01:00
Jan de Mooij
aa94a6f856 Bug 1034627 part 7 - Cleanup and expose UTF8 conversion functions. r=terrence 2014-07-11 16:22:37 +02:00
Jon Coppeard
07673e8cf9 Bug 1034621 - Make it possible to configure nursery size r=terrence
--HG--
extra : rebase_source : 7bdf2b2b15712a31baa34501ef4adcfe0ef8bf7d
2014-07-11 09:59:05 +01:00
Nicholas Nethercote
2a0942be41 Bug 1036789 - Convert the third quarter of MFBT to Gecko style. r=Ms2ger.
--HG--
extra : rebase_source : 668cd394806203ddfa34bd4f226335ff26c846b5
2014-07-10 19:10:17 -07:00
Jeff Walden
48a41479a8 Bug 1036703 - Manage TokenStream::{sourceMap,display}URL_ using UniquePtr. r=jimb
--HG--
extra : rebase_source : 063beaeb184059b6a03338f05f4d073a5ea8bf27
2014-07-09 16:53:42 -07:00
Carsten "Tomcat" Book
d626e8a402 Backed out changeset 03b7d111cc86 (bug 857648) 2014-07-04 08:23:17 +02:00
Boris Zbarsky
bc8063b408 Bug 857648 part 6. Remove the now-unused JS::DescribeStack API. r=jimb 2014-07-04 01:25:30 -04:00
Dan Gohman
abf3658282 Bug 1004363 - IonMonkey: A new value-numbering implementation based on a dom-tree DFS. r=nbp 2014-06-27 10:38:44 -07:00
Steve Singer
f7e8253480 Bug 1030400 - Add sym to the 32 bit big endian branch. r=jorendorff 2014-06-25 18:48:00 +02:00
Jan de Mooij
21cfe56f5f Bug 1027528 part 15 - Make structured clone work with Latin1 strings. r=jorendorff,bent 2014-06-25 08:05:41 +02:00
Jim Blandy
7a407c784d Bug 961325: Give PersistentRooted a copy constructor that can take a 'const' original. r=terrence 2014-06-23 12:59:19 -07:00
Terrence Cole
06bb27de7f Bug 1028358; r=jonco
--HG--
extra : rebase_source : 41cf1eaa104bf386c77777be906236d1d15a2622
2014-06-23 12:36:36 -07:00
Jason Orendorff
edb4532fbf Bug 645416, part 21 - Add symbol jsids (SYMBOL_TO_JSID), removing the legacy support for object jsids (OBJECT_TO_JSID). r=terrence,r=jimb,r=efaust.
With just this patch, there are not actually any symbol jsids flowing through
the system, just as there are not actually any object jsids. But a subsequent
patch (part 23) changes this.

This patch deletes some code in CTypes.cpp that is simply confused about how
element accesses work: Int64 and UInt64 objects were never actually converted
to object jsids, so the code being removed here was already dead code.

--HG--
extra : rebase_source : 86f421c6454344e76ce5219b7b1aed5c83b45f24
2014-06-23 10:56:52 -05:00
Jason Orendorff
26bdfdcc2f Bug 645416, part 3 - Symbol layout and GC support for allocating them. r=terrence.
Layout: js/src/vm/Symbol.h defines the new class JS::Symbol. JS::Symbol is the
same size as JSString on all platforms, because the allocator does not support
smaller allocations.

Allocation: Since the purpose of symbols is to serve as property keys, they are
always allocated in the atoms compartment.

We take a lock when allocating. This could probably be replaced with a
main-thread-only assertion. However, if atom allocation is not already a
bottleneck, symbol allocation probably never will be.

Symbols are given their own finalize-class in the GC. This means we allocate a
page per zone for symbols, even though they are only ever allocated in the
atoms zone. Terrence thought this could be easily fixed later. It should be; we
never touch the page, but a 32-bit virtual address space does not just have
infinite pages to spare.

A jsapi-test exercises the new symbol allocation code. A few oddities in
jsapi-tests are fixed in passing.

Discussion after review led to some new assertions about minimum object size in
AllocateObject and AllocateNonObject.

--HG--
extra : rebase_source : 45abb651d3b1b493d77a5dd0eb554f96b058c63a
2014-06-23 10:55:51 -05:00
Jason Orendorff
64a2896773 Bug 645416, part 2 - Add support for symbols to JS::Value. r=luke.
The API for symbol Values is much like the API for strings.

The implementation behind all this is in a later patch. Here, a class
JS::Symbol is declared, but not defined anywhere yet.

The constants being deleted from js/public/Value.h probably haven't been used
since Tracemonkey days.

--HG--
extra : rebase_source : 5b2d0cc4d99223483e850ee80913eef3854c427c
2014-06-23 10:55:51 -05:00
Jason Orendorff
cc9b00ab80 Bug 645416, part 1 - Add an enum for symbols to JSValueType. r=nbp.
JSVAL_TYPE_SYMBOL is inserted between STRING and NULL, rather than added at the
end, in order to preserve all the inequality relations on JSValueTypes used
throughout Value.h. (Search the header for the operators < > <= >=.)

Otherwise, this pretty much just works. Some details of Ion snapshot layout
had to change to accommodate 4-bit types.

--HG--
extra : rebase_source : e3141e6a9ee32ef563dab43a4942a9e67d234865
2014-06-23 10:55:51 -05:00
Bill McCloskey
a144caadb7 Bug 1017302 - Expose add-on IDs to JS engine (r=bholley) 2014-06-21 11:54:22 -07:00
Brian Hackett
3ba0ec8938 Bug 1020012 - Consolidate ScriptSources with the same source, r=luke. 2014-06-21 10:39:04 -07:00
Jan de Mooij
a9a7517ec1 Bug 1027528 part 3 - Make JS_EncodeString and friends handle Latin1 strings. r=Waldo 2014-06-20 12:39:44 +02:00
Birunthan Mohanathas
bc0233fe47 Bug 1026535 - Fix mismatched class/struct tags. r=ehsan 2014-06-18 17:57:51 -07:00
Nicholas Nethercote
aaf6fb2124 Bug 1010064 - Allow memory reports to be anonymized. r=bsmedberg.
--HG--
extra : rebase_source : 5eb756b17a97e751deb0f47e909fdb35533cb23b
2014-05-20 23:06:54 -07:00
Ryan VanderMeulen
2c783e8f61 Backed out changeset aca2ec2457ec (bug 1016738) for re-introducing frequent WebRTC crashes. 2014-06-17 21:12:43 -04:00
Bill McCloskey
8e850f27e9 Bug 1016738 - Simplify/fix "dead compartment" logic (r=luke,jonco) 2014-06-17 11:20:33 -07:00
Jan de Mooij
d56b70afc1 Bug 1025875 part 8 - Make JS_EncodeStringToUTF8, print etc work with Latin1 strings. r=Waldo 2014-06-17 15:18:23 +02:00
Brian Hackett
5385dceeca Bug 1024038 - Remove YARR, r=jandem. 2014-06-16 15:37:53 -07:00
Jim Blandy
d84b1105f4 Bug 960786: SpiderMonkey should provide an introspection API for memory heap analysis (ubi::Node) r=sfink 2014-06-16 15:18:57 -07:00
Terrence Cole
2cfeae1d9e Bug 1017650 - Re-arrange the GC API include dependency ordering; r=jonco
--HG--
extra : rebase_source : bc27b7206c674ef2247169dd700b9fbf61e5bd74
2014-06-16 11:59:45 -07:00
Nicholas Nethercote
2207ecfbcd Backout 277bacd9f2f8 (bug 1023719) for causing intermittent crashes.
--HG--
extra : rebase_source : e6c9e54dd2df572da7f8cdf3cd6226a1aeeee883
2014-06-13 06:39:16 -07:00
Nicholas Nethercote
feeaf7db9a Bug 1023719 - Report notable classes in the JS memory reporter. r=till.
--HG--
extra : rebase_source : 5a842c36cf7202f6751290da80cefb005fd8db95
2014-04-15 19:43:18 -07:00
Lars T Hansen
f6cd570167 Bug 933313: Per-worker generational GC for PJS. r=jandem r=terrence r=shu r=jonco 2014-06-09 22:04:14 -07:00
Bill McCloskey
94dcca9b50 Bug 1016738 - Back out for webrtc crashes. 2014-06-09 12:30:38 -07:00
Jon Coppeard
1e52d084da Bug 1021114 - Remove GCMethods::kind() in favour or RootKind::rootKind() r=terrence 2014-06-07 10:34:57 +01:00
Jon Coppeard
f9ee688bb5 Bug 988486 - Make more GCRuntime members private and add necessary accessors r=terrence 2014-06-07 10:34:57 +01:00
Ryan VanderMeulen
c926517847 Backed out 3 changesets (bug 1021114, bug 988486) for GC crashes on a CLOSED TREE.
Backed out changeset f56234ba7ec7 (bug 1021114)
Backed out changeset 14a4a9062253 (bug 988486)
Backed out changeset 03eccac81e15 (bug 988486)
2014-06-07 00:03:17 -04:00
Jan de Mooij
5a64b7de18 Bug 1020869 - Make IdToTypeId, StringIsArrayIndex etc work with Latin1 strings. r=bhackett 2014-06-07 14:59:52 +02:00
Jon Coppeard
a51d6e0272 Bug 1021114 - Remove GCMethods::kind() in favour or RootKind::rootKind() r=terrence 2014-06-07 10:34:57 +01:00
Jon Coppeard
f8eef3aa53 Bug 988486 - Make more GCRuntime members private and add necessary accessors r=terrence 2014-06-07 10:34:57 +01:00
Jim Chen
809db03f75 Bug 1013326 - Move script principals APIs to jsfriendapi; r=luke 2014-06-06 18:39:40 -04:00
Jason Orendorff
3362b05761 Bug 1017067 - Merge deleteProperty/deleteElement ops back into a single deleteGeneric op. r=bhackett. 2014-06-05 13:19:23 -04:00
Carsten "Tomcat" Book
7ec9b3199d Backed out changeset d15632d88126 (bug 933313) for cppunit testfailures on a CLOSED TREE 2014-06-06 15:49:45 +02:00
Lars T Hansen
df0eb6e634 Bug 933313: Per-worker generational GC for PJS. Take 2. r=jandem, r=shu, r=terrence, r=jonco 2014-06-06 11:42:10 +02:00
Carsten "Tomcat" Book
352f40fc4e Backed out changeset d89d4281fd8d (bug 933313) for bustage on a CLOSED TREE 2014-06-06 10:18:04 +02:00
Lars T Hansen
3bb7337386 Bug 933313 - Per-worker generational GC for PJS. r=jandem, r=shu, r=terrence 2014-06-06 09:21:52 +02:00
Jon Coppeard
fb0a091308 Bug 1020690 - Type exact stack rooting machinery. r=sfink
--HG--
extra : rebase_source : 366ff0579912b8a03f29abb882cabcc982a44d47
2014-06-05 10:38:00 -04:00
Ryan VanderMeulen
cf6ea4c31e Backed out changeset 846ee7c7debf (bug 1020690) for bustage.
CLOSED TREE
2014-06-05 14:39:11 -04:00
Jon Coppeard
095ddda7f4 Bug 1020690 - Type exact stack rooting machinery. r=sfink 2014-06-05 10:38:00 -04:00
Victor Porof
b3b4be1879 Bug 1017790 - Expose category information in the profiler data, r=djvj 2014-06-04 14:37:49 -04:00
Victor Porof
90e774e163 Bug 1019182 - ProfileEntry flags should be zeroed when setting frame data, r=djvj 2014-06-04 14:37:49 -04:00
Jon Coppeard
e3c37fbf79 Bug 1008473 - Fix breakage on little endian 32 bit builds r=terrence 2014-06-03 16:29:39 +01:00
Jan de Mooij
c3f02ebac2 Bug 1018568 - Make AutoAssertOnGC a nop in opt builds. r=terrence 2014-06-03 09:27:18 +02:00
Bill McCloskey
c6897ddf69 Bug 1016738 - Simplify/fix "dead compartment" logic (r=luke,jonco) 2014-05-30 07:46:12 -07:00
Jon Coppeard
0fbf27d590 Bug 1008473 - Remove some redundant methods and misc tidyup r=terrence 2014-06-02 16:11:24 +01:00
Jon Coppeard
c68efbdd4d Bug 1008473 - Make Value::toGCThing() return a Cell pointer rather than void* r=terrence 2014-06-02 16:10:53 +01:00
Phil Ringnalda
3e5340dd29 Merge f-t to m-c 2014-05-31 20:31:07 -07:00
Victor Porof
ebedad1bb5 Bug 1007203 - Set the categories as flags on profile entries, r=djvj 2014-05-30 21:41:11 -04:00
Victor Porof
9ce7e9c089 Bug 1007203 - Always add categories when pushing to the pseudostack, r=djvj 2014-05-23 17:12:29 -04:00
Jan de Mooij
ce729bb6e9 Bug 1018243 - Use unsigned char instead of char for latin1 strings. r=luke 2014-05-31 10:44:32 +02:00
Ryan VanderMeulen
5822c2ae12 Backed out changeset 0d61bcf08362 (bug 1013531) for bustage.
CLOSED TREE
2014-05-29 13:26:55 -04:00
Terrence Cole
a3d66fba38 Bug 1013531 - Clarify the naming of the rooting analysis supression guards; r=sfink
--HG--
extra : rebase_source : ce44e4a4428414a132eae7167c485ff366b1f0a6
2014-05-28 17:34:36 -07:00
Victor Porof
07cede5f0b Bug 1004726 - Clean up profiler pseudo-stack representation (relanded), r=djvj,jchen 2014-05-28 18:44:41 -04:00
Victor Porof
9e41feb374 Backed out changeset c2429d6c41fb (Bug 1004726) for regressions on B2G, r=me 2014-05-26 21:51:50 -04:00
Ehsan Akhgari
5b0272c079 Bug 1013663 - Fix some bad implicit conversion constructors in the JS engine; r=jorendorff,jandem 2014-05-25 21:46:24 -04:00
Bobby Holley
09f9f51b84 Bug 992958 - Add support for prototype JSPropertySpecs on ClassSpec. r=luke 2014-05-23 16:53:03 -07:00
Bobby Holley
8cb3d69adf Bug 992958 - Streamline __proto__ getter and setter definitions into a JSPropertySpec. r=luke
We don't need the nativeCall bits anymore.
2014-05-23 16:53:02 -07:00
Dan Gohman
ad6d8397a0 Bug 1012971 - SpiderMonkey: Fix various warnings. r=nbp 2014-05-22 11:15:06 -07:00
Heiher
64ac1ec0b7 Bug 997274 - Value.h uses NUNBOX32 and PUNBOX64 instead of JS_BITS_PER_WORD. r=nbp 2014-05-21 06:47:10 -07:00
Carsten "Tomcat" Book
e64cd11ad7 merge fx-team to mozilla-central 2014-05-21 13:57:43 +02:00
Victor Porof
07986ca4cd Bug 1004726 - Clean up profiler pseudo-stack representation. r=djvj,mrosenberg 2014-05-20 15:25:25 -04:00
Jon Coppeard
1d203c9d72 Bug 929314 - Remove Handle::repoint() r=terrence 2014-05-20 10:57:03 +01:00
Jon Coppeard
f17bd34eff Bug 988486 - Move verifier functions into GCRuntime r=terrence 2014-05-19 11:09:55 +01:00
Terrence Cole
e82db4c03a Bug 1013531 - Clarify the naming of the rooting analysis supression guards; r=sfink
--HG--
extra : rebase_source : 95229e907222dd7335f92ae13dd83f1065eabf58
2014-05-28 17:34:36 -07:00
Brian Smith
43faa7abc2 Bug 1010634, Part 4: Fix signed/unsigned conversion warning in js/ProfilingStack.h, r=luke
--HG--
extra : rebase_source : 7abda28eb58b81fd59a3c7deb2207b22e2075702
2014-05-29 20:54:49 -07:00
Ryan VanderMeulen
1206378822 Backed out 2 changesets (bug 1016738, bug 1017150) for spikes in GC-related crashes.
Backed out changeset 93c5b9181c84 (bug 1016738)
Backed out changeset c3ce56241969 (bug 1017150)
2014-05-30 15:23:02 -04:00
Bill McCloskey
2bfdd537fd Bug 1016738 - Simplify/fix "dead compartment" logic (r=luke,jonco) 2014-05-30 07:46:12 -07:00
Terrence Cole
9900a0509a Bug 1010655 - Always use the faster version of IsInsideNursery when possible; r=jonco
--HG--
extra : rebase_source : 18c195a3a5897529275deb210bfa7f57f8e29bd8
2014-05-14 19:48:09 -07:00
Ryan VanderMeulen
cd4118e735 Backed out changeset 36bfb1d8b8fe (bug 1010655) for Cpp test crashes. 2014-05-16 14:52:13 -04:00
Terrence Cole
07a92341f3 Bug 1010655 - Always use the faster version of IsInsideNursery when possible; r=jonco
--HG--
extra : rebase_source : 474ef235d747f9008f79b2ad0328ec1566b8c641
2014-05-14 19:48:09 -07:00
Luke Wagner
b1159b6282 Bug 1007383 - Include asm.js frames in JS::DescribeStack (r=jandem,robcee) 2014-05-15 12:30:45 -05:00
Ryan VanderMeulen
fed316d6b8 Backed out changeset ce34c13388f2 (bug 1007383) for crashtest failures. 2014-05-15 14:23:11 -04:00
Luke Wagner
20e7381038 Bug 1007383 - Include asm.js frames in JS::DescribeStack (r=jandem,robcee) 2014-05-15 12:30:45 -05:00
Dan Gohman
0085f65548 Bug 1004363 - SpiderMonkey: Eliminate unused functions. r=mjrosenb 2014-05-14 21:51:55 -07:00
Andrew McCreight
08ed56db1d Bug 1009118 - Add isUnlimited to SliceBudget. r=jonco 2014-05-14 09:45:49 -07:00
Jan de Mooij
e7ac1c18d7 Bug 964915 part 1 - Remove cx argument from innerObject hook. r=efaust 2014-05-08 15:00:36 +02:00
Boris Zbarsky
e05955b899 Bug 1006718. Add some sanity static asserts about DOM object slot counts. r=peterv,jorendorff 2014-05-07 22:28:57 -04:00
Terrence Cole
458143c115 Bug 989414 - Access the store buffer through the chunk trailer; r=jonco 2014-05-01 09:26:12 -07:00
Terrence Cole
cb10cad45c Backout 9a6b434b34be for mochitest-2 failures on a CLOSED TREE.
--HG--
extra : rebase_source : 84bb2205e9e9df143d3ba0b21127dd2030957c7d
2014-05-01 12:52:22 -07:00
Terrence Cole
07a0c66a89 Bug 989414 - Access the store buffer through the chunk trailer; r=jonco
--HG--
extra : rebase_source : 29c53eeb0dd0931f016dcfd91de42be00e02a946
2014-05-01 09:26:12 -07:00
Jon Coppeard
1216544376 Bug 959787 - Handlify remaining JS APIs r=terrence r=bz r=bholley 2014-04-30 10:10:33 +01:00
Nicholas Nethercote
910e605997 Bug 952650 (part 18) - Rename JSVAL_IS_SPECIFIC_BOOLEAN. r=till.
--HG--
extra : rebase_source : 73b6b9d92ca940249cdb1d6bdc71f9ee9bb498ec
2014-04-28 16:55:40 -07:00
Nicholas Nethercote
1c0602e423 Bug 952650 (part 16) - Remove JSVAL_TO_PRIVATE. r=till.
--HG--
extra : rebase_source : 603bb66a90484b488bedf1dd4da6935324c148c6
2014-04-28 16:01:31 -07:00
Nicholas Nethercote
278d02539e Bug 952650 (part 15) - Remove JSVAL_TO_GCTHING. r=till.
--HG--
extra : rebase_source : c9df656012842c35f4a0e069168842b5e6c4d935
2014-04-28 16:01:30 -07:00
Nicholas Nethercote
049829fa60 Bug 952650 (part 14) - Remove JSVAL_IS_GCTHING. r=till.
--HG--
extra : rebase_source : 469430d481f5fdb14d49609d8460f9fcbc90927f
2014-04-28 16:01:30 -07:00
Nicholas Nethercote
1c5751ac95 Bug 952650 (part 13) - Remove JSVAL_IS_PRIMITIVE. r=till.
--HG--
extra : rebase_source : 450ba0261ef5a8546c81f9f645605e312585d6c6
2014-04-27 20:27:54 -07:00
Nicholas Nethercote
530542eecd Bug 952650 (part 12) - Remove JSVAL_TO_OBJECT. r=till.
--HG--
extra : rebase_source : 60dcaa2b778d3cf6eb7dc1a4949aab010ed8c130
2014-04-27 19:58:52 -07:00
Rodrigo Rodriguez Jr.
3a5329b969 Bug 952650 (part 11) - Remove JSVAL_TO_INT. r=njn.
--HG--
extra : rebase_source : 41923458bbf8fd957c9a57685df4969f1190bd9f
2014-04-27 19:55:08 -07:00
Rodrigo Rodriguez Jr.
75b31bf370 Bug 952650 (part 10) - Remove JSVAL_IS_NUMBER. r=njn.
--HG--
extra : rebase_source : eaef4276d665c9bb06eb695989fb4c3b08358069
2014-04-27 19:48:45 -07:00
Rodrigo Rodriguez Jr.
9a92d22f5a Bug 952650 (part 9) - Remove JSVAL_IS_INT. r=njn.
--HG--
extra : rebase_source : dc0c170914c2370c218cdbbe671d2a68628f5a87
2014-04-27 19:47:02 -07:00