Commit Graph

36691 Commits

Author SHA1 Message Date
Dan Gohman
7b34f3cf97 Bug 1096684 - IonMonkey: Optimize with SSE4.1 pextrd r=bbouvier 2014-11-12 12:38:32 -08:00
Dan Gohman
7f0e9b073c Bug 1096684 - IonMonkey: Optimize with SSE4.1 insertps and blendps r=bbouvier 2014-11-12 12:38:32 -08:00
Dan Gohman
79312354ba Bug 1096684 - IonMonkey: extraName() for SIMD insert and extract element r=bbouvier 2014-11-12 12:38:31 -08:00
Dan Gohman
e7494a84d0 Bug 892702 - IonMonkey: Add unit tests for range analysis r=nbp 2014-11-12 12:38:31 -08:00
Ryan VanderMeulen
1011becefe Backed out changeset 0dae8ac74ab4 (bug 1080462) for crashes during packaging. 2014-11-12 15:14:56 -05:00
Kannan Vijayan
76406b50a1 Bug 1080462 - Fix up leak of native2bytecode mapping information. r=h4writer 2014-11-12 14:42:42 -05:00
Terrence Cole
4cb7822344 Bug 1093307 - Part 2: Make OOM flushing paths more straightforward; r=jonco 2014-11-06 14:03:05 -08:00
Jan de Mooij
e19b28830a Bug 1093573 part 11 - Remove bytecode offset slot from generators. r=wingo 2014-11-12 12:12:41 +01:00
Jan de Mooij
7ff195ac9c Bug 1093573 part 10 - Baseline-compile JSOP_RESUME. r=shu,wingo 2014-11-12 12:12:39 +01:00
Jan de Mooij
41c76776d2 Bug 1093573 part 9 - Add InterpretGeneratorResume. r=wingo 2014-11-12 12:12:36 +01:00
Alexander J. Vincent
1255b6cbe8 Bug 1092477 - Let the subscript Loader report any URL it fails on, when it can. r=bholley 2014-11-08 17:08:09 -08:00
Jason Orendorff
d71c5ad126 Bug 1094062 - Delete js/public/PropertyKey.h. r=jandem.
--HG--
extra : rebase_source : 4ff841a634f08f611529d18878074d6dc73d0fd3
2014-11-05 00:56:36 -06:00
Jason Orendorff
b83952dfbc Bug 1066322 - Enable ES6 symbols in all builds. r=jandem.
--HG--
extra : rebase_source : 49654e9105657b17862e3fed97ec4878d9373447
2014-11-05 01:38:49 -06:00
Jason Orendorff
65758781ae Bug 1095973, epilogue - Tweaks to PurgeProtoChain/PurgeScopeChain and a jit-test for the invariant enforced by PurgeProtoChain. r=efaust.
--HG--
extra : rebase_source : 6f0e1a4d7573fdcdc45962a63d30bf6ee480d3be
2014-11-10 11:19:53 -06:00
Jason Orendorff
1832d8c279 Bug 1095973 - Fix crash @PurgeProtoChain introduced by 1090537. r=efaust.
--HG--
extra : rebase_source : a2e90c7ffd69dddee190a4de927fe68cb52482dd
2014-11-10 16:53:04 -06:00
Luke Wagner
4f56ee7daf Bug 1087178 - OdinMonkey: explain why 'not stored in cache' (r=bbouvier,janv)
--HG--
extra : rebase_source : d37893913a09d5a5b339e4ae4ee42f873d449d1e
2014-10-22 17:28:07 -05:00
Luke Wagner
f3c6de2193 Bug 1091916 - simplify the interrupt/jitStackLimit situation (r=bhackett)
--HG--
extra : rebase_source : 44ac5dbc77174414f4596aa7c318fdaa23b8e292
2014-10-30 17:35:35 -05:00
Ryan VanderMeulen
a8b4417549 Merge fx-team to m-c. a=merge 2014-11-11 16:43:46 -05:00
Ryan VanderMeulen
bd7b8501c3 Backed out changeset 583284c299fb (bug 1091916) for causing intermittent "too much recursion" jit-test failures on Win32 and OSX 10.6.
CLOSED TREE
2014-11-11 14:53:11 -05:00
Ryan VanderMeulen
95d5c8b95a Backed out changeset 51572056e797 (bug 1091912) for frequent Android 4.0 crashes.
CLOSED TREE
2014-11-11 14:16:40 -05:00
Boris Zbarsky
455764ceb3 Bug 1095870. Don't generate baseline set IC stubs for primitive 'this' values, since all the stubs only work on objects. r=jandem 2014-11-11 12:50:43 -05:00
Paolo Amadini
f119700716 Bug 1095443 - Ensure processNextEvent never blocks after processing a Promise microtask. r=bz 2014-11-11 13:47:28 +00:00
Jan de Mooij
aceb051a8d Bug 1093573 part 8 - Add JitFrame_Unwound_BaselineJS. r=nbp 2014-11-11 17:50:44 +01:00
Jan de Mooij
4c046656c2 Bug 1093573 part 7 - Allow OSR for generator scripts. r=wingo 2014-11-11 17:50:42 +01:00
Luke Wagner
52334af117 Bug 1091916 - simplify the interrupt/jitStackLimit situation (r=bhackett) 2014-10-30 17:35:35 -05:00
Steve Fink
ad212a2094 Bug 1074961 - Part 12: Simplify the locking in releaseArena; r=sfink
--HG--
extra : amend_source : 45ad5e52ee44ca41216ee15f9c6142c37a5cd106
2014-11-10 14:55:29 -08:00
Wes Kocher
f3e280bba4 Backed out changeset 6a96e15c810c (bug 1093307) for ggc bustage on a CLOSED TREE 2014-11-10 14:40:59 -08:00
Wes Kocher
8f5483146c Backed out changeset fdcf11277625 (bug 1074961) for ggc bustage on a CLOSED TREE 2014-11-10 14:37:25 -08:00
Terrence Cole
1340af8090 Bug 1074961 - Part 12: Simplify the locking in releaseArena; r=sfink
--HG--
extra : rebase_source : 3b1f8e728a31948a1bcb04aa3a46a5ea2b216aa4
2014-11-06 14:03:09 -08:00
Terrence Cole
6f5d4a82de Bug 1093307 - Part 2: Make OOM flushing paths more straightforward; r=jonco
--HG--
extra : rebase_source : 4634215f64ea96c2057f4ff609119b2a6cad008f
2014-11-06 14:03:05 -08:00
Nathan Froyd
d27be95ebc Bug 1095633 - part 2 - remove HAVE_CPP_TROUBLE_COMPARING_TO_ZERO bits from the build system; r=mshal 2014-11-07 14:08:13 -05:00
Nicolas B. Pierron
6a9d0a08b3 Bug 1095284 - Fix test case, check that ParallelJS is enabled. r=shu 2014-11-10 14:04:00 +01:00
Emanuel Hoogeveen
7f9f5f7dab Bug 1084651 - Part 6: Rename SliceBudget::reset to the less misleading makeUnlimited. r=billm 2014-11-04 07:35:00 +01:00
Emanuel Hoogeveen
95949b525e Bug 1084651 - Part 4b: Adjust and clarify some tests using gcslice(0). r=billm 2014-11-04 08:17:00 +01:00
Emanuel Hoogeveen
de36acb97c Bug 1084651 - Part 4a: Adjust some tests to preserve previous behavior. r=billm 2014-10-21 11:50:00 +02:00
Emanuel Hoogeveen
4dfc42b7c5 Bug 1084651 - Part 3: Tighten up the bounds of SliceBudget to work as a budget should. r=billm 2014-11-04 07:34:00 +01:00
Emanuel Hoogeveen
6941fb3fd3 Bug 1084651 - Part 2: Clean up SliceBudget and require explicitly choosing between TimeBudget and WorkBudget. r=billm r=mccr8 2014-10-22 14:13:00 +02:00
Emanuel Hoogeveen
9231874cdc Bug 1084651 - Part 1: Thread SliceBudget through several functions to choose the budget type at the source. r=billm 2014-11-07 13:05:00 +01:00
Steve Singer
61bc51b889 Bug 1096052 - Add unboxNonDouble to the None MacroAssembler. r=bhackett 2014-11-09 18:08:00 +01:00
Nick Fitzgerald
d44fae4043 Bug 1083456 - Part 1: Add JS_TraceIncomingCCWs. r=terrence 2014-11-07 11:56:00 +01:00
Luke Wagner
96d39317f9 Bug 1091912 - stop using mprotect to halt Ion/asm.js execution (r=bhackett)
--HG--
extra : rebase_source : 2b5b2958d5a1782680800132ab01bf407640a92b
2014-11-11 08:36:52 -06:00
Jan de Mooij
ef1484fbf9 Bug 1093573 part 6 - Baseline-compile yield instructions. r=wingo 2014-11-11 15:12:28 +01:00
Jan de Mooij
0bcbf8447a Bug 1093573 part 5 - Baseline-compile JSOP_GENERATOR. r=wingo 2014-11-11 15:12:26 +01:00
Jan de Mooij
55c3153de9 Bug 1093573 part 4 - Add yield index to YIELD ops. r=wingo 2014-11-11 15:12:24 +01:00
Jan de Mooij
8dde2de579 Bug 1094255 - Optimize GetElements on NodeLists to make fun.apply(x, nodeList) faster. r=bz,evilpie 2014-11-11 11:56:44 +01:00
Jason Orendorff
e1fae76663 Bug 1090537, part 12 - Change SetNonexistentProperty to use only receiver, not obj. No change in behavior. r=efaust.
(The behavior doesn't change because Unqualified is only passed from two call sites, and in both places, the same object is passed for both receiver and obj.)

--HG--
extra : rebase_source : 9e71c3aca2d35829c9be8386e4855ad050e12a13
extra : amend_source : 3f95d45b5d630f4a2d45869c84520b28dc936792
2014-10-25 11:24:55 -05:00
Jason Orendorff
fbc4057168 Bug 1090537, part 11 - Delete a special case for arrays in SetNonexistentProperty that is (a) unreachable; (b) redundant with a check in DefinePropertyOrElement. r=efaust.
The code being deleted would be ineffective even if we did have Reflect.set, but Reflect.set does enable a very near miss (where receiver, not obj, is an array), so we leave a sleeper test for that case.

--HG--
extra : rebase_source : ea38558aaa9e52ebb999cf1eea53abfde5608161
2014-10-28 12:49:17 -05:00
Jason Orendorff
f678c3bb6c Bug 1090537, part 10 - Factor out SetNonexistentProperty. No change in behavior. r=efaust.
--HG--
extra : rebase_source : f9bbad80dcb455bfccb5ad9cead6dcb7b53d71d3
2014-11-07 13:02:49 -06:00
Jason Orendorff
eee003c854 Bug 1090537, part 9 - Just move SetPropertyByDefining. No change in behavior. r=efaust.
--HG--
extra : rebase_source : 8accf39f3c7e3d9d4121244213173aa5581f57d3
2014-11-07 13:00:50 -06:00
Jason Orendorff
71f2ace8eb Bug 1090537, part 8 - In SetPropertyHelper, if defining a new data property, define it on receiver, not obj. r=efaust.
Most of the diff is just renaming an argument. The only new code is necessary because unlike obj, receiver can be non-native.

--HG--
extra : rebase_source : 115769a212724dddec315663a7a7e71a9abaa992
2014-10-18 16:49:50 -05:00
Jason Orendorff
5ab816f69d Bug 1090537, part 7 - Eliminate useless attrs argument to SetPropertyByDefining. No change in behavior. r=efaust.
--HG--
extra : rebase_source : 4eb90cb86d576f9014265b9b00808a099f589915
2014-10-18 16:43:25 -05:00
Jason Orendorff
76d852286b Bug 1090537, part 6 - Factor out a big chunk of SetPropertyHelper into a separate function template, SetPropertyByDefining. No change in behavior. r=efaust.
--HG--
extra : rebase_source : 5bd292385b3d2a04f28311305a1cb99b27494193
2014-10-18 16:30:32 -05:00
Jason Orendorff
c42c34a04e Bug 1090537, part 5 - Remove legacy special case in baseops::SetPropertyHelper that cloned the getter and setter of JSPROP_SHADOWABLE properties when shadowed on another native object. r=Waldo.
--HG--
extra : rebase_source : c1478c335a9f5a1484b87ce9c566f1f8c4d9f20d
2014-10-15 14:05:29 -05:00
Jason Orendorff
554e5e3e19 Bug 1090537, part 4 - Take NativeSet private. No change in behavior. r=efaust.
--HG--
extra : rebase_source : 1c802d28c3f828412624cdcc689fa4a76ee3e59c
2014-10-15 12:08:37 -05:00
Jason Orendorff
b7988df161 Bug 1090537, part 3 - Pass receiver argument through from JSObject::setGeneric and setElement to Proxy::set. r=efaust.
ES6 specifies [[Set]] as an operation taking both a "this" object and a "receiver" parameter. Both JSObject::setGeneric and Proxy::set support the receiver parameter, but ObjectOps::setGeneric does not; in this patch, we add a little workaround for that. The test shows how this is observable using only standard builtins.

The changes in JSObject::setElement are untestable since currently all call sites pass the same value for obj as for receiver.

(This was reviewed as "part 2" but it was necessary to switch parts 2 and 3 and add part 2b.)

--HG--
extra : rebase_source : 617decfa9be34b01a0f923a9717ad2544d913af9
2014-10-15 22:54:57 -05:00
Jason Orendorff
66460e97d2 Bug 1090537, part 2b - In Proxy::set, do not assume that proxy == receiver or that both have the same handler. r=efaust, r=bholley.
--HG--
extra : rebase_source : 0aa0e3e37a2a95f3cfa0399e4380de73a95ab48a
2014-10-28 20:58:36 -05:00
Jason Orendorff
940ab6cec8 Bug 1090537, part 2a - In BaseProxyHandler::set(), do not assume that proxy == receiver or that both have the same handler. r=efaust.
(This was reviewed as "part 3" but it was necessary to switch parts 2 and 3 and add part 2b.)

--HG--
extra : rebase_source : 7ae9ba80620475ff3e001e7b1e041c98194152a6
extra : source : dd32aa64b825cff02ce72df7533cbcc57f782f8f
2014-10-16 08:06:13 -05:00
Jason Orendorff
3e771fa684 Bug 1090537, part 1 - Remove an old hack where Proxy::hasOwn permitted SET access. r=bholley.
The comments being deleted here are incorrect; Proxy::set no longer calls handler->hasOwn().

--HG--
extra : rebase_source : 328433d668e99e99373d77bb1956291fb788fac9
2014-10-17 07:33:57 -05:00
Luke Wagner
780a49b605 Bug 1094570 - OdinMonkey: tidy up TryEnablingIon (r=hannes) 2014-11-05 17:30:30 -06:00
Tom Schuster
107172fa13 Bug 993026 - Rename NewResolve to Resolve in browser. r=bz 2014-11-08 01:07:12 +01:00
Tom Schuster
93dc15aa0c Bug 993026 - Change resolve hook in browser/XPC. r=bholley 2014-11-08 01:07:12 +01:00
Tom Schuster
e34d3251d3 Bug 993026 - Simplify JS resolve hook. r=jorendorff 2014-11-08 01:07:12 +01:00
Tom Schuster
9d229e017e Bug 993026 - Change XPIDLScriptable NewResolve to simpler Resolve. r=bholley 2014-11-08 01:07:12 +01:00
Tom Schuster
6e143a6b0c Bug 1091900 - Move ForOfIterator to its own file. r=jandem
--HG--
rename : js/src/jsiter.cpp => js/src/vm/ForOfIterator.cpp
2014-11-08 01:07:12 +01:00
Tom Schuster
2a73ddb7b1 Bug 1091900 - Remove iteratorObject hook. r=jorendorff
* * *
Bug 1091900 - Fix build on CLOSED TREE
2014-11-05 20:36:49 +01:00
Tom Schuster
1df697b523 Bug 1094189 - Remove shell resolver function. r=jorendorff 2014-11-05 20:36:48 +01:00
ziyunfei
c6824ff05e Bug 1079120 - Make ToNumber(string) support binary and octal literals. r=till 2014-10-07 02:25:00 -04:00
Boris Zbarsky
391d322f40 Bug 1095308. Remove some compileAndGo checks from frontend::CompileScript. r=luke 2014-11-07 14:10:39 -05:00
Ryan VanderMeulen
46a45c9ea7 Merge m-c to mozilla-inbound. a=merge 2014-11-07 13:44:04 -05:00
Jim Blandy
dc603a0a97 Bug 1060093: Report cloned scripts to Debugger. r=billm 2014-11-07 10:29:21 -08:00
Ryan VanderMeulen
beecc739b3 Merge inbound to m-c. a=merge 2014-11-07 13:24:00 -05:00
Carsten "Tomcat" Book
8a65bd2299 Backed out changeset 9fa06a2e1a98 (bug 1092156) for breaking nightly builds 2014-11-07 16:35:14 +01:00
Carsten "Tomcat" Book
659b5581e6 Backed out changeset f786dcb23eca (bug 1092156) 2014-11-07 16:34:22 +01:00
Carsten "Tomcat" Book
678d99da88 Merge mozilla-central to mozilla-inbound 2014-11-07 15:34:32 +01:00
Carsten "Tomcat" Book
96db62a207 Backed out changeset 206012ab9d08 (bug 1084651) for too much hazard failures 2014-11-07 15:31:23 +01:00
Carsten "Tomcat" Book
d36f80d22b Backed out changeset ebdebc9251be (bug 1084651) 2014-11-07 15:30:49 +01:00
Carsten "Tomcat" Book
01f9ccc33e Backed out changeset b34ff39fc966 (bug 1084651) 2014-11-07 15:30:47 +01:00
Carsten "Tomcat" Book
67396b4a70 Backed out changeset 94197c33cf82 (bug 1084651) 2014-11-07 15:30:45 +01:00
Carsten "Tomcat" Book
fbde18b5db Backed out changeset d1acde27d97e (bug 1084651) 2014-11-07 15:30:39 +01:00
Aleksandar Zlicic
86ef17d881 Bug 1095524 - IonMonkey MIPS: Implement unboxNonDouble methods and ma_sw(Register data, BaseIndex &address). r=rankov 2014-11-07 16:44:38 +01:00
Branislav Rankov
022b2f196b Bug 1094857 - IonMonkey MIPS: Fix HeapReg restore in GenerateAsyncInterruptExit. r=luke 2014-11-06 16:48:53 +01:00
Brian Hackett
76c264c39b Bug 1094827 - Add missing argument to AutoCompartment. 2014-11-07 09:04:47 -07:00
Brian Hackett
9b5b622116 Bug 1094827 - Enter the right compartment before analyzing a script's arguments usage in the debugger, r=jorendorff. 2014-11-07 08:40:36 -07:00
Brian Hackett
26c09c2238 Bug 1092318 - Remove unsized array typed objects, r=nmatsakis. 2014-11-07 08:37:21 -07:00
Emanuel Hoogeveen
9752c431ab Bug 1084651 - Part 4b: Adjust and clarify some tests using gcslice(0). r=wmccloskey 2014-11-04 08:17:00 +01:00
Emanuel Hoogeveen
1238f8fb1c Bug 1084651 - Part 4: Adjust some tests to preserve previous behavior. r=wmccloskey 2014-10-21 11:50:00 +02:00
Emanuel Hoogeveen
e33aeac022 Bug 1084651 - Part 3: Tighten up the bounds of SliceBudget to work as a budget should. r=wmccloskey 2014-11-04 07:34:00 +01:00
Emanuel Hoogeveen
7fa233b1b9 Bug 1084651 - Part 2: Clean up SliceBudget and require explicitly choosing between TimeBudget and WorkBudget. r=wmccloskey r=mccr8 2014-10-22 14:13:00 +02:00
Emanuel Hoogeveen
c065e6ad18 Bug 1084651 - Part 1: Thread SliceBudget through several functions to choose the budget type at the source. r=billm 2014-11-06 10:11:00 +01:00
Lars T Hansen
7aa3146845 Bug 1095282 - eagerly define Atomics only when the class will be provided. r=jandem 2014-11-07 12:07:06 +01:00
Tooru Fujisawa
2f23e597fb Bug 1092522 - Update XDR_BYTECODE_VERSION pattern and support bug 1066322 documentation in make_opcode_doc.py. r=Waldo 2014-11-06 19:10:00 +01:00
Boris Zbarsky
cec37cb8ce Bug 1089050 part 4. Strengthen the asserts in UpdateExistingSetPropCallStubs now that the stronger asserts should hold. r=jandem 2014-11-06 23:41:45 -05:00
Boris Zbarsky
ecb9fb8707 Bug 1089050 part 3. Remove now-unnecesary old* arguments to TryAttachSetAccessorPropStub and its callees. r=jandem 2014-11-06 23:41:42 -05:00
Boris Zbarsky
3773e1600a Bug 1089050 part 2. Move TryAttachSetPropStub to before we actually perform the set. r=jandem
This way we don't end up guarding on the post-set shape, which may differ from the pre-set shape and thus always fail the guard.
2014-11-06 23:41:39 -05:00
Boris Zbarsky
b7dda4b3d1 Bug 1089050 part 1. Split apart the attachment of property set IC stubs into separate functions for value properties and accessor properties in Baseline r=jandem
The property addition stub needs to know both the before and after state to
detect the property add, and as far as I can tell the slot write stub wants to
know the TI info for after the set, but the accessor stubs just need to know
the before state.  For now we're just splitting up the two codepaths with no
other behavior changes.
2014-11-06 23:41:35 -05:00
Wes Kocher
c1aacfb986 Merge m-c to inbound a=merge 2014-11-06 19:08:13 -08:00
Wes Kocher
7ec75772bd Merge fx-team to m-c a=merge 2014-11-06 18:26:36 -08:00
Boris Zbarsky
0381435644 Bug 1094544. Use [Exposed=System] some more instead of hardcoding binding bits in xpc::InitGlobalObject. r=bholley 2014-11-06 10:54:38 -05:00
Benjamin Bouvier
f3e0074aff Bug 1094261: SIMD: Simplify testSIMD.js; r=luke 2014-11-06 11:59:22 +01:00
Benjamin Bouvier
afb857ac06 Bug 1094261: SIMD: Have lane accessors return Signed and signMask return Signed in asm.js; r=luke 2014-11-06 11:59:17 +01:00