Commit Graph

1056 Commits

Author SHA1 Message Date
Jan de Mooij
353df38b83 Bug 1144366 - Switch SpiderMonkey and XPConnect style from |T *t| to |T* t|. r=jorendorff 2015-03-28 23:22:11 +01:00
Phil Ringnalda
9e022af53e Backed out 7 changesets (bug 1147588, bug 1147669, bug 1147533, bug 1147665, bug 1135985, bug 1147180, bug 1147670) for frequent 10.10 devtools-2 GC assertion failures
CLOSED TREE

Backed out changeset 0bd8c4ec41fa (bug 1147670)
Backed out changeset 35ad82ff9ee7 (bug 1147669)
Backed out changeset ffe7f2e2a0f0 (bug 1147665)
Backed out changeset 37c42cff2c01 (bug 1147588)
Backed out changeset be4138f208ba (bug 1147533)
Backed out changeset 6bbd529bd995 (bug 1147180)
Backed out changeset 853e3ad56dad (bug 1135985)
2015-03-28 10:41:32 -07:00
Phil Ringnalda
ebf64fc997 Backed out changeset 0c030f97a04f (bug 1144366) for being on top of patches being backed out
CLOSED TREE
2015-03-28 10:39:56 -07:00
Phil Ringnalda
6ed9961a65 Backed out changeset d72144153749 (bug 1147005) for being on top of a patch on top of a patch being backed out
CLOSED TREE
2015-03-28 10:39:09 -07:00
Tom Schuster
66af630422 Bug 1147005 - Change JSAddPropertyOp signature. r=jorendorff,peterv 2015-03-28 14:47:02 +01:00
Jan de Mooij
f981f078d8 Bug 1144366 - Switch SpiderMonkey and XPConnect style from |T *t| to |T* t|. r=jorendorff 2015-03-28 12:08:37 +01:00
Terrence Cole
821cb65f06 Bug 1135985 - Introduce a new, strongly-typed tracing path; r=jonco, r=sfink 2015-02-26 14:15:26 -08:00
Jason Orendorff
db4ac4cade 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
e0dceb58e9 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
d28f3fee83 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
Brian Hackett
1a5b452e6a Bug 1143256 - Store object metadata using a weak map, r=luke. 2015-03-25 09:07:51 -07:00
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