8e4f48388c600edd5ee5292b014cedb0b8f7672f: Bug 1136226 - Implement compares for 8x16 and 16x8 SIMD types. r=sunfish
Jakob Stoklund Olesen <jolesen@mozilla.com> - Tue, 31 May 2016 09:00:19 -0700 - rev 340746
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1136226 - Implement compares for 8x16 and 16x8 SIMD types. r=sunfish Since SSE doesn't have unsigned comparisons, add a bias vector and use the signed comparisons instead, just like we do for the 32x4 unsigned vectors. Use 'defineReuseInput' even when SIMD input and output types differ. This is fine now since the register allocator uses a single Simd128 class for all SIMD registers.
e5479106a7ab7033580c4114d96cd5d0d3c062d2: Bug 1136226 - Add general shuffle support for 8x16 and 16x8 shuffles. r=bbouvier
Jakob Stoklund Olesen <jolesen@mozilla.com> - Tue, 31 May 2016 09:00:19 -0700 - rev 340745
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1136226 - Add general shuffle support for 8x16 and 16x8 shuffles. r=bbouvier This instruction is used when the shuffle indexes are not compile time constants. Give the register allocator permission to spill the index arguments to GeneralShuffle instructions. There can be up to 16 of them, and they can't all be registers. Move visitSimdGeneralShuffle into the x86-specific lowering code since it has special register allocation requirements for 8-bit lanes.
7be2feba720f43f6c5df652f9908f7a8c8a39be1: Bug 1136226 - Implement shuffle for 8x16 and 16x8 SIMD types. r=sunfish
Jakob Stoklund Olesen <jolesen@mozilla.com> - Tue, 31 May 2016 09:00:19 -0700 - rev 340744
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1136226 - Implement shuffle for 8x16 and 16x8 SIMD types. r=sunfish When SSSE3 is available, two pshufb instructions can be combined to form any shuffle. Old machines without SSSE3 bounce the two vectors through the stack.
018f7422c57ec03d65f58802e4cbb6ee2fc25418: Bug 1136226 - Implement swizzle for 8x16 and 16x8 SIMD types. r=sunfish
Jakob Stoklund Olesen <jolesen@mozilla.com> - Tue, 31 May 2016 09:00:19 -0700 - rev 340743
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1136226 - Implement swizzle for 8x16 and 16x8 SIMD types. r=sunfish When we have SSSE3 available, the pshufb instruction can perform any byte-wise swizzle. Without SSSE3, fall back to using byte-wise loads and stores to simulate the swizzle. This applies to CPUs from before 2006.
5472bbbb12079f4ca2da7fb8048fd0787ef6f200: Bug 1136226 - Implement select for 8x16 and 16x8 SIMD types. r=sunfish
Jakob Stoklund Olesen <jolesen@mozilla.com> - Tue, 31 May 2016 09:00:19 -0700 - rev 340742
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1136226 - Implement select for 8x16 and 16x8 SIMD types. r=sunfish Remove a normalizing shift of the boolean selector. Boolean SIMD types are guaranteed to be represented as all-ones.
fa42a25f4124566158f812c0b796360dd239f814: Bug 1136226 - Handle SIMD global variables for x86 / x64. r=bbouvier
Jakob Stoklund Olesen <jolesen@mozilla.com> - Tue, 31 May 2016 09:00:19 -0700 - rev 340741
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1136226 - Handle SIMD global variables for x86 / x64. r=bbouvier
a17bc6fab38f7beaffa3608ca8ec4a7d660a2bd4: Bug 1136226 - Implement Bool8x16.splat and Bool16x8.splat. r=bbouvier
Jakob Stoklund Olesen <jolesen@mozilla.com> - Tue, 31 May 2016 09:00:19 -0700 - rev 340740
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1136226 - Implement Bool8x16.splat and Bool16x8.splat. r=bbouvier The scalar argument to this operation is expanded into MIR as either -1 or 0 in an Int32, so the 4-lane splat produces the correct result for 8-lane and 16-lane splats too. Either an all-zeroes vector or an all-ones vector.
4117a5326ded2a0f6543da9070e7c68c0ba0a172: Bug 1136226 - Implement SIMD saturating arithmetic. r=bbouvier
Jakob Stoklund Olesen <jolesen@mozilla.com> - Tue, 31 May 2016 09:00:19 -0700 - rev 340739
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1136226 - Implement SIMD saturating arithmetic. r=bbouvier
43882729d51c668fc0e57a7941cfbdc25664422d: Bug 1136226 - Implement 8x16 SIMD multiplies. r=bbouvier
Jakob Stoklund Olesen <jolesen@mozilla.com> - Tue, 31 May 2016 09:00:18 -0700 - rev 340738
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1136226 - Implement 8x16 SIMD multiplies. r=bbouvier There are no 8x16 SSE multiply instructions, so expand these multiplies in terms of 16x8 multiplies.
6ea5fb073f4be87096890646bf58061c90b22fcd: Bug 1136226 - Implement 8x16 SIMD shift operators. r=bbouvier
Jakob Stoklund Olesen <jolesen@mozilla.com> - Tue, 31 May 2016 09:00:18 -0700 - rev 340737
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1136226 - Implement 8x16 SIMD shift operators. r=bbouvier These operations don't have SSE instructions, so express them in terms of 16x8 shifts in MSimdShift::AddLegalized.
25dc50270a77116f3e679f451e143b0031382cdd: Bug 1136226 - Implement 16x8 SIMD shift operators. r=bbouvier
Jakob Stoklund Olesen <jolesen@mozilla.com> - Tue, 31 May 2016 09:00:18 -0700 - rev 340736
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1136226 - Implement 16x8 SIMD shift operators. r=bbouvier These all have corresponding SSE instructions. The 8x16 shifts don't have SSE instructions, so they will be added by the next commit.
69ce6e7501086e2492274e352752eee5eeea447d: Bug 1136226 - Binary functions for small integer SIMD types. r=bbouvier
Jakob Stoklund Olesen <jolesen@mozilla.com> - Tue, 31 May 2016 09:00:18 -0700 - rev 340735
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1136226 - Binary functions for small integer SIMD types. r=bbouvier - Rename LSimdBinaryBitwiseX4 to LSimdBinaryBitwise and use it for all types. - Add pmullw to the assembler for 16x8 multiplies. Don't implement 8x16 multiplies just yet. There are no SSE instructions for that operation, so they need to be synthesied from 16x8 multiplies and shuffles.
62c28a8f7ebf20927d97f809313d3e0c567a064a: Bug 1136226 - Unary functions for small integer SIMD types. r=bbouvier
Jakob Stoklund Olesen <jolesen@mozilla.com> - Tue, 31 May 2016 09:00:18 -0700 - rev 340734
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1136226 - Unary functions for small integer SIMD types. r=bbouvier - Implement 'not' and 'neg' for 8x16 and 16x8 types. - Rename some 'bitwiseFooX4' masm functions to 'bitwiseFooSimd128'. - Rename the zeroInt32x4 and zeroFloat32x4 to zeroSimd128{Int,Float}. - Add support for the paddb/paddw and psubb/psubw SSE2 instructions in the assembler.
b45c0a42f19cc86dbeb58f0f0282b788fe132d46: Bug 1136226 - Implement MSimdInsertElement for small integer types. r=bbouvier
Jakob Olesen <jolesen@mozilla.com> - Tue, 31 May 2016 09:00:18 -0700 - rev 340733
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1136226 - Implement MSimdInsertElement for small integer types. r=bbouvier Use vpinsrw to insert 16x8 lanes. This instruction is available since SSE2, so it can be used unconditionally. Move visitSimdInsertElement into x86-specific code in order to set the proper register allocation constraints.
f0779cf0f83dc854e97c87466f7109d9b264b48c: Bug 1136226 - Implement MSimdExtractElement for small integer types. r=bbouvier
Jakob Olesen <jolesen@mozilla.com> - Tue, 31 May 2016 09:00:17 -0700 - rev 340732
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1136226 - Implement MSimdExtractElement for small integer types. r=bbouvier Move visitSimdExtractElement into x86-specific code in order to set proper register allocation requirements.
1df0548311c90e35e86104dc387bd3ab81dd797f: Bug 1136226 - Provide shared NYI implementations of SIMD visitors. r=bbouvier
Jakob Stoklund Olesen <jolesen@mozilla.com> - Tue, 31 May 2016 09:00:17 -0700 - rev 340731
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1136226 - Provide shared NYI implementations of SIMD visitors. r=bbouvier Since most targets don't implement SIMD and don't enable the generation of SIMD instructions, it makes sense to provide a default implementation of the SIMD visitor functions that simply crashes with an NYI error. Remove the many identical copies of these visitors from the non-SIMD targets.
e5f0088f8ca2ebd070812488f4296e81ca111ad2: Bug 1276887 - webidl "Deprecated" keyword should work in workers, r=smaug
Andrea Marchesini <amarchesini@mozilla.com> - Tue, 31 May 2016 17:46:52 +0200 - rev 340730
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1276887 - webidl "Deprecated" keyword should work in workers, r=smaug
7b0b4456432570977c5e289dd4d0abd309bf1ced: Bug 1211647. Use ::ShowWindow instead of ::ShowWindowPos for toplevel windows widgets that can't take focus. r=jimm
Mason Chang <mchang@mozilla.com> - Thu, 26 May 2016 16:34:21 -0700 - rev 340729
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1211647. Use ::ShowWindow instead of ::ShowWindowPos for toplevel windows widgets that can't take focus. r=jimm
a267539a757f0af6bed82e8c7511d5defe1a645c: Bug 1046205. Fix depth pitch read out of bounds. r=bas
Mason Chang <mchang@mozilla.com> - Tue, 31 May 2016 08:28:42 -0700 - rev 340728
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1046205. Fix depth pitch read out of bounds. r=bas
a50192055cef917faf8a8b6d5a9a17dae3c4c371: Bug 1276874 - Add spec URLs in File and Blob webidl files, r=smaug
Andrea Marchesini <amarchesini@mozilla.com> - Tue, 31 May 2016 17:23:57 +0200 - rev 340727
Push 1183 by raliiev@mozilla.com at Mon, 05 Sep 2016 20:01:49 +0000
Bug 1276874 - Add spec URLs in File and Blob webidl files, r=smaug
(0) -300000 -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 +100000 tip