Jan de Mooij
60cfaa0d07
Bug 1142669 part 6 - Don't inline scripts that are known to inline a lot of code. r=h4writer
2015-03-25 15:15:23 +01:00
Shu-yu Guo
d0c1855b73
Bug 1146718 - Split the 'J' tag in the profiler into 'J' (JIT frames without opt info) and 'O' (with opt info). (r=djvj)
2015-03-24 18:49:16 -07:00
Terrence Cole
ef0a198902
Bug 1135985 - Split callback and marking tracers completely; r=jonco, r=mccr8
2015-02-25 13:11:37 -08:00
Steve Fink
1191cc32f1
Bug 1125412 - Expose an object for inspecting GC memory values, r=terrence
2015-01-26 15:32:54 -08:00
Phil Ringnalda
8a89e647fd
Backed out 9 changesets (bug 1142775, bug 1139683, bug 1143810, bug 1142761, bug 1142784, bug 1142794, bug 1144819) for widespread bustage
...
CLOSED TREE
Backed out changeset 7613fc978d36 (bug 1142794)
Backed out changeset e5f0cb31263d (bug 1142784)
Backed out changeset dcd0af73ac84 (bug 1142784)
Backed out changeset 034f9c8e79ee (bug 1142784)
Backed out changeset ce0ee37e3ca9 (bug 1142775)
Backed out changeset 1519b8f2bbba (bug 1142761)
Backed out changeset 26fd55677841 (bug 1139683)
Backed out changeset 7ebc76a450c3 (bug 1144819)
Backed out changeset 92adb459d519 (bug 1143810)
2015-03-22 09:34:25 -07:00
Jason Orendorff
60373a960b
Bug 1142794 - Change 'receiver' argument to SetProperty functions and ProxyHandler::set methods to be a HandleValue. r=Waldo.
...
Also: Change signature of these functions and methods to all have the same arguments in the same order: (cx, obj, id, v, receiver). Also change v from MutableHandleValue to HandleValue.
There is no change in behavior.
In fact the new error message `JSMSG_SET_NON_OBJECT_RECEIVER` is
impossible to trigger from scripts for now, I think (after re-reading
the whole patch with this in mind). JS_ForwardSetPropertyTo is the only
way to get a non-object receiver into the engine, but no caller
currently does so.
We're installing new pipes here, and they should work, but for now it's
the same cold water flowing through as before. Actually hooking up the
hot water is left for another bug (one with tests, not to put too fine a
point on it).
Notes:
* InvokeGetterOrSetter had to be split into two functions:
InvokeGetter takes a MutableHandleValue out-param,
InvokeSetter a HandleValue in-param.
* Watchpoints can still tamper with values being assigned. So can
JSSetterOps. I'm pleased we can support this craziness in a way that
doesn't have to spread via the type system to encompass the entire
codebase.
* Change in GlobalObject::setIntrinsicValue is not really a change.
Yes, it asserted before, but an exception thrown during self-hosting
initialization is not going to go unnoticed either.
* Since the receiver argument to js::SetProperty() is at the end now, it
makes sense for it to be optional. Some callers look nicer.
2015-03-01 13:16:19 -06:00
Jason Orendorff
f6bc97638d
Bug 1142784, part 3 - Change js::DefinePropertyOp and a few property-defining functions to use PropertyDescriptor rather than separate (value, attrs, getter, setter) arguments. r=Waldo.
2015-02-28 11:23:44 -06:00
Jason Orendorff
6b90d382df
Bug 1142784, part 2 - Change ProxyHandler::defineProperty() to make the desc argument a non-mutable handle. r=Waldo.
2015-02-17 11:58:43 -06:00
Ehsan Akhgari
33bb32f549
Bug 1145631 - Part 1: Replace MOZ_OVERRIDE and MOZ_FINAL with override and final in the tree; r=froydnj
...
This patch was automatically generated using the following script:
function convert() {
echo "Converting $1 to $2..."
find . \
! -wholename "*/.git*" \
! -wholename "obj-ff-dbg*" \
-type f \
\( -iname "*.cpp" \
-o -iname "*.h" \
-o -iname "*.c" \
-o -iname "*.cc" \
-o -iname "*.idl" \
-o -iname "*.ipdl" \
-o -iname "*.ipdlh" \
-o -iname "*.mm" \) | \
xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}
convert MOZ_OVERRIDE override
convert MOZ_FINAL final
2015-03-21 12:28:04 -04:00
Shu-yu Guo
8c2f2cd62d
Bug 1145440 - Ship constant names for tracked strategy and outcomes in the profile JSON instead of slightly longer form strings. (r=djvj)
2015-03-20 20:48:32 -07:00
Shu-yu Guo
0e549bf2bc
Bug 1143860 - Deduplicate tracked optimizations when streaming the profile. (r=djvj)
2015-03-20 20:48:31 -07:00
Ryan VanderMeulen
909711667c
Backed out changeset d3c9b899f7d2 (bug 1143256) for frequent browser_perf-refresh.js leaks.
2015-03-20 16:07:42 -04:00
Kannan Vijayan
ec7c3382c7
Bug 1143802 - Forward jit level information to profiler frontend. r=shu
2015-03-20 13:50:23 -04:00
Brian Hackett
3729221e19
Bug 1143256 - Store object metadata using a weak map, r=luke.
2015-03-20 06:33:33 -07:00
Jan de Mooij
6980cbf56d
Bug 1142669 part 4 - Fix some inlining issues and inline scripts with loops. r=h4writer
2015-03-19 15:10:07 +01:00
Jan de Mooij
bf95f782eb
Bug 1142669 part 3 - Limit the total inlined bytecode size to avoid excessive inlining. r=h4writer
2015-03-20 13:45:36 +01:00
Brian Hackett
1c8357ba59
Bug 1143521 - Remove IsPoisonedPtr stuff, r=sfink.
2015-03-18 18:01:35 -07:00
Tooru Fujisawa
678e5efa12
Bug 1079919 - Part 0: Add RegExp ClassSpec. r=bholley
2015-03-18 18:22:05 +09:00
Terrence Cole
9884e19393
Bug 1141234 - Part 1: Abstract PossiblyFail into the OOM testing machinery; r=sfink
2015-03-11 11:06:20 -07:00
Nick Fitzgerald
90cb8a5687
Bug 1142338 - Debugger.Memory's census shouldn't use JS::ubi::Node::as<T>; r=sfink
2015-03-13 13:19:26 -07:00
Brian Hackett
95a7406bac
Bug 1135897 - Use unboxed objects for JSON objects and constant literals embedded in scripts, r=jandem.
2015-03-12 17:09:21 -06:00
Jason Orendorff
93b2f19ac6
Bug 828137, part 1 - Make Object.defineProperty fail on window elements. r=bz.
2015-02-11 11:38:36 -06:00
Jason Orendorff
951d1580ab
Bug 1141329, prelude - Make ObjectOpResult pointer-sized to fix amazingly bogus code and assertions in IonCaches, introduced by rev 0712a3d4b79c. r=efaust.
2015-03-10 12:22:30 -05:00
Carsten "Tomcat" Book
9f406a7b29
Backed out changeset df26246112ad (bug 828137)
2015-03-09 16:49:34 +01:00
Jason Orendorff
50c193277b
Bug 828137, part 1 - Make Object.defineProperty fail on window elements. r=bz.
2015-02-11 11:38:36 -06:00
Jason Orendorff
e218a3988f
Bug 1113369, part 7 - [[SetPrototypeOf]] ObjectOpResult support. r=Waldo, r=bz in dom, r=dvander in js/ipc, r=bholley in js/xpconnect.
2015-02-05 16:36:50 -06:00
Jason Orendorff
3322381e4f
Bug 1113369, part 6 - [[PreventExtensions]] ObjectOpResult support. r=Waldo, r=bz in dom, r=dvander in js/ipc, r=bholley in js/xpconnect.
2015-02-04 12:01:01 -06:00
Jason Orendorff
d1204e0adb
Bug 1113369, part 5 - [[Delete]] ObjectOpResult support. r=Waldo, r=bz in dom, r=dvander in js/ipc, r=bholley in js/xpconnect.
2015-02-04 10:20:04 -06:00
Jason Orendorff
e065e5cceb
Bug 1113369, part 4 - [[Set]] ObjectOpResult support. r=Waldo, r=bz in dom, r=dvander in js/ipc, r=bholley in js/xpconnect.
2015-02-03 19:51:40 -06:00
Jason Orendorff
f43c96af4d
Bug 1113369, part 3 - [[DefineOwnProperty]] ObjectOpResult support. r=Waldo, r=bz in dom, r=dvander in js/ipc, r=bholley in js/xpconnect.
...
Add an ObjectOpResult out-param for DefineProperty functions everywhere. We leave a few js::DefineProperty() convenience functions with no *result out-param. These have strict behavior: that is, they automatically check the result and throw if it is false. In bug 1125624 these strict signatures may end up being called DefinePropertyOrThrow, as that is what the spec calls it.
2015-01-30 11:37:07 -06:00
Jason Orendorff
143ed465ec
Bug 1113369, part 2 - js::SetArrayLength ObjectOpResult support. r=Waldo.
2015-01-29 23:02:26 -06:00
Jason Orendorff
de1c1c9fb9
Bug 1113369, part 1½ - Avoid regressing error messages by adding obj to the ObjectOpResult methods that could throw a TypeError. r=Waldo.
2015-02-18 18:49:17 -06:00
Jason Orendorff
d7beadeba1
Bug 1113369, part 1 - Introduce JS::ObjectOpResult and use it in js::StandardDefineProperty. r=Waldo.
...
In general, jsobj.h will offer, for each standard internal method that returns a boolean value indicating success/failure, signatures with a JS::ObjectOpResult& out-parameter and signatures without it. The ones without will throw a TypeError on failure (that is, the behavior will be "strict").
2015-02-02 17:06:47 -06:00
Jason Orendorff
155abd81e7
Bug 1130576 - Rename JSPropertyOp -> JSGetterOp and JSStrictPropertyOp -> JSSetterOp. r=efaust.
2015-01-30 13:56:15 -06:00
Nick Fitzgerald
1535cf4051
Bug 1139217 - Make js::HashSet<T> work with move-only T types; r=luke
2015-03-03 17:54:00 +01:00
Terrence Cole
e0d0e39876
Bug 1134425 - Part 1: move the allocator interface code out of line; r=jonco
2015-03-04 09:32:02 -08:00
Kannan Vijayan
15073b7379
Bug 1130367 - Ensure profiler stack sampling is disabled when spsProfiler is disabled. r=shu
2015-03-02 17:46:13 -05:00
Benjamin Bouvier
84cacb2a5a
Bug 1134638: 14. Inline SIMD getters (signMask, .x, .y, .z, .w) in Ion; r=nbp
2015-02-26 12:08:16 +01:00
Jan de Mooij
c588ad661c
Bug 1137523 - Unprefix most js_* functions. r=bhackett CLOSED TREE
2015-02-27 16:08:15 +01:00
Boris Zbarsky
29c02a7c07
Bug 1136925 part 3. Stop passing parents to js::NewProxyObject. r=waldo
2015-02-26 15:58:59 -05:00
Wes Kocher
bc62dd3b33
Backed out 4 changesets (bug 1136925) for potentially busting m-e10s-dt on a CLOSED TREE
...
Backed out changeset 331761aaae22 (bug 1136925)
Backed out changeset 2faa0e91fe23 (bug 1136925)
Backed out changeset a00f2530c911 (bug 1136925)
Backed out changeset d5e658bc0792 (bug 1136925)
2015-02-26 23:17:34 -08:00
Boris Zbarsky
e8c2fb81d9
Bug 1136925 part 3. Stop passing parents to js::NewProxyObject. r=waldo
2015-02-26 15:58:59 -05:00
Jan de Mooij
5b2e74d5bb
Bug 1136837 part 1 - Don't inline calls with incomplete type information for this or arguments. r=h4writer
2015-02-26 15:33:45 +01:00
Jon Coppeard
48edaed9e4
Bug 1130439 - Trigger compacting GCs after the user becomes inactive r=smaug r=terrence
2015-02-24 09:40:02 +00:00
Jon Coppeard
f9426664ae
Bug 1136046 - Increase maximum capacity of js::HashMap and HashSet r=luke
2015-02-26 09:02:13 +00:00
Nicholas Nethercote
3543c6b95e
Bug 979293 - Don't write collision bits in HashTable unnecessarily. r=luke.
...
This avoids no-op writes to the keyHash of entries when doing a no-add-lookup.
This removes a genuine data race in JSRuntime::permanentAtoms, which receives
frequent no-add-lookups from multiple threads after JSRuntime initialization
without any kind of locking.
2015-02-25 10:39:46 -08:00
Kannan Vijayan
a51ff62795
Bug 1129510 - Trace references to JS heap from Profiler buffers. r=shu
2015-02-25 16:43:39 -05:00
Ryan VanderMeulen
4537f3c63b
Backed out changesets 3de23a29bf71 and d42c64b791e6 (bug 1129510) for debug SM(e) timeouts.
2015-02-25 13:44:19 -05:00
Kannan Vijayan
373f197cbc
Bug 1129510 - Trace references to JS heap from Profiler buffers. r=shu
2015-02-25 11:26:28 -05:00
Xidorn Quan
6299c8640f
Bug 1135535 part 4 - Fix C4275 dll-interface warning and mark this warning as error in js/src on MSVC. r=luke
...
Fix warning:
js\src\jswrapper.h(58) : error C4275: non dll-interface class 'js::DirectProxyHandler' used as base for dll-interface class 'js::Wrapper'
obj-firefox\dist\include\js/Proxy.h(358) : see declaration of 'js::DirectProxyHandler'
js\src\jswrapper.h(57) : see declaration of 'js::Wrapper'
2015-02-25 15:26:23 +11:00