searching for reviewer(tcampbell)
a5c1755178d94134fa11b24227bf3cb964978ede: Bug 1558556 - swap cx->helperThread() nullchecks to check for js::ContextKind::HelperThread r=tcampbell
Kristen Wright <kwright@mozilla.com> - Fri, 14 Jun 2019 17:58:28 +0000 - rev 478951
Push 113448 by apavel@mozilla.com at Sat, 15 Jun 2019 10:07:35 +0000
Bug 1558556 - swap cx->helperThread() nullchecks to check for js::ContextKind::HelperThread r=tcampbell Added isHelperThreadContext() to check that cx runs on a helper thread, similar to isMainThreadContext(). Replaced null-checks meant to look for helper threads with isHelperThreadContext(), leaving instances where helperthread() is checked in order to access the actual helper thread. Differential Revision: https://phabricator.services.mozilla.com/D34937
855d557b82a20e1ed87af46bceac3b918534d37e: Bug 1558801 - Change PrivateScriptData consts array to BigInt array. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Wed, 12 Jun 2019 16:18:22 +0000 - rev 478635
Push 113434 by shindli@mozilla.com at Thu, 13 Jun 2019 22:05:34 +0000
Bug 1558801 - Change PrivateScriptData consts array to BigInt array. r=tcampbell Since bug 1535137 the consts array only stores `BigIntValues` so we can change it to a `BigInt` array. This will also make it easier to fix bug 1535154. Differential Revision: https://phabricator.services.mozilla.com/D34712
8de5da3de4ba4b0a467a47c5b6cf0bb1d6f83bfa: Bug 1558179: Canonicalize all NaNs on hardware that does not generate canonical NaNs natively r=tcampbell
Iain Ireland <iireland@mozilla.com> - Tue, 11 Jun 2019 15:16:40 +0000 - rev 478534
Push 113423 by aciure@mozilla.com at Thu, 13 Jun 2019 03:53:27 +0000
Bug 1558179: Canonicalize all NaNs on hardware that does not generate canonical NaNs natively r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D34403
411b7238682916ba85768dc0d872ac417fb4ba65: Bug 1548908: Remove IsCanonical and simplify StructuredCloneReader r=tcampbell
Iain Ireland <iireland@mozilla.com> - Mon, 03 Jun 2019 15:59:29 +0000 - rev 478529
Push 113423 by aciure@mozilla.com at Thu, 13 Jun 2019 03:53:27 +0000
Bug 1548908: Remove IsCanonical and simplify StructuredCloneReader r=tcampbell IsCanonical was only used in StructuredCloneReader::CheckDouble. Two of CheckDouble's three uses already canonicalized the double before checking it, and the third *should* have already done so. Differential Revision: https://phabricator.services.mozilla.com/D29870
2953a85f6b5f5dd6f3820129b9394ead251369e8: Bug 1548908: Remove "well-known numbers" from JSRuntime r=tcampbell
Iain Ireland <iireland@mozilla.com> - Mon, 03 Jun 2019 15:59:25 +0000 - rev 478528
Push 113423 by aciure@mozilla.com at Thu, 13 Jun 2019 03:53:27 +0000
Bug 1548908: Remove "well-known numbers" from JSRuntime r=tcampbell Back when we first freed the lizard in 1998, it made sense to have copies of NaN/+Inf/-Inf living on the runtime, because Values didn't store doubles inline. That hasn't been true for a long time. This patch gets rid of those. Differential Revision: https://phabricator.services.mozilla.com/D29868
cfde75f084e0aa49788820863ee6660ea77b9261: Bug 1548908: Clean up JS::CanonicalizedDoubleValue r=tcampbell
Iain Ireland <iireland@mozilla.com> - Mon, 03 Jun 2019 15:59:17 +0000 - rev 478526
Push 113423 by aciure@mozilla.com at Thu, 13 Jun 2019 03:53:27 +0000
Bug 1548908: Clean up JS::CanonicalizedDoubleValue r=tcampbell 1. CanonicalizedDoubleValue should reuse the logic in CanonicalizeNaN. 2. Places that call DoubleValue(CanonicalizeNaN(d)) should just use CanonicalizedDoubleValue(d). Differential Revision: https://phabricator.services.mozilla.com/D29867
b82660f5a787496e23c17b50c1d3f6ae836293cc: Bug 1401624: Part 5: Change Value representation r=tcampbell,jwalden
Iain Ireland <iireland@mozilla.com> - Wed, 12 Jun 2019 17:51:06 +0000 - rev 478514
Push 113423 by aciure@mozilla.com at Thu, 13 Jun 2019 03:53:27 +0000
Bug 1401624: Part 5: Change Value representation r=tcampbell,jwalden This patch is where the actual changes to our value representation happens. A few notes: 1. We did some weird macro tricks to work around a GCC bug with enums in bitfields. Those bitfields were only useful for poking at values in gdb, and the trick no longer worked with object-biased nanboxing, so I removed it. I also got rid of asDouble_, because it's no longer possible to read the double value right out of the enum without unboxing. 2. In the previous boxing scheme, there was a mechanical conversion between a JSValueType and a JSValueTag. That's no longer true, which is why the big conversion switches exist. 3. Waldo, you were included as a reviewer specifically to look at Value.h and make sure that our gross bit twiddling is just gross and not undefined. Differential Revision: https://phabricator.services.mozilla.com/D29055
098a1fc45a87d6fad7fac30b3857544c003790a6: Bug 1401624: Part 3: Convert store/loadDouble to box/unboxDouble r=tcampbell,mgaudet
Iain Ireland <iireland@mozilla.com> - Wed, 12 Jun 2019 18:30:12 +0000 - rev 478512
Push 113423 by aciure@mozilla.com at Thu, 13 Jun 2019 03:53:27 +0000
Bug 1401624: Part 3: Convert store/loadDouble to box/unboxDouble r=tcampbell,mgaudet In the past, we have been somewhat sloppy when storing / loading double values, because a boxed double and an unboxed double had the same representation. This is no longer true with object-biased NaN-boxing. This patch goes through and cleans up those cases. Differential Revision: https://phabricator.services.mozilla.com/D29053
1a488ead5ac5aa0ab6efcaac1568a87ae0c59eb3: Bug 1401624: Part 5: Change Value representation r=tcampbell,jwalden
Iain Ireland <iireland@mozilla.com> - Wed, 12 Jun 2019 15:56:52 +0000 - rev 478481
Push 113422 by aciure@mozilla.com at Wed, 12 Jun 2019 21:46:30 +0000
Bug 1401624: Part 5: Change Value representation r=tcampbell,jwalden This patch is where the actual changes to our value representation happens. A few notes: 1. We did some weird macro tricks to work around a GCC bug with enums in bitfields. Those bitfields were only useful for poking at values in gdb, and the trick no longer worked with object-biased nanboxing, so I removed it. I also got rid of asDouble_, because it's no longer possible to read the double value right out of the enum without unboxing. 2. In the previous boxing scheme, there was a mechanical conversion between a JSValueType and a JSValueTag. That's no longer true, which is why the big conversion switches exist. 3. Waldo, you were included as a reviewer specifically to look at Value.h and make sure that our gross bit twiddling is just gross and not undefined. Differential Revision: https://phabricator.services.mozilla.com/D29055
a74585a7dec4d91c8cfc53975bea5a4b41f30ec8: Bug 1544386 part 1 - Call ElementAccessHasExtraIndexedProperty instead of ArrayPrototypeHasIndexedProperty when inlining array natives. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Wed, 08 May 2019 17:48:26 +0000 - rev 477620
Push 113366 by ncsoregi@mozilla.com at Thu, 06 Jun 2019 22:41:06 +0000
Bug 1544386 part 1 - Call ElementAccessHasExtraIndexedProperty instead of ArrayPrototypeHasIndexedProperty when inlining array natives. r=tcampbell This simplifies the code a bit because ElementAccessHasExtraIndexedProperty checks for length-overflow and sparse-indexes so the callers don't have to do that anymore. Differential Revision: https://phabricator.services.mozilla.com/D29486
5585ac78378a9ad68dc1cf3ae64ce27d7a8da83c: Bug 1395509 - Track malloc memory associated with JSScripts r=tcampbell
Jon Coppeard <jcoppeard@mozilla.com> - Fri, 24 May 2019 15:45:33 +0100 - rev 475795
Push 113229 by jcoppeard@mozilla.com at Tue, 28 May 2019 10:15:50 +0000
Bug 1395509 - Track malloc memory associated with JSScripts r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D32500
ec5f175f4f2c30c9446920856cba63ed7d2df99c: Bug 1551796 part 11 - Move more JitScript code into JitScript.cpp. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Fri, 24 May 2019 12:03:13 +0000 - rev 475387
Push 113208 by cbrindusan@mozilla.com at Fri, 24 May 2019 21:57:39 +0000
Bug 1551796 part 11 - Move more JitScript code into JitScript.cpp. r=tcampbell JitScript::initICEntriesAndBytecodeTypeMap is still in BaselineIC.cpp because it depends on things defined there (like FallbackStubAllocator) and I think it's not unreasonable to keep it there. Differential Revision: https://phabricator.services.mozilla.com/D32303
87aaa29b2fff6efbf469828597fc9ddffac4f3ef: Bug 1551796 part 10 - Move JitScript to js::jit namespace. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Fri, 24 May 2019 12:02:51 +0000 - rev 475386
Push 113208 by cbrindusan@mozilla.com at Fri, 24 May 2019 21:57:39 +0000
Bug 1551796 part 10 - Move JitScript to js::jit namespace. r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D32299
05c094ef90cacb194775085a9b75eefa64bfffe1: Bug 1551796 part 9 - Merge FillBytecodeTypeMap into JitScript::initICEntries. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Fri, 24 May 2019 12:02:38 +0000 - rev 475385
Push 113208 by cbrindusan@mozilla.com at Fri, 24 May 2019 21:57:39 +0000
Bug 1551796 part 9 - Merge FillBytecodeTypeMap into JitScript::initICEntries. r=tcampbell We now do a single pass over the bytecode instead of two. Register pressure of the combined code might be a bit worse but it also eliminates some duplication so I think it's worth it. Differential Revision: https://phabricator.services.mozilla.com/D32298
5ee66c20f298a8b2346633889c33007973ea2e5a: Bug 1551796 part 8 - Rename ShouldReleaseTypes to ShouldDiscardJitScripts. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Fri, 24 May 2019 07:34:04 +0000 - rev 475363
Push 113208 by cbrindusan@mozilla.com at Fri, 24 May 2019 21:57:39 +0000
Bug 1551796 part 8 - Rename ShouldReleaseTypes to ShouldDiscardJitScripts. r=tcampbell "Discard" instead of "Release" for consistency with ShouldDiscardBaselineCode. Differential Revision: https://phabricator.services.mozilla.com/D32294
56f1c5f12b842eee919cac798ea1655b61c77b21: Bug 1551796 part 7 - Improve the JitScript comment a bit. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Fri, 24 May 2019 07:33:47 +0000 - rev 475362
Push 113208 by cbrindusan@mozilla.com at Fri, 24 May 2019 21:57:39 +0000
Bug 1551796 part 7 - Improve the JitScript comment a bit. r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D32293
547d1940a27f1b41cac2d62af27c259b24dda555: Bug 1551796 part 6 - Use DefaultInitializeElements to initialize JitScript's StackTypeSet array. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Fri, 24 May 2019 07:33:27 +0000 - rev 475361
Push 113208 by cbrindusan@mozilla.com at Fri, 24 May 2019 21:57:39 +0000
Bug 1551796 part 6 - Use DefaultInitializeElements to initialize JitScript's StackTypeSet array. r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D32292
c0f95fe29f8a1174698bda506a07c2a3b5e8110c: Bug 1551796 part 5 - Make JitScript::destroy static. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Fri, 24 May 2019 07:33:12 +0000 - rev 475360
Push 113208 by cbrindusan@mozilla.com at Fri, 24 May 2019 21:57:39 +0000
Bug 1551796 part 5 - Make JitScript::destroy static. r=tcampbell The destroy() call in JSScript::finalize was moved into DestroyJitScripts for consistency with BaselineScript and IonScript. Differential Revision: https://phabricator.services.mozilla.com/D32290
71c4f7fd04f06c928a44738269bbd7615d110bd3: Bug 1551796 part 4 - Remove unnecessary hasJitScript() checks in BaselineInspector. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Thu, 23 May 2019 10:46:27 +0000 - rev 475192
Push 113196 by aciure@mozilla.com at Thu, 23 May 2019 22:38:40 +0000
Bug 1551796 part 4 - Remove unnecessary hasJitScript() checks in BaselineInspector. r=tcampbell These have been unnecessary since the ICScript introduction: when performing the arguments analysis we have a JitScript but not a BaselineScript. Depends on D32103 Differential Revision: https://phabricator.services.mozilla.com/D32126
e81b72b586942a7a5c34fd5defd80772a031b45f: Bug 1551796 part 3 - Merge ICScript into JitScript. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Thu, 23 May 2019 07:55:15 +0000 - rev 475191
Push 113196 by aciure@mozilla.com at Thu, 23 May 2019 22:38:40 +0000
Bug 1551796 part 3 - Merge ICScript into JitScript. r=tcampbell ICScript and JitScript had the same lifetime already, but this eliminates a malloc/free and some extra dereferences (especially for accessing ICEntries from Baseline Interpreter code). This is just the minimal set of changes to make it easier to review. Follow-up changes should: * Move (now) JitScript methods to JitScript.cpp * Merge FillBytecodeTypeMap with JitScript::initICEntries so we do just a single bytecode walk. * Move JitScript from the js namespace to js::jit. Differential Revision: https://phabricator.services.mozilla.com/D32103
330f42984cf4eee38d12a87bb960984aef20e8e9: Bug 1551796 part 2 - Move JitScript from vm/TypeInference.* to jit/JitScript.*. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Wed, 22 May 2019 20:04:25 +0000 - rev 475189
Push 113196 by aciure@mozilla.com at Thu, 23 May 2019 22:38:40 +0000
Bug 1551796 part 2 - Move JitScript from vm/TypeInference.* to jit/JitScript.*. r=tcampbell Some of the TypeInference-related static methods were kept in TypeInference-inl.h and TypeInference.cpp because of various dependencies. Also, methods like JitScript::MonitorAssign probably don't belong on JitScript anyway, but for now this seems reasonable. Differential Revision: https://phabricator.services.mozilla.com/D31982
2ac16f08196aeff1bd91533c75803b79e7e2d211: Bug 1551796 part 1 - Rename TypeScript to JitScript. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Thu, 23 May 2019 07:28:00 +0000 - rev 475188
Push 113196 by aciure@mozilla.com at Thu, 23 May 2019 22:38:40 +0000
Bug 1551796 part 1 - Rename TypeScript to JitScript. r=tcampbell Also JSScript::makeTypes => JSScript::createJitScript for consistency with code elsewhere. Differential Revision: https://phabricator.services.mozilla.com/D31755
872dcb42c95b35b355e26b033d041badaf2d3a53: Bug 1552470 part 6 - Remove TypeScript::MonitorBytecodeType overload that doesn't take script/pc. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Thu, 23 May 2019 07:11:38 +0000 - rev 475159
Push 113193 by dvarga@mozilla.com at Thu, 23 May 2019 16:04:39 +0000
Bug 1552470 part 6 - Remove TypeScript::MonitorBytecodeType overload that doesn't take script/pc. r=tcampbell This method was a bit of a footgun because cx->currentScript is quite slow. It seems better to make this very explicit in the callers. Differential Revision: https://phabricator.services.mozilla.com/D31611
416d5e498b7c421b338030b78d50c0265cbfb886: Bug 1552470 part 5 - Rename remaining js::TypeMonitorResult overload to TypeScript::MonitorBytecodeTypeSlow. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Thu, 23 May 2019 07:11:19 +0000 - rev 475158
Push 113193 by dvarga@mozilla.com at Thu, 23 May 2019 16:04:39 +0000
Bug 1552470 part 5 - Rename remaining js::TypeMonitorResult overload to TypeScript::MonitorBytecodeTypeSlow. r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D31610
4301cff1b48a51a40d25c13e62d5d3de00c07842: Bug 1552470 part 4 - Fold some js::TypeMonitorResult overloads into TypeScript::MonitorBytecodeType. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Thu, 23 May 2019 07:11:07 +0000 - rev 475157
Push 113193 by dvarga@mozilla.com at Thu, 23 May 2019 16:04:39 +0000
Bug 1552470 part 4 - Fold some js::TypeMonitorResult overloads into TypeScript::MonitorBytecodeType. r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D31609
18e0bceb579d3533d5fe710fef5e1e9e7ea41480: Bug 1552470 part 3 - Assert we have a JOF_TYPESET op in TypeMonitorResult. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Thu, 23 May 2019 07:10:47 +0000 - rev 475156
Push 113193 by dvarga@mozilla.com at Thu, 23 May 2019 16:04:39 +0000
Bug 1552470 part 3 - Assert we have a JOF_TYPESET op in TypeMonitorResult. r=tcampbell The "stubs used in compound opcodes" comment is obsolete (refered to some old opcodes and JaegerMonkey). This caught one problem, the interpreter called this for JSOP_RESUME. Differential Revision: https://phabricator.services.mozilla.com/D31608
69226e812472e2dfb948ced635d2e5ed0eadd0dc: Bug 1552470 part 2 - Rename some TypeScript methods. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Thu, 23 May 2019 07:10:17 +0000 - rev 475155
Push 113193 by dvarga@mozilla.com at Thu, 23 May 2019 16:04:39 +0000
Bug 1552470 part 2 - Rename some TypeScript methods. r=tcampbell SetThis -> MonitorThisType SetArgument -> MonitorArgType Monitor -> MonitorBytecodeType This is consistent with the thisTypes/argTypes/bytecodeTypes accessors and will avoid confusion when we rename TypeScript to JitScript. Differential Revision: https://phabricator.services.mozilla.com/D31607
92fe84979a3e538a525110491648a1150f71e9f6: Bug 1552470 part 1 - Make ThisTypes/ArgTypes/BytecodeTypes non-static methods. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Thu, 23 May 2019 07:09:42 +0000 - rev 475154
Push 113193 by dvarga@mozilla.com at Thu, 23 May 2019 16:04:39 +0000
Bug 1552470 part 1 - Make ThisTypes/ArgTypes/BytecodeTypes non-static methods. r=tcampbell It makes the code a bit more natural. The patch also changes these methods to take an AutoSweepTypeScript. This is more correct and safe than what we did, because these methods return the TypeSet. Differential Revision: https://phabricator.services.mozilla.com/D31606
86e4c72840f20e7b524c001ef6b960f0bf9410ac: Bug 1552316 - Disconnect initWithEnclosingScope from functionbox r=tcampbell
Matthew Gaudet <mgaudet@mozilla.com> - Tue, 21 May 2019 13:47:50 +0000 - rev 474758
Push 113171 by aiakab@mozilla.com at Tue, 21 May 2019 21:56:33 +0000
Bug 1552316 - Disconnect initWithEnclosingScope from functionbox r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D31537
80dfbfe943a1942b7697eaee338e7723d4a5ebfe: Bug 1552316 - Don't rely on functionbox for initFromLazyFunction r=tcampbell
Matthew Gaudet <mgaudet@mozilla.com> - Tue, 21 May 2019 13:47:44 +0000 - rev 474757
Push 113171 by aiakab@mozilla.com at Tue, 21 May 2019 21:56:33 +0000
Bug 1552316 - Don't rely on functionbox for initFromLazyFunction r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D31536
3f5d50173ba4045ad8224a7b164a1b91ec23d253: Bug 1552316 - Don't rely on functionbox in initWithEnclosingParseContext and initFiledInitializer r=tcampbell
Matthew Gaudet <mgaudet@mozilla.com> - Tue, 21 May 2019 13:47:40 +0000 - rev 474756
Push 113171 by aiakab@mozilla.com at Tue, 21 May 2019 21:56:33 +0000
Bug 1552316 - Don't rely on functionbox in initWithEnclosingParseContext and initFiledInitializer r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D31535
da19f9f642fb4b63bcec2b7c51ca8bf2d2c0508c: Bug 1552316 - Use functionbox directly in ASMJS r=tcampbell
Matthew Gaudet <mgaudet@mozilla.com> - Tue, 21 May 2019 13:47:36 +0000 - rev 474755
Push 113171 by aiakab@mozilla.com at Tue, 21 May 2019 21:56:33 +0000
Bug 1552316 - Use functionbox directly in ASMJS r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D31534
8e11986fdfd9f78ceb98e9517fc51dff2e687a2b: Bug 1552316 - Use FunctionBox in ASTSerializer::function r=tcampbell
Matthew Gaudet <mgaudet@mozilla.com> - Tue, 21 May 2019 13:47:31 +0000 - rev 474754
Push 113171 by aiakab@mozilla.com at Tue, 21 May 2019 21:56:33 +0000
Bug 1552316 - Use FunctionBox in ASTSerializer::function r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D31533
fb78510f1805cfbbbcb06524429e124ede56e6f3: Bug 1552316 - Use FunctionBox in ModuleBuilder r=tcampbell
Matthew Gaudet <mgaudet@mozilla.com> - Tue, 21 May 2019 13:45:36 +0000 - rev 474753
Push 113171 by aiakab@mozilla.com at Tue, 21 May 2019 21:56:33 +0000
Bug 1552316 - Use FunctionBox in ModuleBuilder r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D31532
2d814e205a86f49c4d7437b87b19975ddef974d5: Bug 1552316 - Hoist some queries from function into FunctionBox r=tcampbell
Matthew Gaudet <mgaudet@mozilla.com> - Tue, 21 May 2019 13:45:21 +0000 - rev 474752
Push 113171 by aiakab@mozilla.com at Tue, 21 May 2019 21:56:33 +0000
Bug 1552316 - Hoist some queries from function into FunctionBox r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D31530
043e6de8e69deecc0c802134b7e14534de9b3b55: Bug 1552316 - Remove unused FunctionScope::Data::zone() r=tcampbell
Matthew Gaudet <mgaudet@mozilla.com> - Tue, 21 May 2019 13:45:01 +0000 - rev 474751
Push 113171 by aiakab@mozilla.com at Tue, 21 May 2019 21:56:33 +0000
Bug 1552316 - Remove unused FunctionScope::Data::zone() r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D31529
9faf24ffeaaf5f1e38fca1c6630716aeca7982bf: Bug 1541404 part 34 - Fix BaselineDebugModeOSR to also recompile interpreter frames. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Thu, 16 May 2019 08:56:53 +0000 - rev 474117
Push 113134 by ncsoregi@mozilla.com at Thu, 16 May 2019 22:01:33 +0000
Bug 1541404 part 34 - Fix BaselineDebugModeOSR to also recompile interpreter frames. r=tcampbell This matches what we do for C++-interpreter frames in CollectInterpreterStackScripts and SkipInterpreterFrameEntries. It's necessary for Interpreter => JIT OSR to work correctly. This fixes remaining jit-test failures with --blinterp-eager Differential Revision: https://phabricator.services.mozilla.com/D31050
6c6307b33331b070584d259ddefdc5439d56d759: Bug 1541404 part 30 - Fix some debugger issues. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Wed, 15 May 2019 14:24:26 +0000 - rev 473950
Push 113119 by dvarga@mozilla.com at Wed, 15 May 2019 21:35:00 +0000
Bug 1541404 part 30 - Fix some debugger issues. r=tcampbell With this we pass all debugger jit-tests. Differential Revision: https://phabricator.services.mozilla.com/D30901
6eea4e18512a82b11c1f8d49a2c084ffecf325ff: Bug 1541404 part 29 - Perform arguments analysis when creating the TypeScript. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Wed, 15 May 2019 06:36:39 +0000 - rev 473906
Push 113116 by rgurzau@mozilla.com at Wed, 15 May 2019 16:03:00 +0000
Bug 1541404 part 29 - Perform arguments analysis when creating the TypeScript. r=tcampbell The code in NewArgumentsObject was wrong because the interpreter code calling it also relies on the analysis having been performed. Differential Revision: https://phabricator.services.mozilla.com/D30899
e00d479b6a92650637b9347d9ae18bd8da3b9493: Bug 1541404 part 28 - Fix ARM issues. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Wed, 15 May 2019 07:42:50 +0000 - rev 473905
Push 113116 by rgurzau@mozilla.com at Wed, 15 May 2019 16:03:00 +0000
Bug 1541404 part 28 - Fix ARM issues. r=tcampbell 1. We can't use loadValue for JSOP_DOUBLE because on ARM that might use LDRD or LDM and these are not guaranteed to support unaligned loads. Fix is to add loadUnalignedValue that always uses plain 32-bit loads. 2. DebugTrapHandler's fast path for the interpreter used "lr" as second scratch register, clobbering the return address. The setSecondScratchRegister mechanism prevents this. Differential Revision: https://phabricator.services.mozilla.com/D30879
c4b0bd61050bb7f3117c2a46ed740fc5d61d0700: Bug 1541404 part 29 - Perform arguments analysis when creating the TypeScript. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Tue, 14 May 2019 10:36:17 +0000 - rev 473757
Push 113107 by csabou@mozilla.com at Tue, 14 May 2019 16:12:57 +0000
Bug 1541404 part 29 - Perform arguments analysis when creating the TypeScript. r=tcampbell The code in NewArgumentsObject was wrong because the interpreter code calling it also relies on the analysis having been performed. Differential Revision: https://phabricator.services.mozilla.com/D30899
760cc10c63b0a19b2553560c69d32a91f0472074: Bug 1541404 part 28 - Fix ARM issues. r=tcampbell
Jan de Mooij <jdemooij@mozilla.com> - Tue, 14 May 2019 10:36:17 +0000 - rev 473756
Push 113107 by csabou@mozilla.com at Tue, 14 May 2019 16:12:57 +0000
Bug 1541404 part 28 - Fix ARM issues. r=tcampbell 1. We can't use loadValue for JSOP_DOUBLE because on ARM that might use LDRD or LDM and these are not guaranteed to support unaligned loads. Fix is to add loadUnalignedValue that always uses plain 32-bit loads. 2. DebugTrapHandler's fast path for the interpreter used "lr" as second scratch register, clobbering the return address. The setSecondScratchRegister mechanism prevents this. Differential Revision: https://phabricator.services.mozilla.com/D30879
cb00aa26b3484a2fd795facb8d5df24d2249c64f: Bug 1550616 - Don't #include EitherParser.h in BytecodeCompilation.h when a simple forward-declaration will do. r=tcampbell
Jeff Walden <jwalden@mit.edu> - Sun, 12 May 2019 22:15:51 +0000 - rev 473562
Push 113089 by malexandru@mozilla.com at Mon, 13 May 2019 08:28:31 +0000
Bug 1550616 - Don't #include EitherParser.h in BytecodeCompilation.h when a simple forward-declaration will do. r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D30579
0fde18f5d16f490f98190180b30861aced722ccf: Bug 1550616 - Move ModuleBuilder into its own header so that module object-related data structures don't depend on EitherParser.h (and therefore all of parsing and tokenizing). r=tcampbell
Jeff Walden <jwalden@mit.edu> - Sun, 12 May 2019 22:15:49 +0000 - rev 473561
Push 113089 by malexandru@mozilla.com at Mon, 13 May 2019 08:28:31 +0000
Bug 1550616 - Move ModuleBuilder into its own header so that module object-related data structures don't depend on EitherParser.h (and therefore all of parsing and tokenizing). r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D30578
0e910372a9568d4a0d1070e0f78e787de42cac8e: Bug 1550616 - Move Token-related types to a new frontend/Token.h header so needing something like TokenPos doesn't demand a dependency on TokenStream.h. (ParseNode.h is a notable instance of this.) r=tcampbell
Jeff Walden <jwalden@mit.edu> - Sun, 12 May 2019 22:15:47 +0000 - rev 473560
Push 113089 by malexandru@mozilla.com at Mon, 13 May 2019 08:28:31 +0000
Bug 1550616 - Move Token-related types to a new frontend/Token.h header so needing something like TokenPos doesn't demand a dependency on TokenStream.h. (ParseNode.h is a notable instance of this.) r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D30577
78749757be96d07200e582ff178b1d1d1686fae6: Bug 1550616 - Make SharedContext.h not #include TokenStream.h now that it doesn't depend on it. r=tcampbell
Jeff Walden <jwalden@mit.edu> - Sun, 12 May 2019 22:14:29 +0000 - rev 473559
Push 113089 by malexandru@mozilla.com at Mon, 13 May 2019 08:28:31 +0000
Bug 1550616 - Make SharedContext.h not #include TokenStream.h now that it doesn't depend on it. r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D30576
c706eab3c639f68720b3f3d634b29424da7f6360: Bug 1550616 - Make FunctionBox::setEnd take the actual uint32_t end, not TokenStreamAnyChars&, and add ParserBase::setFunctionEndFromCurrentToken that calls it passing the correct value, to eliminate another SharedContext.h dependency on... r=tcampbell
Jeff Walden <jwalden@mit.edu> - Sun, 12 May 2019 22:14:11 +0000 - rev 473558
Push 113089 by malexandru@mozilla.com at Mon, 13 May 2019 08:28:31 +0000
Bug 1550616 - Make FunctionBox::setEnd take the actual uint32_t end, not TokenStreamAnyChars&, and add ParserBase::setFunctionEndFromCurrentToken that calls it passing the correct value, to eliminate another SharedContext.h dependency on... r=tcampbell ...TokenStream.h. r=tcampbell Depends on D30574 Differential Revision: https://phabricator.services.mozilla.com/D30575
703783d5484d173508e8a13d41fde8d121149211: Bug 1550616 - Move GeneralTokenStreamChars::setFunctionStart to GeneralParser::setFunctionStartAtCurrentToken in Parser.cpp, eliminating one reason SharedContext.h depends on TokenStream.h. r=tcampbell
Jeff Walden <jwalden@mit.edu> - Sun, 12 May 2019 22:13:53 +0000 - rev 473557
Push 113089 by malexandru@mozilla.com at Mon, 13 May 2019 08:28:31 +0000
Bug 1550616 - Move GeneralTokenStreamChars::setFunctionStart to GeneralParser::setFunctionStartAtCurrentToken in Parser.cpp, eliminating one reason SharedContext.h depends on TokenStream.h. r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D30574
f1a3220fc10b57240e57bde4bfeba9745013dffe: Bug 1550616 - Don't #include EitherParser.h in BytecodeCompilation.h when a simple forward-declaration will do. r=tcampbell
Jeff Walden <jwalden@mit.edu> - Sun, 12 May 2019 01:39:24 +0000 - rev 473539
Push 113086 by cbrindusan@mozilla.com at Sun, 12 May 2019 09:32:44 +0000
Bug 1550616 - Don't #include EitherParser.h in BytecodeCompilation.h when a simple forward-declaration will do. r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D30579
b435e9bb58cc70ce432f6f3fc837fa318d35a637: Bug 1550616 - Move ModuleBuilder into its own header so that module object-related data structures don't depend on EitherParser.h (and therefore all of parsing and tokenizing). r=tcampbell
Jeff Walden <jwalden@mit.edu> - Sun, 12 May 2019 01:39:15 +0000 - rev 473538
Push 113086 by cbrindusan@mozilla.com at Sun, 12 May 2019 09:32:44 +0000
Bug 1550616 - Move ModuleBuilder into its own header so that module object-related data structures don't depend on EitherParser.h (and therefore all of parsing and tokenizing). r=tcampbell Differential Revision: https://phabricator.services.mozilla.com/D30578