skia2/tests/sksl/intrinsics
John Stiles eb68973c2f Disallow matrix ctors which overflow a column.
The GLSL spec allows matrix constructors containing vectors that would
split between multiple columns of the matrix. However, in practice, this
does not actually work well on a lot of GPUs!

- "cast not allowed", "internal error":
	Tegra 3
	Quadro P400
	GTX 660
	GTX 960
- Compiles, but generates wrong result:
	RadeonR9M470X
	RadeonHD7770

Since this isn't a pattern we expect to see in user code, we now report
it as an error at compile time. mat2(vec4) is treated as an exceptional
case and still allowed.

Change-Id: Id6925984a2d1ec948aec4defcc790a197a96cf86
Bug: skia:12443
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/449518
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-09-16 22:14:49 +00:00
..
AbsFloat.asm.frag Evaluate single-argument generic intrinsics at compile time. 2021-05-10 14:50:50 +00:00
AbsFloat.glsl Evaluate single-argument generic intrinsics at compile time. 2021-05-10 14:50:50 +00:00
AbsFloat.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
AbsInt.asm.frag Evaluate single-argument generic intrinsics at compile time. 2021-05-10 14:50:50 +00:00
AbsInt.glsl Evaluate single-argument generic intrinsics at compile time. 2021-05-10 14:50:50 +00:00
AbsInt.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Acos.asm.frag Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Acos.glsl Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Acos.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Acosh.asm.frag Add ES3 Angle and Trigonometry methods to sksl_public. 2021-08-13 20:57:44 +00:00
Acosh.glsl Add ES3 Angle and Trigonometry methods to sksl_public. 2021-08-13 20:57:44 +00:00
Acosh.metal Add ES3 Angle and Trigonometry methods to sksl_public. 2021-08-13 20:57:44 +00:00
All.asm.frag Optimize not() intrinsic. 2021-05-11 14:08:39 +00:00
All.glsl Optimize not() intrinsic. 2021-05-11 14:08:39 +00:00
All.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Any.asm.frag Optimize not() intrinsic. 2021-05-11 14:08:39 +00:00
Any.glsl Optimize not() intrinsic. 2021-05-11 14:08:39 +00:00
Any.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Asin.asm.frag Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Asin.glsl Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Asin.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Asinh.asm.frag Add ES3 Angle and Trigonometry methods to sksl_public. 2021-08-13 20:57:44 +00:00
Asinh.glsl Add ES3 Angle and Trigonometry methods to sksl_public. 2021-08-13 20:57:44 +00:00
Asinh.metal Add ES3 Angle and Trigonometry methods to sksl_public. 2021-08-13 20:57:44 +00:00
Atan.asm.frag Implement compile-time optimization for atan(). 2021-06-01 15:16:43 +00:00
Atan.glsl Implement compile-time optimization for atan(). 2021-06-01 15:16:43 +00:00
Atan.metal Implement compile-time optimization for atan(). 2021-06-01 15:16:43 +00:00
Atanh.asm.frag Add ES3 Angle and Trigonometry methods to sksl_public. 2021-08-13 20:57:44 +00:00
Atanh.glsl Add ES3 Angle and Trigonometry methods to sksl_public. 2021-08-13 20:57:44 +00:00
Atanh.metal Add ES3 Angle and Trigonometry methods to sksl_public. 2021-08-13 20:57:44 +00:00
BitCount.asm.frag Revert "Revert "Added more RelaxedPrecision decorations"" 2021-03-23 19:34:42 +00:00
BitCount.glsl Change sksl tests to avoid SPIR-V validation errors 2021-03-16 13:39:53 +00:00
BitCount.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Ceil.asm.frag Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Ceil.glsl Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Ceil.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
ClampFloat.asm.frag Implement compile-time optimization for clamp(). 2021-05-25 16:25:42 +00:00
ClampFloat.glsl Implement compile-time optimization for clamp(). 2021-05-25 16:25:42 +00:00
ClampFloat.metal Implement compile-time optimization for clamp(). 2021-05-25 16:25:42 +00:00
ClampInt.asm.frag Implement compile-time optimization for clamp(). 2021-05-25 16:25:42 +00:00
ClampInt.glsl Implement compile-time optimization for clamp(). 2021-05-25 16:25:42 +00:00
ClampInt.metal Implement compile-time optimization for clamp(). 2021-05-25 16:25:42 +00:00
Cos.asm.frag Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Cos.glsl Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Cos.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Cosh.asm.frag Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Cosh.glsl Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Cosh.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Cross.asm.frag Implement compile-time optimization for cross(). 2021-06-01 15:51:53 +00:00
Cross.glsl Implement compile-time optimization for cross(). 2021-06-01 15:51:53 +00:00
Cross.metal Implement compile-time optimization for cross(). 2021-06-01 15:51:53 +00:00
CrossNoInline.asm.frag Revert "Add RelaxedPrecision decoration to function-call temp vars." 2021-09-08 17:06:07 +00:00
CrossNoInline.glsl Mangle function names in GLSL. 2021-03-22 17:18:26 +00:00
CrossNoInline.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Degrees.asm.frag Optimize remaining simple 1-argument intrinsics. 2021-05-11 16:44:09 +00:00
Degrees.glsl Optimize remaining simple 1-argument intrinsics. 2021-05-11 16:44:09 +00:00
Degrees.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Determinant.asm.frag Implement determinant() in SkSL ES3 public API. 2021-08-19 15:27:10 +00:00
Determinant.glsl Implement determinant() in SkSL ES3 public API. 2021-08-19 15:27:10 +00:00
Determinant.metal Implement determinant() in SkSL ES3 public API. 2021-08-19 15:27:10 +00:00
DFdx.asm.frag Avoid mix-up between MAIN_COORDS and FRAGCOORD. 2021-08-18 20:11:19 +00:00
DFdx.glsl Avoid mix-up between MAIN_COORDS and FRAGCOORD. 2021-08-18 20:11:19 +00:00
DFdx.metal Avoid mix-up between MAIN_COORDS and FRAGCOORD. 2021-08-18 20:11:19 +00:00
DFdy.asm.frag Avoid mix-up between MAIN_COORDS and FRAGCOORD. 2021-08-18 20:11:19 +00:00
DFdy.glsl Avoid mix-up between MAIN_COORDS and FRAGCOORD. 2021-08-18 20:11:19 +00:00
DFdy.metal Avoid mix-up between MAIN_COORDS and FRAGCOORD. 2021-08-18 20:11:19 +00:00
Distance.asm.frag Implement compile-time optimization for distance(). 2021-05-26 14:11:58 +00:00
Distance.glsl Implement compile-time optimization for distance(). 2021-05-26 14:11:58 +00:00
Distance.metal Implement compile-time optimization for distance(). 2021-05-26 14:11:58 +00:00
Dot.asm.frag Implement compile-time optimization for dot(). 2021-05-26 15:05:08 +00:00
Dot.glsl Implement compile-time optimization for dot(). 2021-05-26 15:05:08 +00:00
Dot.metal Implement compile-time optimization for dot(). 2021-05-26 15:05:08 +00:00
Equal.asm.frag Optimize intrinsic vector comparisons of constants. 2021-05-06 14:00:27 +00:00
Equal.glsl Optimize intrinsic vector comparisons of constants. 2021-05-06 14:00:27 +00:00
Equal.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Exp2.asm.frag Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Exp2.glsl Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Exp2.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Exp.asm.frag Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Exp.glsl Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Exp.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
FaceForward.asm.frag Implement compile-time optimization for faceforward(). 2021-05-26 16:28:48 +00:00
FaceForward.glsl Implement compile-time optimization for faceforward(). 2021-05-26 16:28:48 +00:00
FaceForward.metal Implement compile-time optimization for faceforward(). 2021-05-26 16:28:48 +00:00
FindLSB.asm.frag Revert "Revert "Added more RelaxedPrecision decorations"" 2021-03-23 19:34:42 +00:00
FindLSB.glsl Change sksl tests to avoid SPIR-V validation errors 2021-03-16 13:39:53 +00:00
FindLSB.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
FindMSB.asm.frag Revert "Revert "Added more RelaxedPrecision decorations"" 2021-03-23 19:34:42 +00:00
FindMSB.glsl Change sksl tests to avoid SPIR-V validation errors 2021-03-16 13:39:53 +00:00
FindMSB.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
FloatBitsToInt.asm.frag Add floatBitsToInt family of ES3 intrinsics to SkSL public ES3. 2021-08-20 14:58:44 +00:00
FloatBitsToInt.glsl Add floatBitsToInt family of ES3 intrinsics to SkSL public ES3. 2021-08-20 14:58:44 +00:00
FloatBitsToInt.metal Add floatBitsToInt family of ES3 intrinsics to SkSL public ES3. 2021-08-20 14:58:44 +00:00
FloatBitsToUint.asm.frag Add floatBitsToInt family of ES3 intrinsics to SkSL public ES3. 2021-08-20 14:58:44 +00:00
FloatBitsToUint.glsl Add floatBitsToInt family of ES3 intrinsics to SkSL public ES3. 2021-08-20 14:58:44 +00:00
FloatBitsToUint.metal Add floatBitsToInt family of ES3 intrinsics to SkSL public ES3. 2021-08-20 14:58:44 +00:00
Floor.asm.frag Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Floor.glsl Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Floor.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Fma.asm.frag Revert "Revert "Added more RelaxedPrecision decorations"" 2021-03-23 19:34:42 +00:00
Fma.glsl Change sksl tests to avoid SPIR-V validation errors 2021-03-16 13:39:53 +00:00
Fma.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Fract.asm.frag Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Fract.glsl Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Fract.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Frexp.asm.frag Support swizzled out-params in SPIR-V intrinsic calls. 2021-09-08 18:19:13 +00:00
Frexp.glsl Migrate convertSwizzle to Swizzle::Make. 2021-02-19 21:26:58 +00:00
Frexp.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Fwidth.asm.frag Add fwidth intrinsic to public SkSL in ES3. 2021-09-16 01:56:32 +00:00
Fwidth.glsl Add fwidth intrinsic to public SkSL in ES3. 2021-09-16 01:56:32 +00:00
Fwidth.metal Add fwidth intrinsic to public SkSL in ES3. 2021-09-16 01:56:32 +00:00
GreaterThan.asm.frag Optimize intrinsic vector comparisons of constants. 2021-05-06 14:00:27 +00:00
GreaterThan.glsl Optimize intrinsic vector comparisons of constants. 2021-05-06 14:00:27 +00:00
GreaterThan.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
GreaterThanEqual.asm.frag Optimize intrinsic vector comparisons of constants. 2021-05-06 14:00:27 +00:00
GreaterThanEqual.glsl Optimize intrinsic vector comparisons of constants. 2021-05-06 14:00:27 +00:00
GreaterThanEqual.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
IntBitsToFloat.asm.frag Add floatBitsToInt family of ES3 intrinsics to SkSL public ES3. 2021-08-20 14:58:44 +00:00
IntBitsToFloat.glsl Add floatBitsToInt family of ES3 intrinsics to SkSL public ES3. 2021-08-20 14:58:44 +00:00
IntBitsToFloat.metal Add floatBitsToInt family of ES3 intrinsics to SkSL public ES3. 2021-08-20 14:58:44 +00:00
Inverse.asm.frag Simplify SPIR-V matrix construction logic. 2021-07-09 13:32:36 +00:00
Inverse.glsl Implement compile-time optimization for inverse(). 2021-05-27 13:57:00 +00:00
Inverse.metal Reland "Fix array-of-matrix/struct comparisons in Metal." 2021-08-10 21:05:20 +00:00
Inversesqrt.asm.frag Replace trio of XxxxLiteral types with a single Literal type. 2021-09-13 17:32:34 +00:00
Inversesqrt.glsl Optimize remaining simple 1-argument intrinsics. 2021-05-11 16:44:09 +00:00
Inversesqrt.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
IsInf.asm.frag Reland "Add ES3 intrinsics isinf/isnan to public SkSL ES3." 2021-08-25 19:01:22 +00:00
IsInf.glsl Reland "Add ES3 intrinsics isinf/isnan to public SkSL ES3." 2021-08-25 19:01:22 +00:00
IsInf.metal Reland "Add ES3 intrinsics isinf/isnan to public SkSL ES3." 2021-08-25 19:01:22 +00:00
IsNan.asm.frag Reland "Add ES3 intrinsics isinf/isnan to public SkSL ES3." 2021-08-25 19:01:22 +00:00
IsNan.glsl Reland "Add ES3 intrinsics isinf/isnan to public SkSL ES3." 2021-08-25 19:01:22 +00:00
IsNan.metal Reland "Add ES3 intrinsics isinf/isnan to public SkSL ES3." 2021-08-25 19:01:22 +00:00
Ldexp.asm.frag Revert "Revert "Refactored SPIR-V RelaxedPrecision handling"" 2021-03-18 15:01:15 +00:00
Ldexp.glsl Change sksl tests to avoid SPIR-V validation errors 2021-03-16 13:39:53 +00:00
Ldexp.metal Revert "Only include header once in combined MSL shader." 2021-03-16 14:44:25 +00:00
Length.asm.frag Implement compile-time optimization for length(). 2021-05-26 00:58:53 +00:00
Length.glsl Implement compile-time optimization for length(). 2021-05-26 00:58:53 +00:00
Length.metal Implement compile-time optimization for length(). 2021-05-26 00:58:53 +00:00
LessThan.asm.frag Optimize intrinsic vector comparisons of constants. 2021-05-06 14:00:27 +00:00
LessThan.glsl Optimize intrinsic vector comparisons of constants. 2021-05-06 14:00:27 +00:00
LessThan.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
LessThanEqual.asm.frag Optimize intrinsic vector comparisons of constants. 2021-05-06 14:00:27 +00:00
LessThanEqual.glsl Optimize intrinsic vector comparisons of constants. 2021-05-06 14:00:27 +00:00
LessThanEqual.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Log2.asm.frag Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Log2.glsl Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Log2.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Log.asm.frag Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Log.glsl Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Log.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
MatrixCompMultES2.asm.frag Add non-square MatrixCompMult support to public SkSL in ES3 mode. 2021-09-14 18:15:23 +00:00
MatrixCompMultES2.glsl Add non-square MatrixCompMult support to public SkSL in ES3 mode. 2021-09-14 18:15:23 +00:00
MatrixCompMultES2.metal Add non-square MatrixCompMult support to public SkSL in ES3 mode. 2021-09-14 18:15:23 +00:00
MatrixCompMultES3.asm.frag Disallow matrix ctors which overflow a column. 2021-09-16 22:14:49 +00:00
MatrixCompMultES3.glsl Disallow matrix ctors which overflow a column. 2021-09-16 22:14:49 +00:00
MatrixCompMultES3.metal Disallow matrix ctors which overflow a column. 2021-09-16 22:14:49 +00:00
MaxFloat.asm.frag Implement compile-time optimization for min() and max(). 2021-05-25 14:52:11 +00:00
MaxFloat.glsl Implement compile-time optimization for min() and max(). 2021-05-25 14:52:11 +00:00
MaxFloat.metal Implement compile-time optimization for min() and max(). 2021-05-25 14:52:11 +00:00
MaxInt.asm.frag Implement compile-time optimization for min() and max(). 2021-05-25 14:52:11 +00:00
MaxInt.glsl Implement compile-time optimization for min() and max(). 2021-05-25 14:52:11 +00:00
MaxInt.metal Implement compile-time optimization for min() and max(). 2021-05-25 14:52:11 +00:00
MinFloat.asm.frag Implement compile-time optimization for min() and max(). 2021-05-25 14:52:11 +00:00
MinFloat.glsl Implement compile-time optimization for min() and max(). 2021-05-25 14:52:11 +00:00
MinFloat.metal Implement compile-time optimization for min() and max(). 2021-05-25 14:52:11 +00:00
MinInt.asm.frag Implement compile-time optimization for min() and max(). 2021-05-25 14:52:11 +00:00
MinInt.glsl Implement compile-time optimization for min() and max(). 2021-05-25 14:52:11 +00:00
MinInt.metal Implement compile-time optimization for min() and max(). 2021-05-25 14:52:11 +00:00
MixBool.asm.frag Support the Boolean form of mix() in the Metal/SPIR-V backends. 2021-07-12 14:34:48 +00:00
MixBool.glsl Implement compile-time optimization for mix(). 2021-06-01 19:36:05 +00:00
MixBool.metal Support the Boolean form of mix() in the Metal/SPIR-V backends. 2021-07-12 14:34:48 +00:00
MixFloat.asm.frag Implement compile-time optimization for mix(). 2021-06-01 19:36:05 +00:00
MixFloat.glsl Implement compile-time optimization for mix(). 2021-06-01 19:36:05 +00:00
MixFloat.metal Implement compile-time optimization for mix(). 2021-06-01 19:36:05 +00:00
Mod.asm.frag Implement compile-time optimization for mod(). 2021-05-25 22:07:53 +00:00
Mod.glsl Implement compile-time optimization for mod(). 2021-05-25 22:07:53 +00:00
Mod.metal Implement compile-time optimization for mod(). 2021-05-25 22:07:53 +00:00
Modf.asm.frag Add ES3 intrinsic modf to sksl_public. 2021-09-08 18:45:16 +00:00
Modf.glsl Add ES3 intrinsic modf to sksl_public. 2021-09-08 18:45:16 +00:00
Modf.metal Add ES3 intrinsic modf to sksl_public. 2021-09-08 18:45:16 +00:00
Normalize.asm.frag Implement compile-time optimization for normalize(). 2021-05-26 15:06:08 +00:00
Normalize.glsl Implement compile-time optimization for normalize(). 2021-05-26 15:06:08 +00:00
Normalize.metal Implement compile-time optimization for normalize(). 2021-05-26 15:06:08 +00:00
Not.asm.frag Optimize not() intrinsic. 2021-05-11 14:08:39 +00:00
Not.glsl Optimize not() intrinsic. 2021-05-11 14:08:39 +00:00
Not.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
NotEqual.asm.frag Optimize intrinsic vector comparisons of constants. 2021-05-06 14:00:27 +00:00
NotEqual.glsl Optimize intrinsic vector comparisons of constants. 2021-05-06 14:00:27 +00:00
NotEqual.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
OuterProduct.asm.frag Implement compile-time optimization for outerProduct. 2021-09-10 14:34:32 +00:00
OuterProduct.glsl Implement compile-time optimization for outerProduct. 2021-09-10 14:34:32 +00:00
OuterProduct.metal Implement compile-time optimization for outerProduct. 2021-09-10 14:34:32 +00:00
Pack.asm.frag Revert "Revert "Added more RelaxedPrecision decorations"" 2021-03-23 19:34:42 +00:00
Pack.glsl Change sksl tests to avoid SPIR-V validation errors 2021-03-16 13:39:53 +00:00
Pack.metal Add float-packing intrinsics from sksl_gpu to Metal. 2021-09-08 20:02:43 +00:00
PackUnorm2x16.asm.frag Add support for pack/unpackUnorm2x16 to public SkSL. 2021-09-09 18:59:15 +00:00
PackUnorm2x16.glsl Add support for pack/unpackUnorm2x16 to public SkSL. 2021-09-09 18:59:15 +00:00
PackUnorm2x16.metal Add support for pack/unpackUnorm2x16 to public SkSL. 2021-09-09 18:59:15 +00:00
Pow.asm.frag Implement compile-time optimization for pow(). 2021-05-26 19:54:09 +00:00
Pow.glsl Implement compile-time optimization for pow(). 2021-05-26 19:54:09 +00:00
Pow.metal Implement compile-time optimization for pow(). 2021-05-26 19:54:09 +00:00
Radians.asm.frag Optimize remaining simple 1-argument intrinsics. 2021-05-11 16:44:09 +00:00
Radians.glsl Optimize remaining simple 1-argument intrinsics. 2021-05-11 16:44:09 +00:00
Radians.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Reflect.asm.frag Implement compile-time optimization for reflect(). 2021-05-26 19:49:29 +00:00
Reflect.glsl Implement compile-time optimization for reflect(). 2021-05-26 19:49:29 +00:00
Reflect.metal Implement compile-time optimization for reflect(). 2021-05-26 19:49:29 +00:00
Refract.asm.frag Implement compile-time optimization for refract(). 2021-05-26 19:55:39 +00:00
Refract.glsl Implement compile-time optimization for refract(). 2021-05-26 19:55:39 +00:00
Refract.metal Implement compile-time optimization for refract(). 2021-05-26 19:55:39 +00:00
Round.asm.frag Add trunc/round/roundEven SKSL ES3 public APIs. 2021-08-23 15:44:15 +00:00
Round.glsl Add trunc/round/roundEven SKSL ES3 public APIs. 2021-08-23 15:44:15 +00:00
Round.metal Add trunc/round/roundEven SKSL ES3 public APIs. 2021-08-23 15:44:15 +00:00
RoundEven.asm.frag Add trunc/round/roundEven SKSL ES3 public APIs. 2021-08-23 15:44:15 +00:00
RoundEven.glsl Add trunc/round/roundEven SKSL ES3 public APIs. 2021-08-23 15:44:15 +00:00
RoundEven.metal Add trunc/round/roundEven SKSL ES3 public APIs. 2021-08-23 15:44:15 +00:00
Saturate.asm.frag Revert "Vectorize scalars in SPIR-V using ConstructorSplat." 2021-05-14 14:29:33 +00:00
Saturate.glsl Optimize remaining simple 1-argument intrinsics. 2021-05-11 16:44:09 +00:00
Saturate.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
SignFloat.asm.frag Evaluate single-argument generic intrinsics at compile time. 2021-05-10 14:50:50 +00:00
SignFloat.glsl Evaluate single-argument generic intrinsics at compile time. 2021-05-10 14:50:50 +00:00
SignFloat.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
SignInt.asm.frag Evaluate single-argument generic intrinsics at compile time. 2021-05-10 14:50:50 +00:00
SignInt.glsl Evaluate single-argument generic intrinsics at compile time. 2021-05-10 14:50:50 +00:00
SignInt.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Sin.asm.frag Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Sin.glsl Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Sin.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Sinh.asm.frag Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Sinh.glsl Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Sinh.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Smoothstep.asm.frag Implement compile-time optimization for smoothstep(). 2021-05-25 20:32:46 +00:00
Smoothstep.glsl Implement compile-time optimization for smoothstep(). 2021-05-25 20:32:46 +00:00
Smoothstep.metal Implement compile-time optimization for smoothstep(). 2021-05-25 20:32:46 +00:00
Sqrt.asm.frag Replace trio of XxxxLiteral types with a single Literal type. 2021-09-13 17:32:34 +00:00
Sqrt.glsl Implement compile-time optimization for sqrt(constant). 2021-05-25 04:43:10 +00:00
Sqrt.metal Implement compile-time optimization for sqrt(constant). 2021-05-25 04:43:10 +00:00
Step.asm.frag Implement compile-time optimization for step(). 2021-05-25 16:59:22 +00:00
Step.glsl Implement compile-time optimization for step(). 2021-05-25 16:59:22 +00:00
Step.metal Implement compile-time optimization for step(). 2021-05-25 16:59:22 +00:00
Tan.asm.frag Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Tan.glsl Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Tan.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Tanh.asm.frag Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Tanh.glsl Evaluate various single-argument float intrinsics at compile time. 2021-05-07 14:37:18 +00:00
Tanh.metal Fix const globals in Metal 2021-05-13 21:11:10 +00:00
Transpose.asm.frag Add compile-time optimization for transpose(). 2021-08-18 13:49:04 +00:00
Transpose.glsl Add compile-time optimization for transpose(). 2021-08-18 13:49:04 +00:00
Transpose.metal Add compile-time optimization for transpose(). 2021-08-18 13:49:04 +00:00
Trunc.asm.frag Add trunc/round/roundEven SKSL ES3 public APIs. 2021-08-23 15:44:15 +00:00
Trunc.glsl Add trunc/round/roundEven SKSL ES3 public APIs. 2021-08-23 15:44:15 +00:00
Trunc.metal Add trunc/round/roundEven SKSL ES3 public APIs. 2021-08-23 15:44:15 +00:00
UintBitsToFloat.asm.frag Add floatBitsToInt family of ES3 intrinsics to SkSL public ES3. 2021-08-20 14:58:44 +00:00
UintBitsToFloat.glsl Add floatBitsToInt family of ES3 intrinsics to SkSL public ES3. 2021-08-20 14:58:44 +00:00
UintBitsToFloat.metal Add floatBitsToInt family of ES3 intrinsics to SkSL public ES3. 2021-08-20 14:58:44 +00:00
Unpack.asm.frag Revert "Revert "Added more RelaxedPrecision decorations"" 2021-03-23 19:34:42 +00:00
Unpack.glsl Change sksl tests to avoid SPIR-V validation errors 2021-03-16 13:39:53 +00:00
Unpack.metal Add float-packing intrinsics from sksl_gpu to Metal. 2021-09-08 20:02:43 +00:00