[Libva] [PATCH] shaders: gen[789]: fix Y coefficient in YUV->RGB conversion

Gwenole Beauchesne gb.devel at gmail.com
Wed Oct 21 07:18:19 PDT 2015


2015-10-20 18:48 GMT+02:00 Lionel Landwerlin <lionel.g.landwerlin at intel.com>:
> In the following formula for the conversion :
>
> R = Clamp ( 1.164(Y-16/255) + 1.596(Cr-128/255))
> G = Clamp ( 1.164(Y-16/255) - 0.813(Cr-128/255) - 0.392(Cb-128/255))
> B = Clamp ( 1.164(Y-16/255) + 2.017(Cb-128/255))
>
> we must substract 16 (or 16/255 if dealing with [0.0, 1.0] floats) to
> Y before applying the multiplier coefficent. The shader was missing
> the substraction.

No, the comment is wrong. YPbPr full range model is implemented and
has correct coefficients, AFAICS.

If you want to use ITU-R BT.601 limited range model, you ought to
change the other coefficients too.

> ---
>  src/shaders/post_processing/gen7/YUV_to_RGB.g4a   | 16 ++++++++++++++++
>  src/shaders/post_processing/gen7/pl2_to_rgbx.g75b | 16 ++++++++++++++++
>  src/shaders/post_processing/gen7/pl2_to_rgbx.g7b  | 16 ++++++++++++++++
>  src/shaders/post_processing/gen8/YUV_to_RGB.g8a   | 16 ++++++++++++++++
>  src/shaders/post_processing/gen8/pl2_to_rgbx.g8b  | 16 ++++++++++++++++
>  src/shaders/post_processing/gen9/pl2_to_rgbx.g9b  | 16 ++++++++++++++++
>  6 files changed, 96 insertions(+)
>
> diff --git a/src/shaders/post_processing/gen7/YUV_to_RGB.g4a b/src/shaders/post_processing/gen7/YUV_to_RGB.g4a
> index b7147fc..0255697 100644
> --- a/src/shaders/post_processing/gen7/YUV_to_RGB.g4a
> +++ b/src/shaders/post_processing/gen7/YUV_to_RGB.g4a
> @@ -386,6 +386,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 1]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 17]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -424,6 +425,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 33]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 49]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -461,6 +463,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 65]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 81]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -497,6 +500,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 97]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 113]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -536,6 +540,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 1]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 17]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -574,6 +579,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 33]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 49]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -611,6 +617,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 65]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 81]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -647,6 +654,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 97]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 113]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -686,6 +694,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 1]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 17]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -724,6 +733,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 33]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 49]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -761,6 +771,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 65]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 81]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -797,6 +808,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 97]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 113]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -836,6 +848,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 1]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 17]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -874,6 +887,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 33]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 49]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -911,6 +925,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 65]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 81]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -947,6 +962,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 97]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 113]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> diff --git a/src/shaders/post_processing/gen7/pl2_to_rgbx.g75b b/src/shaders/post_processing/gen7/pl2_to_rgbx.g75b
> index 0337661..ec60bb6 100644
> --- a/src/shaders/post_processing/gen7/pl2_to_rgbx.g75b
> +++ b/src/shaders/post_processing/gen7/pl2_to_rgbx.g75b
> @@ -526,6 +526,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8811, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8001, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8011, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -553,6 +554,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8831, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8021, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8031, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -580,6 +582,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8851, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8041, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8051, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -607,6 +610,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8871, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8061, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8071, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -635,6 +639,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8811, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8001, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8011, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -662,6 +667,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8831, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8021, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8031, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -689,6 +695,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8851, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8041, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8051, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -716,6 +723,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8871, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8061, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8071, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -744,6 +752,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8811, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8001, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8011, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -771,6 +780,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8831, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8021, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8031, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -798,6 +808,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8851, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8041, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8051, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -825,6 +836,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8871, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8061, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8071, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -853,6 +865,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8811, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8001, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8011, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -880,6 +893,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8831, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8021, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8031, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -907,6 +921,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8851, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8041, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8051, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -934,6 +949,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8871, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8061, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8071, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> diff --git a/src/shaders/post_processing/gen7/pl2_to_rgbx.g7b b/src/shaders/post_processing/gen7/pl2_to_rgbx.g7b
> index 540409d..b943484 100644
> --- a/src/shaders/post_processing/gen7/pl2_to_rgbx.g7b
> +++ b/src/shaders/post_processing/gen7/pl2_to_rgbx.g7b
> @@ -526,6 +526,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8811, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8001, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8011, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -553,6 +554,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8831, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8021, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8031, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -580,6 +582,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8851, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8041, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8051, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -607,6 +610,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8871, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8061, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8071, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -635,6 +639,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8811, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8001, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8011, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -662,6 +667,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8831, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8021, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8031, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -689,6 +695,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8851, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8041, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8051, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -716,6 +723,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8871, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8061, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8071, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -744,6 +752,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8811, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8001, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8011, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -771,6 +780,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8831, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8021, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8031, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -798,6 +808,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8851, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8041, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8051, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -825,6 +836,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8871, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8061, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8071, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -853,6 +865,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8811, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8001, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8011, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -880,6 +893,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8831, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8021, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8031, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -907,6 +921,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8851, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8041, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8051, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> @@ -934,6 +949,7 @@
>     { 0x00600001, 0x24e0023d, 0x00ae8871, 0x00000000 },
>     { 0x00600001, 0x2500023d, 0x00ae8061, 0x00000000 },
>     { 0x00600001, 0x2520023d, 0x00ae8071, 0x00000000 },
> +   { 0x00800040, 0x24807fbd, 0x008d0480, 0xc1800000 },
>     { 0x00800040, 0x24c07fbd, 0x008d04c0, 0xc3000000 },
>     { 0x00800040, 0x25007fbd, 0x008d0500, 0xc3000000 },
>     { 0x00800001, 0x240003bc, 0x008d0480, 0x00000000 },
> diff --git a/src/shaders/post_processing/gen8/YUV_to_RGB.g8a b/src/shaders/post_processing/gen8/YUV_to_RGB.g8a
> index 2b968d8..f4299f9 100644
> --- a/src/shaders/post_processing/gen8/YUV_to_RGB.g8a
> +++ b/src/shaders/post_processing/gen8/YUV_to_RGB.g8a
> @@ -364,6 +364,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 1]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 17]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -403,6 +404,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 33]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 49]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -441,6 +443,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 65]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 81]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -478,6 +481,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 97]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 113]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -518,6 +522,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 1]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 17]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -557,6 +562,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 33]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 49]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -595,6 +601,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 65]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 81]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -632,6 +639,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 97]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 113]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -672,6 +680,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 1]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 17]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -711,6 +720,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 33]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 49]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -749,6 +759,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 65]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 81]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -786,6 +797,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 97]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 113]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -826,6 +838,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 1]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 17]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -865,6 +878,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 33]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 49]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -903,6 +917,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 65]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 81]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> @@ -940,6 +955,7 @@
>          mov   (8) fBUFFER_V(0, 0)<1>     r[a0.0, 97]<16;8,2>:ub
>          mov   (8) fBUFFER_V(1, 0)<1>     r[a0.0, 113]<16;8,2>:ub
>
> +       add   (16) fBUFFER_Y(0, 0)<1>     fBUFFER_Y(0, 0)<8;8,1>        -16.0f
>         add   (16) fBUFFER_U(0, 0)<1>     fBUFFER_U(0, 0)<8;8,1>        -128.0f
>         add   (16) fBUFFER_V(0, 0)<1>     fBUFFER_V(0, 0)<8;8,1>        -128.0f
>
> diff --git a/src/shaders/post_processing/gen8/pl2_to_rgbx.g8b b/src/shaders/post_processing/gen8/pl2_to_rgbx.g8b
> index 9ee29c2..617f8ed 100644
> --- a/src/shaders/post_processing/gen8/pl2_to_rgbx.g8b
> +++ b/src/shaders/post_processing/gen8/pl2_to_rgbx.g8b
> @@ -116,6 +116,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8411, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8001, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8011, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -144,6 +145,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8431, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8021, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8031, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -172,6 +174,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8451, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8041, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8051, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -200,6 +203,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8471, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8061, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8071, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -229,6 +233,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8411, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8001, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8011, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -257,6 +262,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8431, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8021, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8031, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -285,6 +291,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8451, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8041, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8051, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -313,6 +320,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8471, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8061, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8071, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -342,6 +350,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8411, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8001, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8011, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -370,6 +379,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8431, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8021, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8031, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -398,6 +408,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8451, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8041, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8051, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -426,6 +437,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8471, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8061, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8071, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -455,6 +467,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8411, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8001, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8011, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -483,6 +496,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8431, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8021, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8031, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -511,6 +525,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8451, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8041, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8051, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -539,6 +554,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8471, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8061, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8071, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> diff --git a/src/shaders/post_processing/gen9/pl2_to_rgbx.g9b b/src/shaders/post_processing/gen9/pl2_to_rgbx.g9b
> index f37211f..3a6ab3a 100644
> --- a/src/shaders/post_processing/gen9/pl2_to_rgbx.g9b
> +++ b/src/shaders/post_processing/gen9/pl2_to_rgbx.g9b
> @@ -116,6 +116,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8411, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8001, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8011, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -144,6 +145,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8431, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8021, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8031, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -172,6 +174,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8451, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8041, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8051, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -200,6 +203,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8471, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8061, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8071, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -229,6 +233,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8411, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8001, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8011, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -257,6 +262,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8431, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8021, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8031, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -285,6 +291,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8451, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8041, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8051, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -313,6 +320,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8471, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8061, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8071, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -342,6 +350,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8411, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8001, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8011, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -370,6 +379,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8431, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8021, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8031, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -398,6 +408,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8451, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8041, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8051, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -426,6 +437,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8471, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8061, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8071, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -455,6 +467,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8411, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8001, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8011, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -483,6 +496,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8431, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8021, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8031, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -511,6 +525,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8451, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8041, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8051, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> @@ -539,6 +554,7 @@
>     { 0x00600001, 0x24e022e8, 0x00ae8471, 0x00000000 },
>     { 0x00600001, 0x250022e8, 0x00ae8061, 0x00000000 },
>     { 0x00600001, 0x252022e8, 0x00ae8071, 0x00000000 },
> +   { 0x00800040, 0x24803ae8, 0x3e8d0480, 0xc1800000 },
>     { 0x00800040, 0x24c03ae8, 0x3e8d04c0, 0xc3000000 },
>     { 0x00800040, 0x25003ae8, 0x3e8d0500, 0xc3000000 },
>     { 0x00800001, 0x24003ae0, 0x008d0480, 0x00000000 },
> --
> 2.6.1
>
> _______________________________________________
> Libva mailing list
> Libva at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/libva



-- 
Gwenole Beauchesne
Intel Corporation SAS / 2 rue de Paris, 92196 Meudon Cedex, France
Registration Number (RCS): Nanterre B 302 456 199


More information about the Libva mailing list