45428 Commits

Author SHA1 Message Date
Luke Wagner
f7c298b9c2 Bug 1087643 - Don't rely on libc optimizations in ArrayBuffer.transfer (r=sfink)
--HG--
extra : rebase_source : fac28690b020195c2e849af20d6d85ca9185d933
2014-10-22 17:28:07 -05:00
Boris Zbarsky
e8f5143777 Bug 1087374. Make .wrappedJSObject on Xrays a JSNative accessor. r=bholley 2014-10-23 15:21:46 -04:00
Boris Zbarsky
691a2b701a Bug 1087404. Get rid of XPCQuickStubs.h/cpp. r=bholley 2014-10-23 15:21:46 -04:00
Bobby Holley
8d455794c0 Bug 857138 - Make Date operate with the boxedValue_unbox proxy trap. r=luke 2014-10-23 19:53:31 +02:00
Bobby Holley
8e4a68387a Bug 857138 - Add some cx parameters. r=bz 2014-10-23 19:53:31 +02:00
Bobby Holley
4b1c65f700 Bug 857138 - Remove unused APIs. r=luke 2014-10-23 19:53:31 +02:00
Bobby Holley
6eb9b005f0 Bug 1087824 - Bump win32 stack buffer size. r=luke 2014-10-23 19:53:30 +02:00
Jan de Mooij
079038b58c Bug 1087963 - Optimize Array.prototype.slice on sparse arrays. r=bhackett
--HG--
extra : rebase_source : df595a105839a5a0ba257303bf67ac7e7784fb35
2014-10-23 19:07:39 +02:00
Terrence Cole
8145365842 Backed out 2 changesets (bug 1074961) for intermittent failures on a CLOSED TREE.
Backed out changeset 0d2e63e05055 (bug 1074961)
Backed out changeset 6e9794cbca2b (bug 1074961)
2014-10-23 09:27:26 -07:00
Branislav Rankov
b4deb2ee7c Bug 1079806 - IonMonkey MIPS: Change ma_bal to optionally fill the delay slot. r = nbp 2014-10-10 16:44:15 +02:00
Hannes Verschore
618c9944e0 Bug 1079806 - IonMonkey: Enable lazylinking on ARM/MIPS, r=mjrosenberg 2014-10-23 15:38:08 +02:00
Hannes Verschore
e69262b1cf Bug 1085298 - IonMonkey: Fix for when folding ternary constructs and a branch dominates both MPhi predecessors, r=nbp 2014-10-23 15:34:13 +02:00
Lars T Hansen
81a5690c98 Bug 979594 - ARM Ion and assembler support. r=sstangl r=dtc-moz 2014-10-23 14:23:27 +02:00
Lars T Hansen
a088077703 Bug 979594 - JIT implementations of the important Atomics. r=sstangl 2014-10-23 14:23:27 +02:00
Lars T Hansen
dd2a241361 Bug 979594 - Atomics object, atomic operations on SharedArrayBuffer (no jit support). r=luke 2014-10-23 14:23:16 +02:00
Terrence Cole
be6fb5965d Bug 1081769 - Assert that we never have a null cross-compartment key; r=billm 2014-10-22 17:01:05 -07:00
Luke Wagner
1a42e3f266 Bug 1085680 - OdinMonkey: change return type of Math.clz32 to fixnum (r=bbouvier)
--HG--
extra : rebase_source : 105e21029b6b1f6eabd23b78fe2caea3ec21bcb7
2014-10-22 11:11:50 -05:00
Luke Wagner
ae2d59ec19 Bug 1085680 - OdinMonkey: remove MathRetType (r=bbouvier)
--HG--
extra : rebase_source : 755aa9b665c82ecba3de8be8722c5f543b88ef42
2014-10-22 11:11:31 -05:00
Luke Wagner
14a41a93b5 Bug 1085680 - OdinMonkey: change argument type of Math.min/max from 'int' to 'signed' (r=bbouvier)
--HG--
extra : rebase_source : c40fcd056b6e5cc3eb16ea1486c99e3186706d4b
2014-10-22 11:11:15 -05:00
Jeff Walden
0855b78393 Bug 1052139 - Reorder the preventExtensions trap just after the [[Prototype]]-access traps. r=code-motion
--HG--
extra : rebase_source : ea85bf1daa26ec7a32caf2656ebf99c6e2757cfa
2014-10-21 11:40:04 -07:00
Jeff Walden
777c2ff26e Bug 1085566 - Make the preventExtensions hook return succeeded/failed rather than always indicate failure by reporting an error. r=efaust
--HG--
extra : rebase_source : 487b569d23ce18f39fc53697e5f25cc789885803
2014-10-19 01:18:43 -07:00
Jeff Walden
02d8b3daa4 Bug 1052139 - Implement the ability to prevent modifying an extensible object's [[Prototype]]. r=efaust, r=bholley
--HG--
extra : rebase_source : 547490455fc588e40dd2b2dba4c3355768d78f8d
2014-09-23 13:03:40 -07:00
Jeff Walden
5573b02492 Bug 1072817 - Minor adjustments (primarily for method-ordering) as a followup to making accessing the [[Prototype]] of a revoked proxy not crash. Also add another test. r=trivial
--HG--
extra : rebase_source : 4bc4c0b872a5ef2b8a4ae563b2ff44a246a838e3
2014-10-16 15:43:23 -07:00
Terrence Cole
6ebb480008 Bug 1074961 - Part 6: remove GCChunkSet; r=sfink
--HG--
extra : rebase_source : fc4076808c7d02956e298d5942f570ef91ca772d
2014-10-13 19:15:40 -07:00
Terrence Cole
2067737c4a Bug 1074961 - Part 5: use ChunkPool to manage the available chunk sets; r=sfink,r=jonco
--HG--
extra : rebase_source : 60c9cca467fcee9cd8b2ef666ff1d863003b0ad3
2014-10-06 10:25:18 -07:00
Brian Hackett
a220b054b1 Bug 1087310 - Watch for objects that have been swapped when marking store buffer slot edges, r=terrence. 2014-10-22 14:12:08 -07:00
Hannes Verschore
a1e41d89c8 Bug 1042823 - Don't blindly make MMinMax optimize for doubles, r=jandem,sunfish 2014-10-22 22:12:45 +02:00
Jan de Mooij
2beee53839 Bug 1087496 - Optimize codegen for IsNullOrLikeUndefined* instructions. r=h4writer
--HG--
extra : rebase_source : 4699073583913d1d471ba7f72487dac305d0eb0b
2014-10-22 21:58:25 +02:00
Nicolas B. Pierron
5f070540ab Bug 1081268 - TypeArrayObject: Always use UseNewTypeForInitializer. r=bhackett 2014-10-22 18:42:15 +02:00
Nicolas B. Pierron
39b8ea1136 Bug 1083866 - No longer suppress GC for the evaluation of recover instructions. r=jandem 2014-10-22 18:37:35 +02:00
Nicolas B. Pierron
1fbcbe24d7 Bug 1083866 - Handle potential invalidation of the bailing frame. r=jandem 2014-10-22 18:37:35 +02:00
Nicolas B. Pierron
5225ef8c26 Bug 1083866 - Mark bailout frames. r=jandem 2014-10-22 18:37:35 +02:00
Nicolas B. Pierron
252da901b5 Bug 1083866 - Only remove instructions from the JitActivation after the bailout. r=jandem 2014-10-22 18:37:35 +02:00
Nicolas B. Pierron
febdcf5646 Bug 1083866 - Add test case to check for GC during bailouts. r=nbp 2014-10-22 18:37:34 +02:00
Terrence Cole
b1a59b2c15 Bug 1013001 - Make it simpler to deal with nursery pointers in the compiler; r=jandem
--HG--
extra : rebase_source : 63bbd781bbf091052af44544c3a8569f778635e3
2014-10-15 14:26:52 -07:00
Jan de Mooij
78ccf3bab4 Bug 1084959 - Don't abort syntax parser for (a) = ...; r=bhackett 2014-10-22 18:11:55 +02:00
Jan de Mooij
da7c451ced Bug 1087232 - Don't atomize eval strings for the eval cache. r=luke 2014-10-22 18:11:53 +02:00
Luke Wagner
5b7b13cafd Bug 1084985 - Remove more 'using namespace JS;' to avoid sporadic bustage in unified builds (r=lth) 2014-10-22 11:03:41 -05:00
Boris Zbarsky
983798c067 Bug 1019191 part 24. Remove the XPCCallContext stuff from xpc_qsUnwrapArgImpl. r=peterv 2014-10-22 11:40:51 -04:00
Boris Zbarsky
0929eae5cc Bug 1019191 part 23. Eliminate the ppArgRef argument of xpc_qsUnwrapArgImpl and UnwrapArg, since we're now always handing out a ref in ppArg. r=peterv 2014-10-22 11:40:51 -04:00
Boris Zbarsky
a688f3fefc Bug 1019191 part 22. Eliminate the effectively unused vp argument of xpc_qsUnwrapArgImpl. r=peterv 2014-10-22 11:40:51 -04:00
Boris Zbarsky
b87343d102 Bug 1019191 part 21. Change xpc_qsUnwrapArgImpl and UnwrapArg to take a HandleObject, not a HandleValue. r=peterv 2014-10-22 11:40:50 -04:00
Boris Zbarsky
b5aebba0c1 Bug 1019191 part 20. Replace the getWrapper/castNative stuff in XPCQuickStubs with what I believe is a single function call that's equivalent to it, since the tearoff bit was dead code anyway due to never resetting clasp. r=peterv,bholley 2014-10-22 11:40:50 -04:00
Boris Zbarsky
f407d435ee Bug 1019191 part 18. Remove the unused tearoff bits in quickstub unwrapping. r=peterv 2014-10-22 11:40:50 -04:00
Boris Zbarsky
c26753b139 Bug 1019191 part 17. Make some of the remaining quickstub unwrap methods static. r=peterv
Note that we know that we always call UnwrapArg with an object, so
xpc_qsUnwrapArgImpl knows v is always an object.
2014-10-22 11:40:50 -04:00
Boris Zbarsky
6c525b5027 Bug 1019191 part 16. Remove nsDOMQS.h. r=peterv 2014-10-22 11:40:49 -04:00
Boris Zbarsky
170752efc2 Bug 1019191 part 14. Remove the now-unused HasBitInInterfacesBitmap and all the interfaces bitmap machinery that ends up unused as a result. r=peterv 2014-10-22 11:40:49 -04:00
Boris Zbarsky
db949c14df Bug 1019191 part 13. Remove the now-unused castNativeArgFromWrapper and castNativeFromWrapper functions. r=peterv 2014-10-22 11:40:49 -04:00
Boris Zbarsky
66f049ef9f Bug 1019191 part 12. Eliminate some unused UnwrapArg specializations. r=peterv
The following command:

  grep -Ir "UnwrapArg<" $srcdir/* $objdir/dom/bindings/ | sed 's/^[^<]*<//' | sed 's/>.*//' | sort -u

(with $srcdir and $objdir replaced by the relevant paths) produces this list:

${type}
_clazz
_interface
imgINotificationObserver
imgIRequest
mozilla::dom::EventTarget
mozilla::dom::IndirectlyImplementedInterface
mozilla::dom::TestExternalInterface
nsGenericHTMLElement
nsIBrowserDOMWindow
nsIChannel
nsIDOMCSSRule
nsIDOMDataChannel
nsIDOMMozMmsMessage
nsIDOMMozSmsMessage
nsIDOMMozWakeLockListener
nsIDOMWindow
nsIDOMXPathNSResolver
nsIFile
nsIFrameRequestCallback
nsIInputStream
nsIInputStreamCallback
nsIJSID
nsIMenuBuilder
nsIObserver
nsIOutputStream
nsIPrincipal
nsISelectionListener
nsISupports
nsITreeView
nsIURI

The ${type} bit is part of codegen.  The _clazz and _interface bits are the
macros in js/xpconnect/src/nsDOMQS.h that are defining UnwrapArg methods.  The
nsGenericHTMLElement is only used in xpc_qsUnwrapArg_HTMLElement.

Inspection of the above list indicates that none of the classes used with
DEFINE_UNWRAP_CAST_HTML are in it, so all those specializations of UnwrapArg,
and the xpc_qsUnwrapArg_HTMLElement method they call, are dead code.

Moreover, almost all the specializations set up by DEFINE_UNWRAP_CAST are dead
code as well; the only exception is the one for mozilla::dom::EventTarget.  But
since we no longer use Web IDL quickstubs for EventTarget, that one is only
used in a few places for method arguments, and none of those should have our
one remaining webidl event target passed to them.  So it's safe to remove that
specialization as well.
2014-10-22 11:40:48 -04:00
Boris Zbarsky
7e66ee840a Bug 1019191 part 11. Get rid of the now-unused xpc_qsUnwrapArg. r=peterv 2014-10-22 11:40:48 -04:00