static int altivec_uyvy_rgb32 (SwsContext *c,

			       unsigned char **in, int *instrides,

			       int srcSliceY,	int srcSliceH,

			       unsigned char **oplanes, int *outstrides)

{

  int w = c->srcW;

  int h = srcSliceH;

  int i,j;

  vector unsigned char uyvy;

  vector signed   short Y,U,V;

  vector signed   short vx,ux,uvx;

  vector signed   short R0,G0,B0,R1,G1,B1;

  vector unsigned char  R,G,B;

  vector unsigned char *out;

  ubyte *img;



  img = in[0];

  out = (vector unsigned char *)(oplanes[0]+srcSliceY*outstrides[0]);



  for (i=0;i<h;i++) {

    for (j=0;j<w/16;j++) {

      uyvy = vec_ld (0, img);

      U = (vector signed short)

	vec_perm (uyvy, (vector unsigned char)(0), demux_u);



      V = (vector signed short)

	vec_perm (uyvy, (vector unsigned char)(0), demux_v);



      Y = (vector signed short)

	vec_perm (uyvy, (vector unsigned char)(0), demux_y);



      cvtyuvtoRGB (c, Y,U,V,&R0,&G0,&B0);



      uyvy = vec_ld (16, img);

      U = (vector signed short)

	vec_perm (uyvy, (vector unsigned char)(0), demux_u);



      V = (vector signed short)

	vec_perm (uyvy, (vector unsigned char)(0), demux_v);



      Y = (vector signed short)

	vec_perm (uyvy, (vector unsigned char)(0), demux_y);



      cvtyuvtoRGB (c, Y,U,V,&R1,&G1,&B1);



      R  = vec_packclp (R0,R1);

      G  = vec_packclp (G0,G1);

      B  = vec_packclp (B0,B1);



      //      vec_mstbgr24 (R,G,B, out);

      out_rgba (R,G,B,out);



      img += 32;

    }

  }

  return srcSliceH;

}

static int altivec_uyvy_rgb32 (SwsContext *c,

			       unsigned char **in, int *instrides,

			       int srcSliceY,	int srcSliceH,

			       unsigned char **oplanes, int *outstrides)

{

  int w = c->srcW;

  int h = srcSliceH;

  int i,j;

  vector unsigned char uyvy;

  vector signed   short Y,U,V;

  vector signed   short vx,ux,uvx;

  vector signed   short R0,G0,B0,R1,G1,B1;

  vector unsigned char  R,G,B;

  vector unsigned char *out;

  ubyte *img;



  img = in[0];

  out = (vector unsigned char *)(oplanes[0]+srcSliceY*outstrides[0]);



  for (i=0;i<h;i++) {

    for (j=0;j<w/16;j++) {

      uyvy = vec_ld (0, img);

      U = (vector signed short)

	vec_perm (uyvy, (vector unsigned char)(0), demux_u);



      V = (vector signed short)

	vec_perm (uyvy, (vector unsigned char)(0), demux_v);



      Y = (vector signed short)

	vec_perm (uyvy, (vector unsigned char)(0), demux_y);



      cvtyuvtoRGB (c, Y,U,V,&R0,&G0,&B0);



      uyvy = vec_ld (16, img);

      U = (vector signed short)

	vec_perm (uyvy, (vector unsigned char)(0), demux_u);



      V = (vector signed short)

	vec_perm (uyvy, (vector unsigned char)(0), demux_v);



      Y = (vector signed short)

	vec_perm (uyvy, (vector unsigned char)(0), demux_y);



      cvtyuvtoRGB (c, Y,U,V,&R1,&G1,&B1);



      R  = vec_packclp (R0,R1);

      G  = vec_packclp (G0,G1);

      B  = vec_packclp (B0,B1);



      

      out_rgba (R,G,B,out);



      img += 32;

    }

  }

  return srcSliceH;

}

static int FUNC_0 (SwsContext *VAR_0,

			       unsigned char **VAR_1, int *VAR_2,

			       int VAR_3,	int VAR_4,

			       unsigned char **VAR_5, int *VAR_6)

{

  int VAR_7 = VAR_0->srcW;

  int VAR_8 = VAR_4;

  int VAR_9,VAR_10;

  vector unsigned char uyvy;

  vector signed   short Y,U,V;

  vector signed   short vx,ux,uvx;

  vector signed   short R0,G0,B0,R1,G1,B1;

  vector unsigned char  R,G,B;

  vector unsigned char *out;

  ubyte *img;



  img = VAR_1[0];

  out = (vector unsigned char *)(VAR_5[0]+VAR_3*VAR_6[0]);



  for (VAR_9=0;VAR_9<VAR_8;VAR_9++) {

    for (VAR_10=0;VAR_10<VAR_7/16;VAR_10++) {

      uyvy = vec_ld (0, img);

      U = (vector signed short)

	vec_perm (uyvy, (vector unsigned char)(0), demux_u);



      V = (vector signed short)

	vec_perm (uyvy, (vector unsigned char)(0), demux_v);



      Y = (vector signed short)

	vec_perm (uyvy, (vector unsigned char)(0), demux_y);



      cvtyuvtoRGB (VAR_0, Y,U,V,&R0,&G0,&B0);



      uyvy = vec_ld (16, img);

      U = (vector signed short)

	vec_perm (uyvy, (vector unsigned char)(0), demux_u);



      V = (vector signed short)

	vec_perm (uyvy, (vector unsigned char)(0), demux_v);



      Y = (vector signed short)

	vec_perm (uyvy, (vector unsigned char)(0), demux_y);



      cvtyuvtoRGB (VAR_0, Y,U,V,&R1,&G1,&B1);



      R  = vec_packclp (R0,R1);

      G  = vec_packclp (G0,G1);

      B  = vec_packclp (B0,B1);



      

      out_rgba (R,G,B,out);



      img += 32;

    }

  }

  return VAR_4;

}

static int FUNC_0 (SwsContext *VAR_0,
unsigned char **VAR_1, int *VAR_2,
int VAR_3,	int VAR_4,
unsigned char **VAR_5, int *VAR_6)
{ int VAR_7 = VAR_0->srcW; int VAR_8 = VAR_4; int VAR_9,VAR_10; vector unsigned char uyvy; vector signed   short Y,U,V; vector signed   short vx,ux,uvx; vector signed   short R0,G0,B0,R1,G1,B1; vector unsigned char  R,G,B; vector unsigned char *out; ubyte *img; img = VAR_1[0]; out = (vector unsigned char *)(VAR_5[0]+VAR_3*VAR_6[0]); for (VAR_9=0;VAR_9<VAR_8;VAR_9++) { for (VAR_10=0;VAR_10<VAR_7/16;VAR_10++) { uyvy = vec_ld (0, img); U = (vector signed short)
vec_perm (uyvy, (vector unsigned char)(0), demux_u); V = (vector signed short)
vec_perm (uyvy, (vector unsigned char)(0), demux_v); Y = (vector signed short)
vec_perm (uyvy, (vector unsigned char)(0), demux_y); cvtyuvtoRGB (VAR_0, Y,U,V,&R0,&G0,&B0); uyvy = vec_ld (16, img); U = (vector signed short)
vec_perm (uyvy, (vector unsigned char)(0), demux_u); V = (vector signed short)
vec_perm (uyvy, (vector unsigned char)(0), demux_v); Y = (vector signed short)
vec_perm (uyvy, (vector unsigned char)(0), demux_y); cvtyuvtoRGB (VAR_0, Y,U,V,&R1,&G1,&B1); R  = vec_packclp (R0,R1); G  = vec_packclp (G0,G1); B  = vec_packclp (B0,B1); out_rgba (R,G,B,out); img += 32; } } return VAR_4; }