22471aa9be27f7897495d4bb4b2d6fd1900e620b: Backed out 4 changesets (bug 1517025) for multiple failures e.g.: toolkit/components/telemetry/tests/unit/test_PingAPI.js CLOSED TREE
Margareta Eliza Balazs <ebalazs@mozilla.com> - Mon, 21 Jan 2019 16:13:56 +0200 - rev 514688
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Backed out 4 changesets (bug 1517025) for multiple failures e.g.: toolkit/components/telemetry/tests/unit/test_PingAPI.js CLOSED TREE Backed out changeset 1e173178e49f (bug 1517025) Backed out changeset c29889dea969 (bug 1517025) Backed out changeset 48c7d643d2fa (bug 1517025) Backed out changeset 419cb778d531 (bug 1517025)
053747e3a369cc4ec41ec4e6b2620489e655ca61: Bug 1517480 - Stop using graytext for labels in the "report a problem" subpanel. r=johannh
Dão Gottwald <dao@mozilla.com> - Mon, 21 Jan 2019 11:56:21 +0000 - rev 514687
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Bug 1517480 - Stop using graytext for labels in the "report a problem" subpanel. r=johannh Differential Revision: https://phabricator.services.mozilla.com/D16870
dc8020199c4bb3be745ba753f017c213a1fc90b5: Bug 1521212 - Unset visibility of the reset button instead of setting it to visible. r=Gijs
Emilio Cobos Álvarez <emilio@crisal.io> - Mon, 21 Jan 2019 12:58:41 +0000 - rev 514686
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Bug 1521212 - Unset visibility of the reset button instead of setting it to visible. r=Gijs CSS visibility doesn't work like `display`. `visibility: visible` elements in a `visibility: hidden` subtree still get shown. Differential Revision: https://phabricator.services.mozilla.com/D17068
2dd26100e3117b221eff2a19c83e50db3bd11bc3: Bug 1521319 - Disable selfXSS prevention for browser_jsterm_middle_click_paste.js r=nchevobbe
Sebastian Hengst <archaeopteryx@coole-files.de> - Mon, 21 Jan 2019 09:37:18 +0000 - rev 514685
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Bug 1521319 - Disable selfXSS prevention for browser_jsterm_middle_click_paste.js r=nchevobbe Differential Revision: https://phabricator.services.mozilla.com/D17101
847eaa28d60b831b20b8271efb447b3887d412af: Backed out changeset 1df92f5b3d7d (bug 1521319) for eslint failure in modified file.
Sebastian Hengst <archaeopteryx@coole-files.de> - Mon, 21 Jan 2019 14:30:35 +0200 - rev 514684
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Backed out changeset 1df92f5b3d7d (bug 1521319) for eslint failure in modified file.
c311812c530c03588f7ac2fac4fd9f6c38103529: Backed out 2 changesets (bug 1394420) for failing testAtomicOperations.cpp, ESling and jit failures CLOSED TREE
Ciure Andrei <aciure@mozilla.com> - Mon, 21 Jan 2019 14:26:34 +0200 - rev 514683
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Backed out 2 changesets (bug 1394420) for failing testAtomicOperations.cpp, ESling and jit failures CLOSED TREE Backed out changeset b2ffeeac7326 (bug 1394420) Backed out changeset 2f5be1913934 (bug 1394420)
8c452bdd54f5d7b91322422c7955066ae7019f32: Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE
Razvan Maries <rmaries@mozilla.com> - Mon, 21 Jan 2019 13:41:52 +0200 - rev 514682
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Merge mozilla-central to mozilla-inbound. a=merge on a CLOSED TREE
2885dbea4efe7f400bef8f594c0798e8aab6bd01: Backed out changeset 9fedba33cfa3 (bug 1514396) for causing regression Bug 1521239, requested by jkt. CLOSED TREE
Margareta Eliza Balazs <ebalazs@mozilla.com> - Mon, 21 Jan 2019 14:21:30 +0200 - rev 514681
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Backed out changeset 9fedba33cfa3 (bug 1514396) for causing regression Bug 1521239, requested by jkt. CLOSED TREE
e9570ad88e6d4ac55d26342dca0ded559b8c2ff9: Bug 1519918 - Make nsFontFaceLoader::mFontFaceSet a weak reference. r=heycam
Emilio Cobos Álvarez <emilio@crisal.io> - Mon, 21 Jan 2019 11:10:26 +0000 - rev 514680
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Bug 1519918 - Make nsFontFaceLoader::mFontFaceSet a weak reference. r=heycam And start tracking the loader ASAP to be on the safe side. Both sides already take care of cleaning up pointers on destruction. Differential Revision: https://phabricator.services.mozilla.com/D16514
4c05fb631121d80c6c41a9b0ffcf3eeb9cd5459f: Bug 1519918 - Drop nsFontFaceLoader::mChannel more often. r=jfkthame
Emilio Cobos Álvarez <emilio@crisal.io> - Mon, 21 Jan 2019 10:39:07 +0000 - rev 514679
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Bug 1519918 - Drop nsFontFaceLoader::mChannel more often. r=jfkthame Doesn't look like the HTTP channel breaks the reference cycle at all, so do it when we know we're done with it. Differential Revision: https://phabricator.services.mozilla.com/D16510
b277b79a2e7c6c35b74026ad58b844dca3b7d01f: Bug 1519745 - Remove out of date comment in nsStyleSheetService::Init. r=emilio
Cameron McCormack <cam@mcc.id.au> - Mon, 21 Jan 2019 09:43:41 +0000 - rev 514678
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Bug 1519745 - Remove out of date comment in nsStyleSheetService::Init. r=emilio Differential Revision: https://phabricator.services.mozilla.com/D16427
1df92f5b3d7d6527b3ce0b4ef8850df5ee68cc19: Bug 1521319 - Disable selfXSS prevention for browser_jsterm_middle_click_paste.js r=nchevobbe
Sebastian Hengst <archaeopteryx@coole-files.de> - Mon, 21 Jan 2019 09:37:18 +0000 - rev 514677
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Bug 1521319 - Disable selfXSS prevention for browser_jsterm_middle_click_paste.js r=nchevobbe Differential Revision: https://phabricator.services.mozilla.com/D17101
b099ed392e48dc314699e15dd0341ef1cf11bab5: Bug 1521078 - Don't assemble include only .asm files. r=TD-Linux
Alex Chronopoulos <achronop@gmail.com> - Mon, 21 Jan 2019 11:23:42 +0000 - rev 514676
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Bug 1521078 - Don't assemble include only .asm files. r=TD-Linux Differential Revision: https://phabricator.services.mozilla.com/D16975
1e173178e49f41ecb99f5179308c0591b960ef6f: Bug 1517025 - Add crashtest with invalid URL r=kershaw
Valentin Gosu <valentin.gosu@gmail.com> - Mon, 21 Jan 2019 08:40:29 +0000 - rev 514675
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Bug 1517025 - Add crashtest with invalid URL r=kershaw Differential Revision: https://phabricator.services.mozilla.com/D16817
c29889dea969f8ccbce2f5a2a479f6468510e6a6: Bug 1517025 - Remove EXPECTED-FAIL for URL percent encoding tests r=kershaw
Valentin Gosu <valentin.gosu@gmail.com> - Mon, 21 Jan 2019 08:40:09 +0000 - rev 514674
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Bug 1517025 - Remove EXPECTED-FAIL for URL percent encoding tests r=kershaw Differential Revision: https://phabricator.services.mozilla.com/D16696
48c7d643d2fa9caf7ebe07831cb5d15fa7f82a76: Bug 1517025 - Change default pref URLs to localhost instead of %(server) r=Gijs
Valentin Gosu <valentin.gosu@gmail.com> - Mon, 21 Jan 2019 09:55:02 +0000 - rev 514673
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Bug 1517025 - Change default pref URLs to localhost instead of %(server) r=Gijs We now disallow the % sign in the hostname of a URL. If the app.normandy.api_url pref isn't set explicitly, it'll remain the default set in xpcshell/user.js: https://%(server)s/selfsupport-dummy/. As you can see, this one has a % sign in it; and the test will fail. Otherwise, the error we catch is not a NormandyApi.InvalidSignatureError, but NS_ERROR_MALFORMED_URI. Differential Revision: https://phabricator.services.mozilla.com/D16695
419cb778d5316033fc772898d2160e9998c6ee14: Bug 1517025 - Do not allow percent symbol in URL hostnames r=kershaw
Valentin Gosu <valentin.gosu@gmail.com> - Mon, 21 Jan 2019 08:39:34 +0000 - rev 514672
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Bug 1517025 - Do not allow percent symbol in URL hostnames r=kershaw Differential Revision: https://phabricator.services.mozilla.com/D16694
af184e29a54633ac5b8dc0a7726dd556676c243e: Merge mozilla-central to autoland. a=merge on a CLOSED TREE
Razvan Maries <rmaries@mozilla.com> - Mon, 21 Jan 2019 13:39:35 +0200 - rev 514671
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Merge mozilla-central to autoland. a=merge on a CLOSED TREE
b2ffeeac7326d673ff09474ce3007e84687c5a62: Bug 1394420 - Consolidate feeling-lucky atomics. r=froydnj
Lars T Hansen <lhansen@mozilla.com> - Thu, 11 Oct 2018 14:54:25 +0200 - rev 514670
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Bug 1394420 - Consolidate feeling-lucky atomics. r=froydnj With jitted primitives for racy atomic access in place, we can consolidate most C++ realizations of the atomic primitives into two headers, one for gcc/Clang and one for MSVC, that will be used as default fallbacks on non-tier-1 platforms. Non-tier-1 platforms can still implement their own atomics layer, as does MIPS already; we leave the MIPS code alone here.
2f5be1913934665cf692d3e43cadbc36f5448643: Bug 1394420 - jit-generate atomic ops to be called from c++. r=nbp, r=froydnj
Lars T Hansen <lhansen@mozilla.com> - Tue, 21 Aug 2018 21:13:12 +0200 - rev 514669
Push 1953 by ffxbld-merge at Mon, 11 Mar 2019 12:10:20 +0000
Bug 1394420 - jit-generate atomic ops to be called from c++. r=nbp, r=froydnj SpiderMonkey (and eventually DOM) will sometimes access shared memory from multiple threads without synchronization; this is a natural consequence of the JS memory model + JS/DOM specs. We have always had a hardware-specific abstraction layer for these accesses, to isolate code from the details of how unsynchronized / racy access is handled. This layer has been written in C++ and has several problems: - In C++, racy access is undefined behavior, and the abstraction layer is therefore inherently unsafe, especially in the presence of inlining, PGO, and clever compilers. (And TSAN will start complaining, too.) - Some of the compiler intrinsics that are used in the C++ abstraction layer are not actually the right primitives -- they assume C++, ie non-racy, semantics, and may not implement the correct barriers in all cases. - There are few guarantees that the synchronization implemented by the C++ primitives is actually compatible with the synchronization used by jitted code. - While x86 and ARM have 8-byte synchronized access (CMPXCHG8B and LDREXD/STREXD), some C++ compilers do not support their use well or at all, leading to occasional hardship for porting teams. This patch solves all these problems by jit-generating the racy access abstraction layer in the form of C++-compatible functions that: do not trigger UB in the C++ code; do not depend on possibly-incorrect intrinsics but instead always emit the proper barriers; are guaranteed to be JIT-compatible; and support x86 properly. Mostly this code is straightforward: each access function is a short, nearly prologue- and epilogue-less, sequence of instructions that performs a normal load or store or appropriately synchronized operation (CMPXCHG or similar). Safe-for-races memcpy and memmove are trickier but are handled by combining some C++ code with several jit-generated functions that perform unrolled copies for various block sizes and alignments. The performance story is not completely satisfactory: On the one hand, we don't regress anything because copying unshared-to-unshared we do not use the new primitives but instead the C++ compiler's optimized memcpy and standard memory loads and stores. On the other hand, performance with shared memory is lower than performance with unshared memory. TypedArray.prototype.set() is a good test case. When the source and target arrays have the same type, the engine uses a memcpy; shared memory copying is 3x slower than unshared memory for 100,000 8K copies (Uint8). However, when the source and target arrays are slightly different types (Uint8 vs Int8) the engine uses individual loads and stores, which for shared memory turns into two calls per byte being moved; in this case, shared memory is 127x slower than unshared memory. (All numbers on x64 Linux.) Can we live with the very significant slowdown in the latter case? It depends on the applications we envision for shared memory. Primarily, shared memory will be used as wasm heap memory, in which case most applications that need to move data will use all Uint8Array arrays and the slowdown is OK. But it is clearly a type of performance cliff. We can reduce the overhead by jit-generating more code, specifically code to perform the load, convert, and store in common cases. More interestingly, and simpler, we can probably use memcpy in all cases by copying first (fairly fast) and then running a local fixup. A bug should be filed for this but IMO we're OK with the current solution. (Memcpy can also be further sped up in platform-specific ways by generating cleverer code that uses REP MOVS or SIMD or similar.)
(0) -300000 -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 tip