Commit Graph

787 Commits

Author SHA1 Message Date
Terrence Cole
a1f75ee1c9 Bug 975947 - Fix generational GC's interaction with the barrier verifier; r=sfink 2014-02-24 15:08:05 -08:00
Nathan Froyd
daf6fcb907 Bug 970498 - remove unnecessary padding in JSClass and js::Class; r=Waldo 2014-02-24 15:20:38 -05:00
Nathan Froyd
c61d66e196 Bug 970504 - make JS_CLASS_MEMBERS useful in more places; r=jorendorff 2014-02-24 15:08:57 -05:00
Jim Chen
1d7838e5f6 Bug 974980 - Always push a js:RunScript frame in pseudostack; r=BenWa 2014-02-24 12:27:58 -05:00
Brian Hackett
d3ebcda1f6 Bug 964057 - Share self hosted state between runtimes, r=till. 2014-02-21 16:54:25 -07:00
Terrence Cole
ded53c42ba Bug 969410 - Do not expose non-tenured addresses in JS_GetObjectId; r=sfink
--HG--
extra : rebase_source : dfa32a19df80b9ae5f9d7d535b141e50007c0149
2014-02-20 13:38:57 -08:00
Bobby Holley
1b749edd65 Bug 973780 - Expose a wrapper for the internal WeakMap class outside of the engine. r=mccr8,terrence 2014-02-21 11:35:48 -08:00
Phil Ringnalda
7732675ab7 Back out 0f5f58d5d410:8db4d719f5f8 (bug 973780) for debug WinXP mochitest-3 assertions
CLOSED TREE
2014-02-20 20:46:50 -08:00
Bobby Holley
905f063f82 Bug 973780 - Expose a wrapper for the internal WeakMap class outside of the engine. r=mccr8,terrence 2014-02-20 18:24:09 -08:00
Chris Peterson
192496a87c Bug 712873 - Part 3: Replace JS_ALWAYS_TRUE with MOZ_ALWAYS_TRUE outside js/src/ directory. r=luke 2014-02-17 22:42:57 -08:00
Chris Peterson
b6a3cbfa97 Bug 712873 - Part 2: Replace JS_ASSERT with MOZ_ASSERT outside js/src/ directory. r=luke 2014-02-17 22:24:15 -08:00
Daniel Holbert
682b66552e back out 3a8893b28489 (bug 712939) and 39adab158c17,16add78c43e3,37193db7e15b (bug 712873), for build bustage. 2014-02-19 00:15:51 -08:00
Chris Peterson
16624c9130 Bug 712873 - Part 3: Replace JS_ALWAYS_TRUE with MOZ_ALWAYS_TRUE outside js/src/ directory. r=luke 2014-02-17 22:42:57 -08:00
Chris Peterson
f86f58f16d Bug 712873 - Part 2: Replace JS_ASSERT with MOZ_ASSERT outside js/src/ directory. r=luke 2014-02-17 22:24:15 -08:00
Luke Wagner
d30d84eeb4 Bug 936236 - Inline allocateSlots into caller and handlify (r=jonco) 2014-02-13 11:17:43 -06:00
Kannan Vijayan
a2d41415b7 Bug 952891 - Add PIC fast-path for ForOfIterator iteration over arrays. r=jimb r=jorendorff DONTBUILD 2014-02-13 14:29:00 -05:00
Kannan Vijayan
98aa4aaa70 Backed out changeset 45f374858666 (bug 852891) for bad commit message referencing wrong bug. DONTBUILD 2014-02-13 14:24:37 -05:00
Kannan Vijayan
f4da41f2da Bug 972087 - Add PIC fast-path for ForOfIterator iteration over arrays. r=jimb r=jorendorff 2014-02-13 14:20:27 -05:00
Terrence Cole
a7c28fdf33 Bug 885954 - Add comments to barrier classes explaining our use of C++ move semantics; r=jimb 2014-02-07 10:03:21 -08:00
Jon Coppeard
8a32b66277 Bug 961091 - Add fewer store buffer entries when describing the stack r=terrence 2014-02-07 11:21:12 +00:00
Bobby Holley
2e734e191d Bug 959013 - Create storage for declarative class bootstrapping information on js::Class. r=luke 2014-02-04 07:51:54 -08:00
Nicholas Nethercote
82c58c8e3f Bug 964238 (part 1) - Remove JSStableString and StableTwoByteChars. r=terrence.
--HG--
extra : rebase_source : 1859ce0b42661494fa13628551359a5a5d5663c0
2014-01-30 14:58:53 -08:00
Terrence Cole
0d556384fc Bug 966040 - Simplify and minimize the allocation path for non-objects; r=jonco 2014-01-31 11:43:43 -08:00
Kyle Huey
5f91ce5f1d Bug 961286 - Use move semantics for JSAutoStructuredCloneBuffer and wrappers. r=jorendorff, r=bent 2014-01-31 21:50:07 -05:00
Shu-yu Guo
9bce431125 Bug 966181 - Rename ForkJoinSlice to ForkJoinContext. (r=pnkfelix) 2014-01-31 14:57:57 -08:00
Eric Faust
f139382c7a Bug 924720 - Part 1: Implement IsProxy() using new JSClass flag. (r=jwalden) 2014-01-29 17:20:15 -08:00
Eric Faust
9a2a33e448 Bug 924720 - Part 0: Free up spare JSClass flags. (r=jwalden) 2014-01-29 17:20:15 -08:00
Chris Peterson
28f3584391 Bug 964016 - Part 4: Replace JS_ALWAYS_INLINE with MOZ_ALWAYS_INLINE. r=luke 2014-01-24 20:14:56 -08:00
Chris Peterson
610ad17d6a Bug 964016 - Part 2: Replace JS_UNLIKELY with MOZ_UNLIKELY. r=luke 2014-01-24 19:57:58 -08:00
Bobby Holley
03fb99d54e Bug 957688 - Kill off checkAccess. r=mrbkap 2014-01-24 16:08:26 -08:00
Terrence Cole
c069811bd3 Bug 963232 - Add extensive documentation to js/GCAPI.h; r=billm 2014-01-23 11:47:11 -08:00
Nicholas Nethercote
dd904d4ef9 Bug 961883 (part 3) - Measure and report the Nursery. r=terrence.
--HG--
extra : rebase_source : 6f12d47ca8cedc96b0dd0477ca4f71de08e47181
2014-01-21 17:17:08 -08:00
Nicholas Nethercote
286bcca0cc Bug 961883 (part 2) - Measure and report the StoreBuffer. r=terrence.
--HG--
extra : rebase_source : f298f0373b7fee99eee7a62060f882d628f97eb2
2014-01-21 17:17:02 -08:00
Nicholas Nethercote
674e5b03a5 Bug 961883 (part 1) - Measure and report the SourceDataCache. r=benjamin.
--HG--
extra : rebase_source : b599e19fb681e972b1f6e184c44f5a726a61009f
2014-01-20 19:52:57 -08:00
Nicholas Nethercote
7b29979d36 Bug 961883 (part 0) - Some tiny HashTable comment tweaks. r=luke.
--HG--
extra : rebase_source : 749b61ec992335aa5e2be63340e88b04ff236967
2014-01-20 19:52:52 -08:00
Jeff Walden
853804dbf3 Bug 948227 - Add code to warn when the __proto__ setter is called that it's very slow and shouldn't be used. (Don't use it yet, tho, because it requires the second part of bug 948583 to land first. Once that lands, fully enabling this just requires some uncommenting.) r=efaust
--HG--
extra : rebase_source : 87d320edcc99b6ef7df98c2470c78d4085aa4f99
2013-12-11 16:04:07 -08:00
Jon Coppeard
bda63a0cd6 Bug 961077 - Take marking function as template parameter in PersistentRootedMarker r=sfink 2014-01-23 09:53:42 +00:00
Steve Fink
c5a9558249 Bug 960342 - Add a RootedGeneric general class, r=terrence 2014-01-22 11:52:44 -08:00
Jon Coppeard
0c43048bda Bug 961077 - Make PersistentRooted use private inheritance when deriving from LinkedListElement r=sfink 2014-01-22 11:28:06 +00:00
Ms2ger
cac07e2f81 Bug 937952 - Replace JS_ROTATE_LEFT32 with mozilla::RotateLeft; r=Waldo 2014-01-20 08:58:26 +01:00
Terrence Cole
6d61394f63 Bug 959787 - Handlify several JSAPI interfaces that can GC, Part 5; r=jonco
--HG--
extra : rebase_source : 13c96b6118408cfb001a3191871cbf7ce4d8a2c3
2014-01-17 10:09:38 -08:00
Jon Coppeard
3156f036a7 Bug 960544 - Always export rooting APIs and stop linking unit tests against JS library r=glandium 2014-01-17 10:18:19 +00:00
Terrence Cole
57d2483809 Bug 959787 - Handlify several JSAPI interfaces that can GC, Part 1; r=sfink,Ms2ger
--HG--
extra : rebase_source : 0e0e75028f12db9cc4cf612a9205525669b70267
2014-01-14 12:41:22 -08:00
Nicolas B. Pierron
ff70ad2a6a Bug 958471 - Assert range of Object/String Values' payload. r=jandem 2014-01-16 03:06:31 -08:00
Jon Coppeard
809a6fa31d Bug 959683 - Use rooting typedefs consistently in our public API r=sfink 2014-01-15 10:31:00 +00:00
Boris Zbarsky
b90683e91c Bug 932837 part 2. Create a refcounted object to manage the lifetime of a JS::StackDescription. r=mccr8, terrence 2014-01-07 19:53:17 -05:00
Boris Zbarsky
949752a3ce Bug 932837 part 1. Make FrameDescription compute the line number lazily. r=jandem 2014-01-07 19:53:17 -05:00
Jeff Walden
fed794c4c3 Bug 956601 - Add Char16.h to RequiredDefines.h so that SpiderMonkey standalone works again, in compilers without native char16_t support. r=sstangl
--HG--
extra : rebase_source : 7a36d31e37e0336b9ccfe765d9c98353f6e56aa0
2014-01-05 18:05:11 -06:00
Jeff Walden
12220c1619 Bug 953296 - Implement mozilla::NullptrT as a typedef to use to accept nullptr values. Also add mozilla::IsNullPointer<T>, a trait for detecting *only* true nullptr (emulated nullptr [__null] used by gcc 4.4/4.5 isn't true nullptr). r=ehsan
Generally, if you want a decltype(nullptr)-based overload, you should use SFINAE and IsNullPointer.  (Examples are provided in NullPtr.h comments.)  The problem is NullptrT matches far more than just __null as emulated nullptr for gcc 4.4/4.5 overloading purposes.  This problem is unavoidable without true nullptr.  Currently, the only valid use for NullptrT is believed to be in operator overloads.  All existing nullptr-overloading code has been rewritten to use the appropriate technique for the situation, and MOZ_HAVE_CXX11_NULLPTR is no longer an API.

--HG--
extra : rebase_source : 01abfcb66ae569db7b04a7b53f5cd5fd8151bffd
2014-01-02 17:27:41 -06:00
Luke Wagner
d169b4cf47 Bug 924905 - Do a subsumes check inside the stack iterator. r=jandem
--HG--
extra : rebase_source : ff8407c4f79fd3e2264470379470c526a751e45f
2014-01-03 10:32:56 -06:00
Jan de Mooij
2992b45583 Bug 955838 - Remove JSScript::enclosingScriptsCompiledSuccessfully() and some unused friend API functions. r=bhackett 2014-01-03 11:19:50 +01:00
Ivan Jibaja
3ba6b7515b Bug 946042 - Add all SIMD functions to the interpreter. r=till 2013-12-18 16:28:32 -05:00
Jeff Walden
a5528a134c Inherit RangedPtr's operator= in all of SpiderMonkey's *CharsZ classes, so that assignment of the correct raw pointer to each will compile. No bug, r=terrence over IRC 2013-12-19 13:56:24 -05:00
Jan de Mooij
af0c1097a4 Bug 951666 - Rename IonCode to JitCode. r=njn 2013-12-18 23:01:51 +01:00
Wes Kocher
34a2e0d974 Backed out changeset ef0eeaec74a8 (bug 949183) on the theory that it somehow broke every single b2g test on a CLOSED TREE 2013-12-16 18:27:43 -08:00
Sean Stangl
d081b211ae Bug 949183 - Fix jsid static constructor explosion. r=Waldo 2013-12-16 14:40:05 -08:00
Brian Hackett
6844e7e5ca Bug 932982 - Trace type constraints and allow preserving jitcode in GCs without also marking all type information, r=billm, r=jandem 2013-12-12 13:10:54 -08:00
Andy Wingo
58d29b9c5e Bug 927782 - Part 10: Iterate block chain from compile-time block scope maps, not runtime blockChain. r=luke 2013-12-06 18:42:08 +01:00
Terrence Cole
a323919712 Bug 945250 - Evict the nursery before using CellIter; r=jonco 2013-12-04 15:23:30 -08:00
Wes Kocher
a613766f4c Backed out changeset 2a1e0a4f8d72 (bug 932982) for b2g m2 orange on a CLOSED TREE 2013-12-12 16:38:32 -08:00
Brian Hackett
2ad149fd13 Bug 932982 - Trace type constraints and allow preserving jitcode in GCs without also marking all type information, r=billm,jandem. 2013-12-12 13:10:54 -08:00
Sean Stangl
94bb42ef1a Bug 949195 - Don't refer to IsInRequest() when JS_DEBUG is not defined. r=efaust 2013-12-11 14:06:04 -08:00
Ryan VanderMeulen
aa42fbffac Backed out changeset a29d7f5ddde6 (bug 932982) for ggc asserts. 2013-12-12 13:56:32 -05:00
Brian Hackett
dc8e205d66 Bug 932982 - Trace type constraints and allow preserving jitcode in GCs without also marking all type information, r=billm,jandem. 2013-12-12 08:42:24 -08:00
Terrence Cole
51307974e1 Bug 948516 - Assert that js::HashTable pointers and enumerators are used correctly; r=luke 2013-12-03 12:51:02 -08:00
Ryan VanderMeulen
f076280148 Backed out changeset b93e7a83b308 (bug 932982) for Linux mochitest-bc leaks.
CLOSED TREE
2013-12-11 17:07:48 -05:00
Brian Hackett
e76e72614e Bug 932982 - Trace type constraints and allow preserving jitcode in GCs without also marking all type information, r=billm,jandem. 2013-12-11 10:12:33 -08:00
Sean Stangl
d6c11fe81b Bug 948638 - Always use jsid struct types. r=Waldo 2013-12-10 15:45:41 -08:00
Terrence Cole
e3a8f2bd80 Backout changeset 70e76314c8a7 for build bustage on a CLOSED TREE.
--HG--
extra : rebase_source : 83e1e8a5a4802ef0b7b1d6f7dc0df6595bc9f00f
2013-12-10 15:26:05 -08:00
Terrence Cole
8d3efe596e Bug 948516 - Assert that js::HashTable pointers and enumerators are used correctly; r=luke 2013-12-03 12:51:02 -08:00
Tom Schuster
ac84baff89 Bug 697343 - Introduce a slice hook to allow optimizing Array.prototype.slice for Proxies etc. r=jandem,bz 2013-12-05 20:07:24 +01:00
Tom Schuster
aa96007c5a Bug 697343 - Remove getElementIfPresent. r=Waldo 2013-12-05 20:07:24 +01:00
Sean Stangl
59cdede15c Bug 939505 - Use JS_DEBUG in public headers. r=jorendorff 2013-12-06 15:03:08 -08:00
Jon Coppeard
8f8d210a4e Bug 939993 - Add assert that hash key is still valid in HashTable::relookupOrAdd r=sfink 2013-12-07 12:50:52 +00:00
Joshua Cranmer
d66310a970 Bug 929200, part 2: Add MOZ_HEAP_ALLOCATOR to JSContext::new_, r=jimb.
--HG--
extra : rebase_source : 94273fe87e4e432a493dd55a89a005a89e7bb998
2013-12-06 21:21:54 -06:00
Nicholas D. Matsakis
02232ed529 Bug 933760 - Track a type object for each type representation, associate with the type descriptor r=bhackett 2013-11-01 11:10:47 -04:00
Ryan VanderMeulen
18b77ec498 Backed out 12 changesets (bug 927782) for SM rootanalysis orange.
Backed out changeset f86d2d4cfadf (bug 927782)
Backed out changeset 51d6617835d1 (bug 927782)
Backed out changeset eed9795fa80e (bug 927782)
Backed out changeset b971de7edfff (bug 927782)
Backed out changeset 5f086f95b305 (bug 927782)
Backed out changeset 8c74b1f68590 (bug 927782)
Backed out changeset f1237f11edcd (bug 927782)
Backed out changeset d6946bd743b3 (bug 927782)
Backed out changeset cbdd50c96b85 (bug 927782)
Backed out changeset fc7a979712fc (bug 927782)
Backed out changeset c8304ccf88e9 (bug 927782)
Backed out changeset 9d99e9ca7b32 (bug 927782)
2013-12-06 15:03:19 -05:00
Andy Wingo
6ecc0822be Bug 927782 - Part 10: Iterate block chain from compile-time block scope maps, not runtime blockChain. r=luke 2013-12-06 18:42:08 +01:00
Ryan VanderMeulen
ee16665294 Backed out changesets 22770b30545b, 0809370fabdb, 4ef4764c1b55, and bfe768b87464 (bug 697343) due to Gaia UI test bustage.
CLOSED TREE
2013-12-05 16:19:47 -05:00
Tom Schuster
7313632237 Bug 697343 - Introduce a slice hook to allow optimizing Array.prototype.slice for Proxies etc. r=jandem,bz 2013-12-05 20:07:24 +01:00
Tom Schuster
b053653c80 Bug 697343 - Remove getElementIfPresent. r=Waldo 2013-12-05 20:07:24 +01:00
Nicholas Nethercote
6d00321811 Bug 943744 (part 3) - Re-use the |strings| table from the zone with the most strings when computing totals. r=till.
--HG--
extra : rebase_source : 3fa7b4249526ffcfbadd108aa55e7e9e5f0c8ebf
2013-12-04 03:54:54 -08:00
Nicholas Nethercote
a972b1c9d3 Bug 943744 (part 2) - Represent the sizes in StringInfo more compactly. r=till.
--HG--
extra : rebase_source : 799693bac2beb4609daf55fc5e8cbe19adff3ed8
2013-12-02 21:40:25 -08:00
Nicholas Nethercote
2977799c34 Bug 943744 (part 1) - Remove StringInfo::length. r=till.
--HG--
extra : rebase_source : 4ac0be283e35bd878ad4410b805548255fcd8cee
2013-12-02 21:40:25 -08:00
Jeff Walden
43ff4d65b7 Bug 940033 - js::HashMapEntry::{key,value} fields should be private, with accessors, and the former should expose a const reference. r=jimb
--HG--
extra : rebase_source : 439d194ed15bf87e9643c9c09d4512ff7f616fcc
2013-11-25 17:35:09 -08:00
Jeff Walden
222880a9ea Bug 937751 - Followup to compile with clang versions that treat |struct S; struct __attribute__((visibility("default"))) S {};| as an error. rs=mccr8
--HG--
extra : rebase_source : 97d6faaaa484a9544d2683c4a1af5c3e044fa2d3
2013-12-03 15:53:40 -08:00
Andrew McCreight
e5e9421728 Bug 937751, part 2 - Move SliceBudget into js/public. r=billm 2013-12-03 10:47:47 -08:00
Jeff Walden
ec797804af Bug 943839 - Simplify Anchor and get rid of JS_AnchorPtr. r=terrence
--HG--
extra : rebase_source : f2d9e039f758b6078c57f601537effe8c7c39f82
2013-12-02 15:43:30 -08:00
Andrew McCreight
b38b0fdc60 Bug 944491 - Add null-checking assert to GetGCThingRuntime. r=jonco 2013-11-29 12:44:00 -08:00
Trevor Saunders
2f7f7d874a bug 938025 - part 2 - fix some static constructors in the jseng r=waldo 2013-11-22 15:05:04 -05:00
Carsten "Tomcat" Book
7aed87ac9d Backed out changeset 042ab55b8476 (bug 939993) for Spidermonkey rootanalysis orange on a CLOSED TREE 2013-11-25 15:04:35 +01:00
Jon Coppeard
9f36f7aa14 Bug 939993 - Check that AddPtrs are used only with matching Lookup values r=sfink 2013-11-25 11:26:10 +00:00
Jim Chen
962919d092 Bug 935092 - Const-ify profiler pseudostack entries; r=BenWa 2013-11-22 14:17:30 -05:00
Ryan VanderMeulen
43d6223947 Backed out changeset 1469f9e856c0 (bug 939993) for SM rootanalysis crashes.
CLOSED TREE
2013-11-21 09:44:27 -05:00
Jon Coppeard
e705b6bebe Bug 939993 - Check that AddPtrs are used only with matching Lookup values r=sfink 2013-11-19 22:53:32 +00:00
Shu-yu Guo
58f49b859c Bug 933882 - Invalidate JIT code instead of doing full GC on debug mode toggle. (r=bhackett) 2013-11-20 22:50:28 -08:00
Jon Coppeard
b910746f04 Bug 935136 - Remove the now unnecessary UnbarrieredMutableValueOperations r=terrence 2013-11-19 22:53:36 +00:00
Ed Morley
6e9fecbb20 Backed out changeset 1b720320ccf4 (bug 939993) for rootanalysis assertions on a CLOSED TREE 2013-11-20 16:38:41 +00:00
Ed Morley
9d11288f9b Backed out changeset b75c703f2e7e (bug 935136) 2013-11-20 16:38:13 +00:00
Jon Coppeard
86ed70fdd8 Bug 935136 - Remove the now unnecessary UnbarrieredMutableValueOperations r=terrence 2013-11-19 22:53:36 +00:00
Jon Coppeard
8ca36e8447 Bug 939993 - Check that AddPtrs are used only with matching Lookup values r=sfink 2013-11-19 22:53:32 +00:00
Jim Blandy
4682c9e199 Bug 937404 - Remove the unused NotableStringInfo copy constructor. r=jimb
--HG--
extra : rebase_source : 9af09cb34a2bda3b1cbee61c85617a25c5876106
2013-11-18 13:48:45 -08:00
Jim Blandy
7cf9e41fc9 Bug 896100: Convert all uses of OldMove and MoveRef to true rvalue references and the modern Move and Forward. r=luke, r=waldo 2013-11-19 09:05:36 -08:00
Jon Coppeard
acdd78d61d Bug 938211 - Supply copy assignment operator for Heap<T> and fix up some other classes in RootingAPI.h r=sfink 2013-11-18 17:21:44 +00:00
Michael Shuen
014d210978 Bug 937916 - Implement TrueValue() and FalseValue(). r=sfink 2013-11-15 21:46:39 -05:00
Jon Coppeard
e9f9210b38 Bug 935136 - Always barrier assignments to Heap<Value> r=terrence 2013-11-12 11:21:01 +00:00
Wes Kocher
d58c3c4925 Backed out 7 changesets (bug 935228, bug 936143, bug 935470, bug 933882, bug 934799) for breaking ASAN browser-chrome tests on a CLOSED TREE
Backed out changeset ae6f2151610f (bug 934799)
Backed out changeset 82495f0c5da2 (bug 934799)
Backed out changeset 77be849d81e7 (bug 935228)
Backed out changeset 555e5759fe5f (bug 935470)
Backed out changeset ce4011f33422 (bug 933882)
Backed out changeset e13e98eab890 (bug 936143)
Backed out changeset fb230c191a88 (bug 936143)
2013-11-11 16:53:59 -08:00
Terrence Cole
72ed1dc420 Bug 935800 - Assert that we do not GC in the lifetime of a ForkJoinSlice; r=shu
--HG--
extra : rebase_source : ec2dc1db758e5bef4720b5442e006e9df44c165b
2013-11-06 15:43:19 -08:00
Shu-yu Guo
4abd75e034 Bug 933882 - Invalidate JIT code instead of doing full GC on debug mode toggle. (r=bhackett) 2013-11-11 14:18:34 -08:00
Jeff Walden
8d65c428b8 Bug 934718 - Simplify some of the alpha computations in HashTable.h by converting alpha fractions to numerator/denominator ratios of integers, and convert associated JS_STATIC_ASSERT to static_assert. r=luke
--HG--
extra : rebase_source : a35631c885ad7058739d9e99498714f318ef589c
2013-10-24 17:11:32 +01:00
Jeff Walden
f775bf0ab0 Bug 903332 - Make watch/unwatch into proxy hooks and such, and make watching/unwatching work on DOM proxies and windows (or at least work as much as it ever did, which is to say kinda-sorta-ish). r=bhackett, r=efaust
--HG--
extra : rebase_source : 58dc71e7e58208a2cfa12b265adca7b189e5e5bd
2013-10-29 16:39:09 -07:00
Nicholas Nethercote
d1af2f8e9e Bug 634417 - Remove inappropriate uses of vanilla malloc/calloc/realloc/free/strdup from SpiderMonkey. r=luke.
--HG--
extra : rebase_source : 4470cdf58a482eb05f94cd00a9800d8e6a0d2252
2013-11-08 09:52:14 +11:00
Ryan VanderMeulen
2cd9baaad6 Backed out changeset 471db633b20c (bug 903332) for B2G desktop mochitest-1 failures. 2013-11-07 16:10:21 -05:00
Jeff Walden
ed9fef3e20 Bug 903332 - Make watch/unwatch into proxy hooks and such, and make watching/unwatching work on DOM proxies and windows (or at least work as much as it ever did, which is to say kinda-sorta-ish). r=bhackett, r=efaust
--HG--
extra : rebase_source : b5bae3832b7718b579abb7c09f36c9c46907d7cc
2013-10-29 16:39:09 -07:00
Jeff Walden
a6d04a64b0 Bug 921561 - Make JS_DECLARE_NEW_METHODS use C++11 "perfect" forwarding (which isn't, because it won't let you pass an expression that's a bit field #nowyouknow), to eliminate issues arising when non-const references are used in these methods with classes that don't copy nicely, or shouldn't be copied for perf reasons. r=luke
--HG--
extra : rebase_source : d2b446e0ee6e5613faa962b92acc9f91584fe7ac
2013-09-27 11:19:43 -07:00
Terrence Cole
cf9c9d2ef6 Bug 931912 - Suppress an exact rooting hazard false positive in nsWindowSH::Finalize; r=sfink
--HG--
extra : rebase_source : 3934e7cd7e21e37de20aadac203db6a285021691
2013-11-05 15:02:35 -08:00
Andrew McCreight
743bde990d Bug 905382, part 1 - Implement a read barrier for GC things. r=jonco 2013-11-04 15:01:38 -08:00
Andrew McCreight
6efba18832 Bug 934990 - Export CurrentThreadCanAccess functions properly. r=terrence 2013-11-05 08:55:28 -08:00
Jim Blandy
5f1150fd9d Bug 892643: Implement PersistentRooted<T>, an unrestricted-lifetime rooting type. r=terrence, jcoppeard 2013-11-04 13:35:08 -08:00
Nicholas Nethercote
90c3c6d955 Bug 932440 - Re-fix a compiler warning in memorymetrics that was fixed in bug 924608 but was then undone by a bad manual merge. r=me.
--HG--
extra : rebase_source : 370eacd5a6f0d0015e0b685ea66a4c47df248a34
2013-10-29 20:15:09 -07:00
Jon Coppeard
b98d96f638 Bug 931446 - Improve documentation comment on JS::Heap r=terrence 2013-11-01 10:20:50 +00:00
Terrence Cole
ae43bcf0e2 Bug 932364 - Fix an exact rooting hazard around AddSizeOfTab; r=njn
--HG--
extra : rebase_source : cb0ab85f7f850ce3c250dd75ff32a416dba7b153
2013-10-28 10:14:06 -07:00
Nicholas Nethercote
b38b84f869 Bug 925584 - Remove some unnecessary jsapi.h inclusions from .cpp files. r=Ms2ger.
--HG--
extra : rebase_source : 41fcb0e922a519ef679c1c1b6293c2b638e83a48
2013-10-10 15:22:35 -07:00
Terrence Cole
05b45c0c0f Bug 929800 - Handlify the structured clone interface; r=sfink,smaug
--HG--
extra : rebase_source : 4f21dd799ad27dc665997d4912996a500ae8a2f2
2013-10-22 17:18:32 -07:00
André Bargull
13c4d58f7c Bug 928508 - Change String.prototype.@@iterator to iterate over code points. r=jorendorff. 2013-10-23 11:42:25 -05:00
Nicholas Nethercote
d58b8ff6f4 Bug 918207 - Support per-tab memory profiling. r=billm,mccr8,till,smaug,nfroyd.
--HG--
extra : rebase_source : 7603eaedbd761c6b231b1b911f719388864755e6
2013-10-22 14:53:26 -07:00
Steve Fink
12768ceaf1 Bug 861925 - Steal and neuter ArrayBuffers at end of structured clone, r=jorendorff
--HG--
extra : rebase_source : 3378a06b47e7ee2f45da841b3604077b4c2b64e6
2013-10-15 23:48:20 -07:00
Masatoshi Kimura
7b63853e9c Bug 928220 - Get rid of JS_INLINE 2013-10-22 06:34:24 +09:00
Jim Blandy
0440af2389 Bug 928507: Properly hide JS::Handle's assignment operator; add 'repoint' method to deal with the fallout; fix C1Spewer, IonSpewer, and CompileOptions. r=terrence 2013-10-21 12:56:44 -07:00
Jan de Mooij
b5cb5864c1 Bug 859892 - Rename JS_CANONICALIZE_NAN to JS::CanonicalizeNaN. r=Waldo 2013-10-17 10:16:17 +02:00
Ehsan Akhgari
9bf1bff8b4 Bug 895047 - Make char16_t available everywhere and use that to define PRUnichar and jschar; r=jcranmer,jorendorff,glandium 2013-10-17 00:36:13 -04:00
Phil Ringnalda
214fbe3acd Back out ee100983f921 (bug 895047) for build bustage
CLOSED TREE
2013-10-16 21:51:55 -07:00
Ehsan Akhgari
6f865c67f5 Bug 895047 - Make char16_t available everywhere and use that to define PRUnichar and jschar; r=jcranmer,jorendorff,glandium 2013-10-17 00:36:13 -04:00
Nathan Froyd
73d53adda3 Bug 925879 - use JS_BITS_PER_WORD instead of JS_BYTES_PER_WORD in HashTable.h; r=njn 2013-10-15 10:11:03 -04:00
Nathan Froyd
dcffd48dd5 Bug 925807 - define JS_BITS_PER_WORD in terms of JS_64BIT; r=njn 2013-10-11 15:11:48 -04:00
Nicholas D. Matsakis
271da5b9d4 Bug 914220 - Move TypedObject global names into a TypedObject module r=waldo 2013-09-09 11:52:11 -04:00
Wes Kocher
dd25f949c6 Backed out 5 changesets (bug 861925) so I can backout bug 900669 cleanly
Backed out changeset 8febf2f0e35d (bug 861925)
Backed out changeset e646195f32ae (bug 861925)
Backed out changeset 015a92e94c07 (bug 861925)
Backed out changeset 4546406915c1 (bug 861925)
Backed out changeset 63321a464309 (bug 861925)
2013-10-15 18:51:50 -07:00
Steve Fink
f1124d2525 Bug 861925 - Steal and neuter ArrayBuffers at end of structured clone, r=jorendorff
--HG--
extra : rebase_source : 90ef9de8673dc50e81810a8cdcc86c8a8dbbc7bb
2013-10-15 17:26:19 -07:00
Jason Orendorff
0cc522db03 Bug 923836 - Set aside the first 3 reserved slots of global objects for application use. r=Waldo.
--HG--
extra : rebase_source : 027d8ed582b276845ff49c19b867d82b058542e1
2013-10-14 15:24:11 -05:00
Jon Coppeard
3695d1c68a Bug 925817 - GenerationalGC: Refactor inside nursery check to avoid repetition r=terrence 2013-10-14 10:16:25 +01:00
Wes Kocher
84bc54b1f1 Backed out changeset e807ddf2965f (bug 688852) for test bustage 2013-10-11 18:07:40 -07:00
Terrence Cole
a914924b84 Bug 688852 - Rewrite Array.prototype.concat to use spec steps; r=Waldo
--HG--
extra : rebase_source : b82607aabd4f959e7c204073a440225c6a12da6c
2013-01-03 17:34:34 -08:00
Terrence Cole
79f9ff9851 Bug 924608 - Fix a compiler warning in memorymetrics; r=njn 2013-10-08 14:15:59 -07:00
Shu-yu Guo
0d36c5754e Bug 921325 - Return bool from PJS VM functions and use the fatal bit on ForkJoinSlice to signal fatal vs retry. (r=nmatsakis) 2013-10-10 20:02:32 -07:00
Nathan Froyd
8ede1e6c43 Bug 924391 - don't use JS_BITS_PER_WORD in HeapAPI.h; r=billm 2013-10-08 09:54:33 -04:00
Shu-yu Guo
ed46c58374 Bug 903193 - Part 4: Add ability to do read only lookup on the Shape tree. (r=bhackett) 2013-10-08 15:14:03 -07:00
Douglas Crosher
95bb02c8a8 Bug 923328 - Ionmonkey: fix float32 hash function. r=terrence 2013-10-03 10:11:18 +10:00
Nicholas Nethercote
5bcfb5698f Bug 921954 - Clean up type inference memory reporting. r=bhackett.
--HG--
extra : rebase_source : a3c640921882a997017b1cddca189f5b3217a88e
2013-09-30 16:20:33 -07:00
Terrence Cole
e798610969 Bug 609896 - Optimize copy and initialization of DenseElements; r=billm
--HG--
extra : rebase_source : a0cf2605a7f1277352ff9163379632992c56d09a
2013-09-25 15:19:08 -07:00
Jan de Mooij
98e98fedfa Bug 915763 - Remove TypeScript::dynamicList and dynamic Monitor functions. r=bhackett 2013-09-28 11:45:21 +02:00
Nicholas Nethercote
2d9b5e156d Bug 920852 (part 4) - Reorder a bunch of stuff. r=till.
--HG--
extra : rebase_source : b386abc4bfcdc85fad4071eeb06de2ca83a17bd8
2013-09-25 20:17:19 -07:00
Nicholas Nethercote
5fd123f3a1 Bug 920852 (part 3) - Tweak various things about RuntimeStats. r=till.
--HG--
extra : rebase_source : 0748417364e0b8be25846f573d93fc657b228d19
2013-09-24 23:24:29 -07:00
Nicholas Nethercote
19db4d0520 Bug 920852 (part 2) - Rename fields of ZoneStatsPod and StringInfo to match memory reporter paths. r=till.
--HG--
extra : rebase_source : d67dc7deedee6213f640ca2ae31a959b66d8d64e
2013-09-24 23:24:28 -07:00
Nicholas Nethercote
7d3e82240b Bug 920852 (part 1) - Rename fields of ObjectsExtraSizes and CompartmentStats to match memory reporter paths. r=till.
--HG--
extra : rebase_source : 0f55dd20e69d3410d0cb811529f53570f588cc5e
2013-09-24 23:24:28 -07:00
Ehsan Akhgari
766794ce59 Bug 921130 - Minimize the #includes in js/src/jit; r=luke 2013-09-26 18:34:54 -04:00
Nicholas Nethercote
5abccfb0e9 Bug 919889 (part 5) - Use macros to eliminate repetitive, error-prone code in MemoryMetrics.{h,cpp}. r=luke. 2013-09-24 23:24:28 -07:00
Nicholas Nethercote
a5d55e1483 Bug 919889 (part 4) - Assorted minor clean-ups. r=luke. 2013-09-24 23:24:28 -07:00
Nicholas Nethercote
20426ed4ad Bug 919889 (part 3) - Move the private_ field out of ObjectsExtraSizes. r=luke. 2013-09-24 23:24:28 -07:00
Dan Gohman
d3146fc6ed Bug 916580 - Fix bugs related to the usage of calloc. r=luke 2013-09-25 12:18:43 -07:00
Jon Coppeard
2b0c3a4661 Bug 912567 - Split HashMap/HashSet::rekey() into rekey() and rekeyIfMoved() r=terrence 2013-09-24 10:03:32 +01:00
Ehsan Akhgari
7d49e13900 Bug 915735 - Part 1: Work around a bug in the MSVC PGO instrumented builds which prevents xpcshell to run successfully as a host tool during builds; r=sfink
--HG--
extra : rebase_source : e9b3bfc9cae14d0a699f584ccbda80157b065bc0
2013-09-23 15:28:08 -04:00
Dan Gohman
d78b997a49 Bug 918350 - SpiderMonkey: Remove js_NaN in favor of a new mozilla::GenericNaN() function. r=waldo 2013-09-19 18:42:56 -07:00
Terrence Cole
ac4d65e1fd Bug 918118 - Delete MutableHandle constructors for int and nullptr; r=jonco
This should prevent accidently misuse of MutableHandle.

--HG--
extra : rebase_source : 836a46068770281de24b6a11a04352b49c1dd05d
2013-08-06 15:09:15 -07:00
Birunthan Mohanathas
39e3b9e4cc Bug 784739 - Switch from NULL to nullptr in js/ductwork/, js/ipc/, and js/public/; r=ehsan 2013-09-19 15:24:53 -04:00
Steve Fink
bfc019c4f0 Bug 916986 - Implement a JSAutoAssertNoGC for the analysis to pay attention to, r=terrence 2013-09-17 10:50:03 -07:00
Bill McCloskey
a3fd52315b Bug 905926 - Move rambo GC to runtime destruction. r=jonco 2013-09-17 09:46:32 -07:00
Bobby Holley
42c719e380 Bug 905926 - Remove watchpoints on all compartments during shutdown, not just the cx compartment. r=billm 2013-09-17 09:46:32 -07:00
Brian Hackett
46424788cc Bug 915473 - Distinguish stack type sets from compiler-created temporary type sets, r=jandem. 2013-09-12 18:30:03 -06:00
Nicholas Nethercote
f41b880173 Bug 915482 (part 1) - Move most of gc/Barrier-inl.h into gc/Barrier.h. r=terrence.
--HG--
extra : rebase_source : e3fbf54420858cd5ae5328f4cf5c5001d1d0ccb9
2013-09-11 16:51:17 -07:00
Dan Gohman
586b9aee99 Bug 910823 - Constify static js::Class/JSClass instances. r=waldo 2013-09-11 05:49:05 -07:00
Benjamin Bouvier
aa2f43ac6a Bug 888109: Float32 general optimizations for IonMonkey: framework and arithmetic operations; r=sstangl,nbp 2013-07-18 15:13:15 -07:00
Nicholas Nethercote
e68970dcbd Bug 910771 (part 2) - Move some stuff from JS::Zone to JS::shadow::Zone, and from JSRuntime to JS::shadow::Runtime.h. r=terrence. 2013-09-04 19:19:04 -07:00
Nicholas Nethercote
8b1341d991 Bug 910771 (part 1) - Create js/Tracer.h and gc/Tracer.cpp. r=terrence. 2013-09-02 22:01:18 -07:00
Kyle Huey
a53f6f80b6 Bug 910937: Remove xpc_UnmarkGrayObject and use JSAPI directly. r=mccr8 2013-09-08 20:28:48 -07:00
Phil Ringnalda
73c0fd405e Back out a615811b12e4 (bug 888109) for not actually building 2013-09-06 18:48:56 -07:00
Benjamin Bouvier
47974667e0 Bug 888109: Float32 general optimizations for IonMonkey: framework and arithmetic operations; r=sstangl,nbp 2013-07-18 15:13:15 -07:00
Jason Orendorff
b60be23ea3 Bug 893186, part 5 - Delete JS_GetPropertyAttributes and many similar APIs; remove half a dozen methods from JS::Class. r=Waldo.
--HG--
extra : rebase_source : 1f4a01938b06b66ef855f9b654f098b4819b1390
2013-09-06 12:05:30 -05:00
Phil Ringnalda
9fbe57e2c6 Back out b817abcebadf (bug 888109) for unexpected assertions 2013-09-05 21:01:05 -07:00
Benjamin Bouvier
700645b58b Bug 888109: Float32 general optimizations for IonMonkey: framework and arithmetic operations; r=sstangl,nbp 2013-07-18 15:13:15 -07:00
Nicholas Nethercote
82bfca529b Bug 912411 (part 2) - Move JSID_{VOID,EMPTY}HANDLE from jsapi.{h,cpp} to Id.{h,cpp}. r=luke.
--HG--
extra : rebase_source : 5fb68bf5079e3261fdca6cb99717d3a502c878f3
2013-09-05 16:08:57 -07:00
Jeff Walden
c5dd957eae Bug 730805 - Provide mozilla/IntegerPrintfMacros.h to implement the PRI* macros portion of the <inttypes.h> interface. r=espindola
--HG--
extra : rebase_source : be80333003c6fec659e736a77463568c836d8348
2011-12-15 00:27:42 -05:00
Nicholas Nethercote
d74157039d Bug 911020 - Introduce js/TypeDecls.h, which holds very commonly used type declarations from the JS engine. r=luke.
--HG--
extra : rebase_source : 008ef689989f93b46627b8be8608bdbc544ca3a2
2013-08-27 19:59:14 -07:00
Justin Lebar
c7f8e10a8a Bug 909977 - Rename mozilla::Move to mozilla::OldMove, and make mozilla::Move a synonym for std::move(). r=waldo
--HG--
extra : rebase_source : 7b3bb02cc8cbc0ad6721c6c3895564d9567b8ddb
2013-08-29 11:54:14 -07:00
Jon Coppeard
2ef0dc9b58 Bug 906387 - Rehash hash tables if necessary when rekeying during minor GC r=terrence 2013-08-29 10:27:50 +01:00
Nicholas Nethercote
ee8b2a0cc5 Bug 909623 (part 4) - Create js/CallNonGenericMethod.h and vm/CallNonGenericMethod.cpp. r=luke.
--HG--
extra : rebase_source : 5a81a57ea81227c995d7fd0933c226ac10384991
2013-08-26 21:39:38 -07:00
Nicholas Nethercote
b6d6b342af Bug 909597 (part 2) - Rename jsdbgapi.{h,cpp} as {js,vm}OldDebugAPI.{h,cpp}. r=luke.
--HG--
rename : js/src/jsdbgapi.h => js/public/OldDebugAPI.h
rename : js/src/jsdbgapi.cpp => js/src/vm/OldDebugAPI.cpp
extra : rebase_source : 9cd65a698e726c43d88d650f40823367bf98feae
2013-08-26 19:05:20 -07:00
Jon Coppeard
305702cb73 Bug 726687 - Stop rekeying from calling pre barriers r=terrence 2013-02-15 17:59:19 +00:00
Nicholas Nethercote
4b89de8370 Bug 909178 (part 2) - Make jsclass.h not depend on jsapi.h, and rename it js/Class.h. r=jwalden.
--HG--
rename : js/src/jsclass.h => js/public/Class.h
extra : rebase_source : 31ecd4074181c234f7f71eef04a10ae371c35eaa
2013-08-21 22:26:57 -07:00
Nicholas Nethercote
c31cde29ea Bug 909178 (part 1) - Move |jsid| from jsapi.h into js/Id.h. r=luke.
--HG--
extra : rebase_source : b0d38093a9f40a532e73c2c30ae86b8970b814ac
2013-08-21 22:26:56 -07:00
Luke Wagner
65cf903ba4 Bug 908255 - tidy up 'non-destructive' functions, give StringHashPolicy a scarier name (r=terrence)
--HG--
extra : rebase_source : 84bbc6c0416190a9dae8c758262def530a591219
2013-08-22 13:54:34 -05:00
Nicholas Nethercote
601047fd0b Bug 905017 (part 3, attempt 2) - Move profiling stack stuff from jsapi.h to js/ProfilingStack.h. r=billm.
--HG--
extra : rebase_source : 8226a31c4f2a286ba843da616b1061ca034a5d41
2013-08-19 23:45:26 -07:00
Nicholas Nethercote
9ec228491f Bug 905017 (part 2, attempt 2) - Move structured clone stuff from jsapi.{h,cpp} and jsclone.{h,cpp} to js/StructuredClone.{h,cpp}. r=billm.
--HG--
rename : js/src/jsclone.cpp => js/src/vm/StructuredClone.cpp
extra : rebase_source : 2699588c63ef58ab84bc8c63adc0487648af3834
2013-08-19 23:43:47 -07:00
Ms2ger
707d12dbb2 Backout changesets 7e6fb33fdf22:c85332df4320 (bug 905017) for windows bustage. 2013-08-22 10:16:30 +02:00
Nicholas Nethercote
27d4a3235f Bug 905017 (part 3) - Move profiling stack stuff from jsapi.h to js/ProfilingStack.h. r=billm.
--HG--
extra : rebase_source : 8322f1c96b95685912375484172d47f53107947f
2013-08-19 23:45:26 -07:00
Nicholas Nethercote
6b42324e2b Bug 905017 (part 2) - Move structured clone stuff from jsapi.{h,cpp} and jsclone.{h,cpp} to js/StructuredClone.{h,cpp}. r=billm.
--HG--
rename : js/src/jsclone.cpp => js/src/vm/StructuredClone.cpp
extra : rebase_source : ecce9699ddb45535aa94d5e3add901f5a8620c46
2013-08-19 23:43:47 -07:00
Nicholas Nethercote
b89a8ac1c0 Bug 905017 (part 1) - Minimize inclusions of JS engine headers in .h and .idl files. r=billm.
--HG--
extra : rebase_source : 984c61ab12f46be0509b1ce0d458d9a6e5841c64
2013-08-17 15:50:18 -07:00
Jon Coppeard
233babc4c5 Bug 903548 - GC: What do we do for UnmarkGray on a Nursery GCThing? r=billm 2013-08-19 14:48:35 +01:00
Luke Wagner
56a16114e8 Bug 902506 - OdinMonkey: fix/enhance asm.js memory reporting (r=njn)
--HG--
extra : rebase_source : eafb0f56e7ed851e2e62a2ba908e63ea273c1c77
2013-08-08 21:38:42 -05:00
Ehsan Akhgari
aa4a01053a Backed out changeset 9cdd168a8518 (bug 904108) because it includes an unreliable Clang marketing version check 2013-08-16 11:53:46 -04:00
Nicholas Nethercote
78126ad05f Bug 898274 (part 1) - Fix ordering of various #include statements. r=benjamin. 2013-08-13 15:34:12 -07:00
Ms2ger
c2315a28ab Bug 904110 - Move alignment features out of Util.h into a new header; r=Waldo 2013-08-14 09:00:52 +02:00
Brian Hackett
5e93e0e513 Bug 902095 - Allow accessing the compartment/zone for ExclusiveContext, r=billm. 2013-08-13 09:13:46 -06:00
Adam Roach [:abr]
8c22f4b22b Bug 904108 - Add explicit assignment operator to js::Value r=luke 2013-08-12 12:01:23 -05:00
Daniel Holbert
87a334cf76 Backed out changeset fde265c467b2 (Bug 902095) for SM(r) bustage 2013-08-12 13:40:15 -07:00
Brian Hackett
bb787dbc0d Bug 902095 - Allow accessing the compartment/zone for ExclusiveContext, r=billm. 2013-08-12 13:57:02 -06:00
Nicholas Nethercote
d027fbe372 Bug 902917 - Remove some unnecessary #includes in SpiderMonkey. r=till.
--HG--
extra : rebase_source : 2a767e04768a94eb943370bbe7945a8dc409bf1d
2013-08-08 16:07:22 -07:00
Nathan Froyd
5556c6ac4c Bug 899309 - modify JS::Value and some helper functions to be constexpr-foldable; r=luke 2013-07-29 16:59:34 -04:00
Nicholas Nethercote
849635b8f1 Bug 898914 (part 1) - Remove JSBool.
--HG--
extra : rebase_source : 2d202e0e5005a7f54724b1540481c15cde3ad52e
2013-08-08 15:53:04 -07:00
Nicholas Nethercote
19e1fbb452 Bug 902820 - Fix a bunch of compile warnings in SpiderMonkey. r=till.
--HG--
extra : rebase_source : 0306d26443640104bae575a60fec7a693f7b43c5
2013-08-08 06:33:49 -07:00
Nicholas Nethercote
aa5919539d Bug 902332 - Replace JS_{FALSE,TRUE} with {false,true} almost everywhere. r=luke,bz.
--HG--
extra : rebase_source : 25f4de1bfae830b0af6407d260a70b787ab1dc9b
2013-08-06 23:59:54 -07:00
Nicholas Nethercote
c1d8302699 Bug 901750 - Change return type of |JSNative| from |JSBool| to |bool|. code=nnethercote,jandem. r=luke,bz.
--HG--
extra : rebase_source : 5b3d7cc339af6d93bde078322e25c6e740d1b617
2013-08-02 00:41:57 -07:00
Justin Lebar
fb5630ed11 Bug 893222 - Part 3: Modify the JS memory reporter to consider a string as "notable" if we have many small copies of it. r=njn 2013-08-05 16:33:00 -07:00
Ryan VanderMeulen
e4c4af080d Backed out 7 changesets (bug 893222, bug 899256) for build bustage on a CLOSED TREE.
Backed out changeset 4aa234138f44 (bug 893222)
Backed out changeset 4b0bf28abdf2 (bug 899256)
Backed out changeset ea8b6ba99c05 (bug 893222)
Backed out changeset ac8220cb61d5 (bug 893222)
Backed out changeset d01358ff4b15 (bug 893222)
Backed out changeset 3baebe7cc655 (bug 893222)
Backed out changeset 4bdf8611ec57 (bug 893222)
2013-08-02 14:49:38 -04:00
Justin Lebar
de68575288 Bug 893222 - Part 3: Modify the JS memory reporter to consider a string as "notable" if we have many small copies of it. 2013-08-02 10:02:40 -07:00
Jon Coppeard
9405ab3d8a Bug 899976 - GC: Fix unsafe references related to ToInt* functions - js engine changes r=sfink 2013-08-02 13:15:38 +01:00
Ehsan Akhgari
085494b95d Bug 895322 - Part 1: Replace the usages of MOZ_STATIC_ASSERT with C++11 static_assert; r=Waldo
This patch was mostly generated by running the following scripts on the codebase, with some
manual changes made afterwards:

# static_assert.sh
#!/bin/bash
# Command to convert an NSPR integer type to the equivalent standard integer type

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.cc" \
         -o -iname "*.mm" \) | \
    xargs -n 1 `dirname $0`/assert_replacer.py #sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_STATIC_ASSERT static_assert
hg rev --no-backup mfbt/Assertions.h \
                   media/webrtc/signaling/src/sipcc/core/includes/ccapi.h \
                   modules/libmar/src/mar_private.h \
                   modules/libmar/src/mar.h


# assert_replacer.py
#!/usr/bin/python

import sys
import re

pattern = re.compile(r"\bMOZ_STATIC_ASSERT\b")

def replaceInPlace(fname):
  print fname
  f = open(fname, "rw+")
  lines = f.readlines()
  for i in range(0, len(lines)):
    while True:
      index = re.search(pattern, lines[i])
      if index != None:
        index = index.start()
        lines[i] = lines[i][0:index] + "static_assert" + lines[i][index+len("MOZ_STATIC_ASSERT"):]
        for j in range(i + 1, len(lines)):
          if lines[j].find("                 ", index) == index:
            lines[j] = lines[j][0:index] + lines[j][index+4:]
          else:
            break
      else:
        break
  f.seek(0, 0)
  f.truncate()
  f.write("".join(lines))
  f.close()

argc = len(sys.argv)
for i in range(1, argc):
  replaceInPlace(sys.argv[i])

--HG--
extra : rebase_source : 4b4a4047d82f2c205b9fad8d56dfc3f1afc0b045
2013-07-18 13:59:53 -04:00
Ehsan Akhgari
a70b435251 Bug 872127 - Part 1: Remove support for MOZ_CUSTOM_STDINT_H; r=Waldo,ted 2013-07-30 10:24:49 -04:00
Terrence Cole
562f743f71 Bug 887563 - Convert CallArgs::operator[] to return a Handle; r=Waldo,bz
--HG--
extra : rebase_source : a06130820b34f6e1f5bc317e89c087cf0db9eeb8
2013-06-26 16:26:45 -07:00
Terrence Cole
13d8b4f59f Bug 890048 - Fix rooting of the findReferences shell command; r=jimb,billm 2013-07-24 16:32:21 -07:00
Nicholas Nethercote
b3d76cccc1 Bug 892806 - Clean up InflateUTF8String() and related functions. r=terrence.
--HG--
extra : rebase_source : df901e9900fbd01f1adbe430b9ac52428499681f
2013-07-09 23:17:32 -07:00
Nicholas Nethercote
c6a37146ab Bug 888088 (part 0) - Some minor #include fix-ups. r=wmccloskey.
--HG--
extra : rebase_source : edb1291d4571c2ea3bd942e2b1fcea0ab58cbe25
2013-07-23 17:34:12 -07:00
Jon Coppeard
7345e3e7f2 Bug 891966 - 2 - Comment calls to Handle::fromMarkedLocation r=bz 2013-07-23 10:58:28 +01:00
Jon Coppeard
b216cf9603 Bug 891966 - 1 - Don't allow construction of Handle<T> from Heap<T> r=bz 2013-07-23 10:58:27 +01:00
Jon Coppeard
6c0077c7f6 Bug 888338 - 1 - Add TenuredHeap<T> class r=terrence r=bz 2013-07-23 10:58:26 +01:00
Jeff Walden
10bde77bda Bug 891177 - Implement mozilla/Vector.h, and make js/Vector.h implement js::Vector using mozilla::Vector's implementation of the functionality. r=terrence
--HG--
rename : js/public/Vector.h => mfbt/Vector.h
extra : rebase_source : d5f87a48485e3f2241228a4b003e80974c86fd5f
2013-07-09 16:33:29 -07:00
Jeff Walden
5e2dbd029b Bug 891177 - Remove Vector.h's js/TemplateLib.h dependency by introducing mfbt/TemplateLib.h with the necessary bits. r=terrence
--HG--
extra : rebase_source : e84231171d6bd6c1e2de8201b8c9563375723d01
2013-07-08 12:42:13 -07:00
Jeff Walden
4196fa2e0f Bug 891177 - Remove Vector.h's js/Utility.h dependency. r=terrence
--HG--
extra : rebase_source : d9be649a097b3b9b92cd62685d0fadfa8c0e2bc4
2013-07-03 16:07:43 -07:00
Jeff Walden
f52f37cddc Bug 891177 - Move leading/trailing-zero-bit counting functions, ceiling/floor log2 functions, and round-up-pow2 functions into MathAlgorithms.h. r=terrence
--HG--
extra : rebase_source : 8cfbd68b8cd4a0e21185dd864c7e827ccfa6b751
2013-07-03 15:46:51 -07:00
Justin Lebar
ff89e05abb Bug 893281 - Don't require a no-args constructor for elements in a JS::Vector if you call GrowByUninitialized(). r=luke 2013-07-15 12:10:59 -07:00
Shu-yu Guo
0f274cbbca Bug 891946 - Rename ThreadSafeContext variables from tcx -> cx. (r=bhackett) 2013-07-10 18:25:42 -07:00
Shu-yu Guo
d2c0bc7345 Bug 881593 - Part 1: Change LossyTwoByteCharsToNewLatin1CharsZ to take ThreadSafeContext. (r=billm) 2013-07-10 18:25:33 -07:00
Shu-yu Guo
c481b972f1 Bug 881988 - Support calling natives in parallel. (r=djvj) 2013-07-10 18:25:33 -07:00
Jeff Walden
a2ead3b20d Bug 891177 - Move js::Swap to mozilla::Swap. r=terrence
--HG--
extra : rebase_source : 925bccd4fa3f95e1aa4e17d94ad5a443fc7a63aa
2013-07-03 15:57:33 -07:00
Jeff Walden
6fc6164554 Bug 891177 - Add ReentrancyGuard.h as a helper class for asserting that use of a class is non-reentrant. r=terrence
--HG--
extra : rebase_source : 3751e523c0b0315697cb6e005dfd8ee625f6dd58
2013-07-02 17:47:08 -07:00
Jeff Walden
70d30e3e5b Bug 891177 - Use MOZ_STATIC_ASSERT, not JS_STATIC_ASSERT, in Vector.h. r=terrence
--HG--
extra : rebase_source : 35bf9a16df56ff308ff2761f0f088a1ca980f04a
2013-07-02 17:33:32 -07:00
Jeff Walden
c010dec60f Bug 891177 - s/JS_ALWAYS/MOZ_ALWAYS/g and s/JS_NEVER/MOZ_NEVER/g on Vector.h. r=terrence
--HG--
extra : rebase_source : 345ebb6b5d7f7b023bcebdf1610de4f03c98cf46
2013-07-02 17:31:49 -07:00
Jeff Walden
a5efd836c8 Bug 891177 - s/JS_ASSERT/MOZ_ASSERT/g on Vector.h. r=terrence
--HG--
extra : rebase_source : 9ed551860edfb8801725a3575335039c1bb07692
2013-07-02 17:29:29 -07:00
Jeff Walden
d13ea6b69f Bug 891177 - Implement Move.h to define a move-construction interface. r=terrence
--HG--
extra : rebase_source : 45f9bb87fc0ee96ea35005ca0dcb263aa11745b8
2013-07-02 17:25:13 -07:00
Brian Hackett
d38fee1f7f Bug 885758 - Add ExclusiveContext for use by threads with exclusive access to their compartment, r=billm. 2013-07-10 09:29:52 -06:00
Terrence Cole
743ca17aa9 Bug 888117 - Properly barrier the JSON stringifier's CycleDetection set; r=billm
--HG--
extra : rebase_source : 9cd269cf38bacfb63cbceef5dec795da2c24750c
2013-06-27 18:12:54 -07:00
Steve Fink
0657e8eff7 Bug 890076 - Move isConstructing to CallArgs, r=Waldo
--HG--
extra : rebase_source : f66e59fbd201153a4329a82264c32ad72465d654
2013-07-03 22:59:43 -07:00
Terrence Cole
c9aa76bb68 Bug 878160 - GC: post barrier weak references in the browser - part 2 browser r=terrence r=billm
--HG--
extra : rebase_source : a1856a7dce28da5086f6fbeaeda15596193aa7ad
2013-06-05 16:40:02 -07:00
Jon Coppeard
7adb4d6ef4 Bug 878160 - GC: post barrier weak references in the browser - part 1 JS engine r=terrence
--HG--
extra : rebase_source : 4dfd4f8f46564d3a9858646a0f68c9047c2f7e93
2013-07-02 09:43:45 +01:00
Justin Lebar
c889f21d8f Bug 820686 - Follow-up: s/MOZ_ASSUME_NOT_REACHED/MOZ_ASSUME_UNREACHABLE/. rs=waldo
I'd meant to do this, but I only got as far as the comment in mfbt.  Oops!

--HG--
extra : rebase_source : 3cfe3ef1bf401eb7d9a10fcabcfb39008e9553a4
2013-06-28 19:20:12 -07:00
Justin Lebar
09d2312322 Bug 820686 - Remove code after MOZ_CRASH or MOZ_ASSUME_NOT_REACHED. r=(see below)
r=tbsaunde for accessible
r=jmuizelaar for gfx
r=waldo for js
r=roc for layout
r=glandium for mozglue
r=jduell for netwerk
r=khuey for everything else
2013-06-28 18:38:32 -07:00
Justin Lebar
d9ea536e65 Bug 820686 - Rename MOZ_NOT_REACHED() and JS_NOT_REACHED() to MOZ_ASSUME_NOT_REACHED(). r=waldo
This includes a mechanical renaming of MOZ_NOT_REACHED to MOZ_ASSUME_NOT_REACHED in JS.  Later patches in this queue clean up whitespace errors and so on.
2013-06-28 18:38:31 -07:00
Nicholas Nethercote
c1a0def392 Bug 883696 (part 4) - Include full paths in #include statements in the rest of js/src/ and js/public/. r=luke. 2013-06-27 17:37:29 -07:00
Cykesiopka
506def29fd Bug 831741 - Followup: Remove remaining __cplusplus bits from /js (with exceptions). r=jorendorff 2013-06-26 21:35:11 -04:00
Steve Fink
809ffd6d4c Bug 887362 - Fix include tangle for CheckStackRoots, r=ehoogeveen
--HG--
extra : rebase_source : 0bad13a22809afb35f924decc02b55a3e87db486
2013-06-26 11:21:36 -07:00
Terrence Cole
748597a12c Bug 848592 - Fix some dynamic rooting analysis failures; r=sfink
--HG--
extra : rebase_source : 0d614298d3e9879a0ac5f95561329dc3a80d693b
2013-06-14 13:48:39 -07:00