Commit Graph

18 Commits

Author SHA1 Message Date
roytam1 f3297ff565 import changes from `dev' branch of rmottola/Arctic-Fox:
- Bug 1161802 part 1 - Add FullscreenChanged callback in WidgetListener. r=roc (caee485f4)
- Bug 1058712, e10s, support for copy image command, r=ehsan,mconley (42d1bcc2c)
- Bug 1122090 - Make ContentHelper take a LayoutDeviceIntPoint instead of an nsIntPoint. r=botond (21588cadb)
- Bug 1122090 - Send the allowed behaviour notification to APZ for touch blocks when touch-action is enabled. r=botond (5bb0aad4a)
- remove unneeded include (b77797920)
- Add wheel transaction support to APZ. (bug 1142866 part 1, r=kats) (a4ed2150a)
- End APZ wheel transactions when the mouse moves out of frame. (bug 1142866 part 2, r=kats,botond) (b26b0eb89)
- Add APZ support for test.mousescroll callbacks. (bug 1142866 part 3, r=kats) (424ef3ad7)
- Add helper for applying async transforms to widget input events. (bug 1143567 part 1, r=kats) (221cf7b02)
- Ensure input events account for APZ transforms on Gtk. (bug 1143567 part 2, r=kats) (a62991076)
- Allow synthetic input events to be dispatched asynchronously. (bug 1146243, r=kats) (0878aac4e)
- Bug 1120300 - Export WritingModes.h as mozilla/WritingModes.h. r=jfkthame (67838dec2)
- Bug 1075670 - Make event.screen[XY] work in content processes (r=smaug,kats,tn,joshmoz) (7c800e2a1)
- Bug 1150563 - Intermittent test_compartments.js | test_measure - [test_measure : 125] At least 10ms counted for built-in statistics (0) - false == true;r=yoric (72ce9c7fc)
- Bug 1143847 - Fix bogus asserts in x64 Assembler::finish(). r=sunfish (36aecaf48)
- pointer style (a1a5a7b0f)
- Bug 1148232 - OdinMonkey: Mark x86 disassembler code as MOZ_COLD and use MOZ_RELEASE_ASSERT r=luke (346cf1fdd)
- Bug 1148232 - OdinMonkey: Update an asm.js error message r=luke (98c72b0b1)
- Bug 1148232 - OdinMonkey: Update tests to avoid using legacy syntax. r=luke (d212510f3)
- Bug 1148232 - OdinMonkey: Misc CheckArrayAccess cleanups r=luke (e5cda1cf0)
- pointer style (23135ba24)
- Bug 1148232 - OdinMonkey: Always put asm.js heap alignment masks just before their accesses r=luke (d604adf5d)
- pointer style (9a5d58741)
- Bug 1148232 - IonMonkey: Delete unused code r=luke (ea5bc5edc)
- pointer style (73be379e1)
- Bug 1143704 part 1 - Make Emit1/Emit2 return bool instead of ptrdiff_t. r=luke (2ca42caa9)
- pointer style (eb30078f0)
- Bug 1143704 part 2 - Make Emit3/EmitCall/EmitBackPatchOp return bool instead of ptrdiff_t. r=jorendorff (7275c56af)
- Bug 1143704 part 3 - Make EmitLoopHead return bool instead of ptrdiff_t. r=shu (aff098096)
- Bug 1143704 part 4 - Turn Emit1 into a BytecodeEmitter method. r=bhackett (5ca0356ba)
-  Bug 1143704 part 5 - Add a cx member to BytecodeEmitter. r=Waldo (8ce42c388)
- Bug 1143704 part 6 - Move more functions into BytecodeEmitter. r=efaust (b26f60b2f)
- pointer style (39e0e76ab)
- Bug 1143704 part 7 - Move more functions into BytecodeEmitter. r=bhackett (7397bc2e5)
- pointer style (f08664ab1)
- Bug 1143704 part 8 - Move more functions into BytecodeEmitter. r=luke (2b0411545)
- pointer style (5042217ea)
- Bug 1143704 part 9 - Move more functions into BytecodeEmitter. r=shu (97501236a)
- pointer style (4248e54fa)
- Bug 1143704 part 10 - Move more functions into BytecodeEmitter. r=efaust (cd1fcb6a4)
- pointer style (06026238e)
- Bug 1143704 part 11 - Move more functions into BytecodeEmitter. r=jorendorff (300cdd416)
- Bug 1145491 part 1. Only do the fast path for JSOP_BINDGNAME when the script doesn't have a polluted global. r=luke,jandem (75d663d20)
- Bug 1145491 part 2. Only do the fast path for JSOP_GETGNAME when the script doesn't have a polluted global. r=luke,jandem (776bb0b37)
- Bug 1145491 part 3. Only do the fast path for JSOP_SETGNAME and JSOP_STRICTSETGNAME when the script doesn't have a polluted global. r=luke,jandem (dfc5781e2)
- Bug 537013 - Make the find bar exist on a per-tab basis. r=dao (cf361fd57)
- Bug 1145491 part 4. Emit JSOP_IMPLICITTHIS for JSOP_GETGNAME as well, because otherwise bareword calls in polluted-global scripts won't work right. r=luk (2a4c829e2)
- Bug 1145491 part 5. Fix up various other places that check for JSOP_GET/SETNAME without checking for the GNAME versions too. r=luke (08ebda6b5)
- pointer style (dbdd1393a)
- Bug 1145491 part 6. Fix script cloning to propagate the polluted-global-scope state to the lambda templates in the script. r=luke (a0c85b629)
- pointer style (906b885ff)
- Bug 1145491 part 7. Stop checking compileAndGo before emitting GNAME ops. r=luke (33e64a432)
2020-04-27 17:35:47 +08:00
roytam1 44d5f1a6a9 import change from rmottola/Arctic-Fox:
- initialize webp with different mode depending on endianness (c47ba6f6e)
- pointer style (09a5f12ee)
- Bug 1139983 - Fail the alloc if the nursery is full in NoGC (a85408eef)
- Bug 1135963. Allow JS_InitializePropertiesFromCompatibleNativeObject to deal with objects that have different prototypes. (ec8d1799b)
- Bug 1066233 - Part 1: Parser suppoert for ES6 ClassExpressions. (04e536bb6)
- Bug 1066233 - Part 2: Emitter support for ES6 ClassExpressions. (7e141d412)
- Bug 1066233 - Part 3: Reflect.parse support for ES6 ClassExpressions. (30595e6df)
- Bug 1066233 - Followup: Address a forgotten review comment. (836b26f59)
- Bug 1066233 - Tests. (5df23d2e6)
- Bug 1143106 - Fix construction of singleton objects during parsing when unboxed objects are in use (1749494c6)
2019-05-21 11:02:01 +08:00
roytam1 38409ecc56 import change from rmottola/Arctic-Fox:
- Bug 1144802 part 1. Add a JSOP_GIMPLICITTHIS which acts like JSOP_IMPLICITTHIS when the script hasPollutedGlobalScope and JSOP_UNDEFINED otherwise. (7b0f4bf1f)
- Bug 1144802 part 2. Add JIT and interpreter fast paths for JSOP_GIMPLICITTHIS when the script doesn't have a polluted scope. (7ed943ea9)
- Bug 1144802 part 3. Output JSOP_GIMPLICITTHIS whenever we have a JSOP_GETNAME in call context and don't know for a fact that we need an implicit this. (5b77362cc)
- Bug 1144802 part 4. Stop returning true from ByteCodeEmitter::needsImplicitThis based on the compileAndGo flag. (3961fb79d)
- Bug 1144802 part 5. Flag eval scripts as having a polluted scopechain when inside a with scope. (59c83ceb0)
- Bug 1144802 part 6. Remove the scopechain walk in BytecodeEmitter::needsImplicitThis, since consumers should now set hasPollutedGlobalScope as needed. (9df2cdacd)
- Bug 1144802 part 7. Remove the scopechain walk in the FunctionBox constructor, since consumers should now set hasPollutedGlobalScope as needed. (4c271aff8)
- Bug 1144802 part 8. Drop the scopechain member from GlobalSharedContext, since it's not needed anymore. (dc58199c2)
- Bug 1336791 - Allow readelf to print types without parentheses. (Fix FreeBSD) (cef15d006)
- pointer style (95722a23a)
- Bug 974418 - Fix a TSan race involving the double-elements flag on template objects. (e5eb524b6)
- pointer style fix and cleanup (2c44d9120)
- Bug 1143802 - Forward jit level information to profiler frontend. (3eefdde2b)
- pointer style (8c639a731)
- Bug 1143860 - Add column number to PCToLineNumber. (7cdb37ad9)
- Bug 1143860 - Deduplicate tracked optimizations when streaming the profile. (2c13cb5fe)
- Bug 1145440 - Ship constant names for tracked strategy and outcomes in the profile JSON instead of slightly longer form strings. (3b8cfa5b5)
- Bug 1142669 part 6 - Don't inline scripts that are known to inline a lot of code. (73bcdf96d)
2019-05-14 07:01:35 +08:00
roytam1 d3e5fc8cf6 import change from rmottola/Arctic-Fox:
- more pointerstyle to apply patches (bfb888a02)
- Bug 1144331 - Assert that gray buffering does not depend on isMarking (775d1d6b3)
- Bug 1144789 - Strongly type GrayBufferState enum and move to GCRuntime (48db96a71)
- pointer style (8e1f6b47f)
- Bug 1144794 - Move markBufferedGrayRoots to the GCRuntime (82a65b5d4)
- Bug 1144811 - Inline the start and end buffering gray roots methods on GCMarker (e5fa2fa45)
- Bug 1144817 - Move hasBufferedGrayRoots to GCRuntime (360528a61)
- Bug 1144832 - Move grayBufferState manipulation out of GCMarker (aae607d5b)
- Bug 1144834 - Move resetBufferedGrayRoots to GCRuntime (c80e490e3)
- Bug 1144920 - Move gray buffer clearing out of GCMarker (99495ce33)
- Bug 1144925 - Buffer gray roots using a CallbackTracer instead of the GCMarker (faae3bca3)
- Bug 1144931 - Move gray buffering code to RootMarking.cpp (c279e36bd)
- Bug 1144369 - Add a GC phase to track time spent buffering gray roots (e05c2eece)
- Bug 1142669 part 1 - Fix inliningMaxCallerBytecodeLength to return the correct value. (d5e4d1a84)
- Bug 1129977 - Fix bogus MarkOffThreadNurseryObjects assert when post-barrier verifier is used. (4d204fb5e)
- pointer style (8a3a7e129)
- pointer style (f6db66131)
- Bug 1142669 part 2 - Lower the script inlining size limit if off-thread compilation is not available. (ce4e3c5e6)
- Bug 1142669 part 3 - Limit the total inlined bytecode size to avoid excessive inlining. (a57fab6e2)
- Bug 1142669 part 4 - Fix some inlining issues and inline scripts with loops. (777fb2ec6)
- Bug 1142669 followup - Move OffThreadCompilationAvailable definition outside namespace block. (c4fd10799)
- Bug 1142669 part 5 - Lower inliningMaxCallerBytecodeLength from 10000 to 1500. (9f1c704a2)
- pointer style (d70a2a7be)
- Bug 1144743 part 1. Add a hasPollutedGlobalScope flag to scripts. (da965507f)
- Bug 1144743 part 2. Add an option to JS::CompileOptions for hasPollutedGlobalScope. (df6324dd4)
- Bug 1144743 part 3. Set hasPollutedGlobalScope when we're compiling scripts we know will be executed with a non-global scope without cloning them. (c2f264683)
- Bug 1144743 part 4. Set the hasPollutedGlobalScope flag correctly when compiling functions. (39fff6585)
- Bug 1144743 part 5. Set the hasPollutedGlobalScope flag correctly when cloning functions. (738f1d18a)
- Bug 1144743 part 6. Set the hasPollutedGlobalScope flag correctly when executing scripts. (b05d04d63)
2019-05-07 21:18:18 +08:00
roytam1 81d2deb5ab import change from rmottola/Arctic-Fox:
- pointer style (b6253e08b)
- pointer style again (9a39bc621)
- even more pointer style... (f28b6f2c4)
- Bug 1066234 - Part 1: Parser support for 'extends' in ES6 Classes. (7782e671d)
- Bug 1066234 - Part 2: Implement JSOP_CLASSHERITAGE. (d29afcf6d)
- Bug 1066234 - Part 3: Refactor js::CloneFunctionObject to take a proto argument. (0cc6f6048)
- Bug 1066234 - Part 4: Implement JSOP_FUNWITHPROTO. (2e0c04103)
- Bug 1066234 - Part 5: Implement JSOP_OBJWITHPROTO. (2f3980885)
- Bug 1066234 - Part 6: Emitter support for 'extends' in ES6 Classes. (361d75fb4)
- Bug 1066234 - Tests. (c06dccce7)
- Bug 1066238 - Part 1: Parser support for static class methods. (53315d021)
- Bug 1066238 - Part 2: Emitter support for static class methods. (3dc069679)
- Bug 1066238 - Tests. (78470ee78)
- Bug 1142296. Remove the parent argument from NewObjectWithGivenProto (plus adaptations for Goanna) (918202ddd)
- Bug 1142304. Remove the parent argument from NewObjectWithGivenTaggedProto. (036d97369)
2019-04-18 11:01:28 +08:00
roytam1 6e57ba34e3 import change from rmottola/Arctic-Fox:
- Bug 1142282 part 2. Remove the parent argument of NewNativeObjectWithGivenTaggedProto. (171e86a6a)
- Bug 1142282 part 3. Remove the parent argument of NewNativeObjectWithClassProto. (723605cc3)
- some pointer style (2436f031a)
- Bug 1134146 - Use whole cell store buffer entries for unboxed object updates (a787eb06e)
- Bug 1140888 - Make sure Ion code depending on unboxed layouts is invalidated when unboxed objects are converted to natives (bed2de826)
- Bug 1141379 - Remove unboxed layouts from the per-compartment list they are threaded through while we are still on the main thread (829535fec)
- Bug 1134969. Make DeepCloneObjectLiteral correctly handle setLastProperty failures. (2c4fc9847)
- some pointer style stuff (74ab89f4f)
- Bug 1135897 - Use unboxed objects for JSON objects and constant literals embedded in scripts (80f88401d)
- Bug 1143244: return false instead of nullptr, in failure case within js::XDRObjectLiteral(). (0f8e58801)
2019-04-13 10:22:45 +08:00
roytam1 8cefb25cb4 re-apply following changes:
- Bug 1130679: IonMonkey: Make it possible to guard on type changes/bailouts (ecec18313)
- Bug 1066229 - Part 5: Emitter support for basic ES6 ClassStatements. (e2a3cc979)
- Bug 1135423 - Use unboxed objects for object literals where possible, clean up object literal creation and property initialization code (1d9e381c2)
- Bug 1138265 - TraceLogger: Throw error when trying to enable in AsmJS (64c799042)
2019-02-08 15:24:34 +08:00
roytam1 c5e7d96fb3 re-apply rev 94617d85eb5ab3369bb44b099be3c6c4174fe6f6 2019-02-08 15:00:21 +08:00
roytam1 8fa1300bcd reverting rmottola/Arctic-Fox changes in order to bisect memory leak and greasemonkey issue:
- Bug 1136925 part 1. Stop passing a parent to JS_CloneObject (02806f3cb)
- Bug 1136925 part 2. Stop passing a parent to Wrapper::New. (1d51cbd34)
- Bug 1136925 part 3. Stop passing parents to js::NewProxyObject. (dc13db8da)
- Bug 1136925 part 4. Stop passing parents to ProxyObject::New. (e2d30e340)
- Bug 1130679: IonMonkey: Make it possible to guard on type changes/bailouts (ecec18313)
- Bug 1136980 part 1. Get rid of JS_SetParent uses in DOM/XPConnect. (5cad9c256)
- Bug 1136980 part 2. Remove JS_SetParent, even though we have a CLOSED TREE (96cf58c85)
- Bug 1066229 - Part 5: Emitter support for basic ES6 ClassStatements. (e2a3cc979)
- Bug 1135423 - Use unboxed objects for object literals where possible, clean up object literal creation and property initialization code (1d9e381c2)
- Bug 1137523 part 2 - Unprefix a few js_* functions I forgot in part 1 (e6beaf0d8)
- Bug 1135816 - Handle unboxed object receivers when compiling getter/setter calls in baseline/Ion (82233087e)
- Bug 1138265 - TraceLogger: Throw error when trying to enable in AsmJS (64c799042)
- Bug 1113369, part 1 - Introduce JS::ObjectOpResult and use it in js::StandardDefineProperty. (15663c476)
- Bug 1113369, part 1½ - Avoid regressing error messages by adding obj to the ObjectOpResult methods that could throw a TypeError. (e063faf08)
- Bug 1113369, part 2 - js::SetArrayLength ObjectOpResult support. (cf8326017)
- Bug 1113369, part 3 - [[DefineOwnProperty]] ObjectOpResult support. (e16605a90)
- Bug 1113369, part 4 - [[Set]] ObjectOpResult support. (6f94604d4)
- Bug 1077002 - Give a better error message when showModalDialog is used (18d8ecc12)
- Bug 1135792. Stop assuming that every binding for a global with a non-worker descriptor is a binding for Window. (dd0260c12)
- Bug 1135810. Add more explicit checks for whether a descriptor wants Xrays or not instead of assuming that Xrays are desired if and only if descriptor.workers is false. (17ef71544)
- Bug 1050456 - Part 1: Prevent prerendered pages from showing the slow script dialog (173044922)
- Bug 1050456 - Part 2: Add a nsGlobalWindow::GetIsPrerendered helper (ac680a5f7)
hopefully we can re-apply them later.
2019-02-08 12:19:14 +08:00
roytam1 ebf780272b import changes from rmottola/Arctic-Fox:
- Bug 1137523 part 2 - Unprefix a few js_* functions I forgot in part 1 (e6beaf0d8)
- Bug 1135816 - Handle unboxed object receivers when compiling getter/setter calls in baseline/Ion (82233087e)
2019-02-01 20:36:49 +08:00
roytam1 702e897b00 import changes from rmottola/Arctic-Fox:
- Bug 1136925 part 1. Stop passing a parent to JS_CloneObject (02806f3cb)
- Bug 1136925 part 2. Stop passing a parent to Wrapper::New. (1d51cbd34)
- Bug 1136925 part 3. Stop passing parents to js::NewProxyObject. (dc13db8da)
- Bug 1136925 part 4. Stop passing parents to ProxyObject::New. (e2d30e340)
- Bug 1130679: IonMonkey: Make it possible to guard on type changes/bailouts (ecec18313)
- Bug 1136980 part 1. Get rid of JS_SetParent uses in DOM/XPConnect. (5cad9c256)
- Bug 1136980 part 2. Remove JS_SetParent, even though we have a CLOSED TREE (96cf58c85)
- Bug 1066229 - Part 5: Emitter support for basic ES6 ClassStatements. (e2a3cc979)
- Bug 1135423 - Use unboxed objects for object literals where possible, clean up object literal creation and property initialization code (1d9e381c2)
2019-01-31 11:24:41 +08:00
roytam1 9f3e30f71b import changes from rmottola/Arctic-Fox:
- change some pointer style, or patches do not apply (0de8fac13)
- Bug 1137523 - Unprefix most js_* functions. (16507a434)
2019-01-29 10:29:22 +08:00
roytam1 3d819c1eaf import changes from rmottola/Arctic-Fox:
- Bug 1101903 - Part 1: Convert SharedContext::strict to a method. (c419cb895)
- Bug 1101903 - Part 2: Allow parsing and emitting strict mode code in smaller than script-sized units. (d00819026)
- Bug 1124362 - Allow strict-reserved names to be method names. (6fd24146f)
- Bug 1066227 - Part 1: Create a clean way to create lexical bindings at initalizer sites. (2305b65c6)
- Bug 1066227 - Part 2: Rename objectLiteral() propertyList() in preparation for classes. (e53b9cf12)
- Bug 1066227 - Part 3: Parser support for basic ES6 ClassStatements (Nightly Only). (5ff4cb3b9)
- Bug 1066227 - Part 4: Reflect.parse support for ClassStatements (a67bae8a3)
- Bug 1066227 - Tests. (ebe27243e)
- Bug 1066229 - Part 1: Create a clean way to emit lexical initializers (2d4900e5b)
- Bug 1066229 - Part 2: Factor EmitPropertyList() out of EmitObject(). (09b97b557)
- Bug 1066229 - Part 3: Create JSOP_INITLOCKEDDPROP, which adds non-configurable non-writable non-enumerable properties. (80d4961b4)
- Bug 1066229 - Part 4: Create JSOP_INITHIDDENPROP, which adds non-enumerable properties. (1c79190e4)
- Bug 1066229 - Follow up: Enable |let| in ecma_6/Class/ in browser JS reftests. (12a117456)
- Bug 1066229 - Tests. (8577d220a)
- Bug 1066229 - Tests. (957f4fead)
2019-01-23 11:35:44 +08:00
janekptacijarabaci 7aaedab9c0 Fix arrow function lexical arguments binding, allow rest + arguments
Issue #1547
2018-07-25 09:39:14 +08:00
Pale Moon a8b90051d3 Implement ** exponentiation operator.
Parser and Baseline JIT.
2018-07-25 09:37:45 +08:00
Pale Moon 7f53aebc16 Align for(let x=n ; ; ) loops with the finalized ES6 spec.
This resolves #1432.
2018-07-25 09:26:37 +08:00
Pale Moon 563619e5f0 Remove support for non-standard let expressions, part 1: code.
Tag #773.
2018-07-25 06:27:04 +08:00
Moonchild baf46a6bf1 Merge pull request #1 from mozilla/esr38: Esr38 upstream pull 2018-07-24 23:04:07 +08:00