Commit Graph

36274 Commits

Author SHA1 Message Date
Branislav Rankov
21510896b2 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
eb9377476b Bug 1079806 - IonMonkey: Enable lazylinking on ARM/MIPS, r=mjrosenberg 2014-10-23 15:38:08 +02:00
Hannes Verschore
c3199377b8 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
3408357511 Bug 979594 - ARM Ion and assembler support. r=sstangl r=dtc-moz 2014-10-23 14:23:27 +02:00
Lars T Hansen
9e232ae5c3 Bug 979594 - JIT implementations of the important Atomics. r=sstangl 2014-10-23 14:23:27 +02:00
Lars T Hansen
ad21f14cea Bug 979594 - Atomics object, atomic operations on SharedArrayBuffer (no jit support). r=luke 2014-10-23 14:23:16 +02:00
Terrence Cole
3aff5ca03c Bug 1081769 - Assert that we never have a null cross-compartment key; r=billm 2014-10-22 17:01:05 -07:00
Luke Wagner
bcf52787c1 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
3784b642f1 Bug 1085680 - OdinMonkey: remove MathRetType (r=bbouvier)
--HG--
extra : rebase_source : 755aa9b665c82ecba3de8be8722c5f543b88ef42
2014-10-22 11:11:31 -05:00
Luke Wagner
c48c19e659 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
065609283e 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
63e44a7975 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
dc01ba9c13 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
8e680ac015 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
8fee05cae6 Bug 1074961 - Part 6: remove GCChunkSet; r=sfink
--HG--
extra : rebase_source : fc4076808c7d02956e298d5942f570ef91ca772d
2014-10-13 19:15:40 -07:00
Terrence Cole
34da1e1c9a 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
8a5716d925 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
0f1a154510 Bug 1042823 - Don't blindly make MMinMax optimize for doubles, r=jandem,sunfish 2014-10-22 22:12:45 +02:00
Jan de Mooij
fa4d3a1b80 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
47c6b637e5 Bug 1081268 - TypeArrayObject: Always use UseNewTypeForInitializer. r=bhackett 2014-10-22 18:42:15 +02:00
Nicolas B. Pierron
d2d7401112 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
28ca5212ff Bug 1083866 - Handle potential invalidation of the bailing frame. r=jandem 2014-10-22 18:37:35 +02:00
Nicolas B. Pierron
d43f28dbec Bug 1083866 - Mark bailout frames. r=jandem 2014-10-22 18:37:35 +02:00
Nicolas B. Pierron
ddcf9e54aa Bug 1083866 - Only remove instructions from the JitActivation after the bailout. r=jandem 2014-10-22 18:37:35 +02:00
Nicolas B. Pierron
ea6b7caabe Bug 1083866 - Add test case to check for GC during bailouts. r=nbp 2014-10-22 18:37:34 +02:00
Terrence Cole
aa30c6a1b8 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
b0a9ca79de Bug 1084959 - Don't abort syntax parser for (a) = ...; r=bhackett 2014-10-22 18:11:55 +02:00
Jan de Mooij
61382c7bb0 Bug 1087232 - Don't atomize eval strings for the eval cache. r=luke 2014-10-22 18:11:53 +02:00
Luke Wagner
3ef4e824f5 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
3e1da49fc6 Bug 1019191 part 24. Remove the XPCCallContext stuff from xpc_qsUnwrapArgImpl. r=peterv 2014-10-22 11:40:51 -04:00
Boris Zbarsky
1a046acfcb 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
a89efc8112 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
bbf70ae2f4 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
590dfbebc1 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
9b542004ee Bug 1019191 part 18. Remove the unused tearoff bits in quickstub unwrapping. r=peterv 2014-10-22 11:40:50 -04:00
Boris Zbarsky
96247f112b 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
4d6d33db4c Bug 1019191 part 16. Remove nsDOMQS.h. r=peterv 2014-10-22 11:40:49 -04:00
Boris Zbarsky
462b510da8 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
3e71ea9acc Bug 1019191 part 13. Remove the now-unused castNativeArgFromWrapper and castNativeFromWrapper functions. r=peterv 2014-10-22 11:40:49 -04:00
Boris Zbarsky
5de2f9ca3e 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
ced17eff27 Bug 1019191 part 11. Get rid of the now-unused xpc_qsUnwrapArg. r=peterv 2014-10-22 11:40:48 -04:00
Boris Zbarsky
bf226de154 Bug 1019191 part 9. Remove now-dead JS-to-C++ quickstub conversion functions. r=peterv 2014-10-22 11:40:48 -04:00
Boris Zbarsky
6b807f9396 Bug 1019191 part 8. Stop using xpc_qsACString in XPConnect. r=bholley 2014-10-22 11:40:48 -04:00
Boris Zbarsky
e093c2bd4b Bug 1019191 part 7. Remove various dead-code throwing functions. r=peterv 2014-10-22 11:40:47 -04:00
Boris Zbarsky
f5254b3f86 Bug 1019191 part 6. Remove dead code for setting up quickstubs on a prototype from XPCQuickStubs.h/cpp. r=peterv 2014-10-22 11:40:47 -04:00
Boris Zbarsky
b9931d6974 Bug 1019191 part 5. Remove the one remaining quickstub we have and all quickstub codegen. r=peterv 2014-10-22 11:40:47 -04:00
Boris Zbarsky
4fae1b6365 Bug 1019191 part 4. Remove the now-dead xpc_qsThrowGetterSetterFailed and xpc_qsThrowBadSetterValue functions. r=peterv 2014-10-22 11:40:47 -04:00
Boris Zbarsky
21bca779c5 Bug 1019191 part 3. Remove calls to the empty DOM_MarkInterfaces/DOM_ClearInterfaces/DOM_InitInterfaces functions and the functions themselves. r=peterv 2014-10-22 11:40:47 -04:00
Boris Zbarsky
f9d5afdd98 Bug 1019191 part 2. Remove WebIDL quickstubs for EventTarget, since the only remaining xpconnect EventTargets with classinfo are globals, and we never call PostCreatePrototype on globals. r=peterv 2014-10-22 11:40:46 -04:00
Boris Zbarsky
b8f16e3e0f Bug 1019191 part 1. Remove the dead finishInitForWrappedGlobal method. r=bholley 2014-10-22 11:40:46 -04:00