[FFmpeg-trac] #8750(undetermined:new): Patch to fix #7124 break the build for powerpc

FFmpeg trac at avcodec.org
Sun Jun 21 11:23:39 EEST 2020


#8750: Patch to fix #7124 break the build for powerpc
-------------------------------------+-------------------------------------
               Reporter:  marillat   |                  Owner:
                   Type:  defect     |                 Status:  new
               Priority:  normal     |              Component:
                Version:             |  undetermined
  unspecified                        |               Keywords:
             Blocked By:             |               Blocking:
Reproduced by developer:  0          |  Analyzed by developer:  0
-------------------------------------+-------------------------------------
 commit 3a557c5d88b7b15b5954ba2743febb055549b536
 break the build with gcc 9.3.0 (Debian 9.3.0-13) ffmpeg 4.3 powerpc

 Altivec is enabled with "--cpu=g4"

 CC      libswscale/ppc/yuv2rgb_altivec.o
 libswscale/ppc/yuv2rgb_altivec.c: In function ‘altivec_yuv2_abgr’:
 libswscale/ppc/yuv2rgb_altivec.c:338:18: error: implicit declaration of
 function ‘vec_xl’; did you mean ‘vec_rl’? [-Werror=implicit-function-
 declaration]
   338 |             y0 = vec_xl(0, y1i);
 \
       |                  ^~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:437:1: note: in expansion of macro
 ‘DEFCSP420_CVT’
   437 | DEFCSP420_CVT(yuv2_abgr,  out_abgr)
       | ^~~~~~~~~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:338:18: error: incompatible types when
 assigning to type ‘__vector unsigned char’ {aka ‘__vector(16) unsigned
 char’} from type ‘int’
   338 |             y0 = vec_xl(0, y1i);
 \
       |                  ^~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:437:1: note: in expansion of macro
 ‘DEFCSP420_CVT’
   437 | DEFCSP420_CVT(yuv2_abgr,  out_abgr)
       | ^~~~~~~~~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:340:18: error: incompatible types when
 assigning to type ‘__vector unsigned char’ {aka ‘__vector(16) unsigned
 char’} from type ‘int’
   340 |             y1 = vec_xl(0, y2i);
 \
       |                  ^~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:437:1: note: in expansion of macro
 ‘DEFCSP420_CVT’
   437 | DEFCSP420_CVT(yuv2_abgr,  out_abgr)
       | ^~~~~~~~~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:437:1: error: can’t convert a value of
 type ‘int’ to vector type ‘__vector(16) signed char’ which has different
 size
 libswscale/ppc/yuv2rgb_altivec.c:437:1: error: can’t convert a value of
 type ‘int’ to vector type ‘__vector(16) signed char’ which has different
 size
 libswscale/ppc/yuv2rgb_altivec.c: In function ‘altivec_yuv2_bgra’:
 libswscale/ppc/yuv2rgb_altivec.c:338:18: error: incompatible types when
 assigning to type ‘__vector unsigned char’ {aka ‘__vector(16) unsigned
 char’} from type ‘int’
   338 |             y0 = vec_xl(0, y1i);
 \
       |                  ^~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:438:1: note: in expansion of macro
 ‘DEFCSP420_CVT’
   438 | DEFCSP420_CVT(yuv2_bgra,  out_bgra)
       | ^~~~~~~~~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:340:18: error: incompatible types when
 assigning to type ‘__vector unsigned char’ {aka ‘__vector(16) unsigned
 char’} from type ‘int’
   340 |             y1 = vec_xl(0, y2i);
 \
       |                  ^~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:438:1: note: in expansion of macro
 ‘DEFCSP420_CVT’
   438 | DEFCSP420_CVT(yuv2_bgra,  out_bgra)
       | ^~~~~~~~~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:438:1: error: can’t convert a value of
 type ‘int’ to vector type ‘__vector(16) signed char’ which has different
 size
 libswscale/ppc/yuv2rgb_altivec.c:438:1: error: can’t convert a value of
 type ‘int’ to vector type ‘__vector(16) signed char’ which has different
 size
 libswscale/ppc/yuv2rgb_altivec.c: In function ‘altivec_yuv2_rgba’:
 libswscale/ppc/yuv2rgb_altivec.c:338:18: error: incompatible types when
 assigning to type ‘__vector unsigned char’ {aka ‘__vector(16) unsigned
 char’} from type ‘int’
   338 |             y0 = vec_xl(0, y1i);
 \
       |                  ^~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:439:1: note: in expansion of macro
 ‘DEFCSP420_CVT’
   439 | DEFCSP420_CVT(yuv2_rgba,  out_rgba)
       | ^~~~~~~~~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:340:18: error: incompatible types when
 assigning to type ‘__vector unsigned char’ {aka ‘__vector(16) unsigned
 char’} from type ‘int’
   340 |             y1 = vec_xl(0, y2i);
 \
       |                  ^~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:439:1: note: in expansion of macro
 ‘DEFCSP420_CVT’
   439 | DEFCSP420_CVT(yuv2_rgba,  out_rgba)
       | ^~~~~~~~~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:439:1: error: can’t convert a value of
 type ‘int’ to vector type ‘__vector(16) signed char’ which has different
 size
 libswscale/ppc/yuv2rgb_altivec.c:439:1: error: can’t convert a value of
 type ‘int’ to vector type ‘__vector(16) signed char’ which has different
 size
 libswscale/ppc/yuv2rgb_altivec.c: In function ‘altivec_yuv2_argb’:
 libswscale/ppc/yuv2rgb_altivec.c:338:18: error: incompatible types when
 assigning to type ‘__vector unsigned char’ {aka ‘__vector(16) unsigned
 char’} from type ‘int’
   338 |             y0 = vec_xl(0, y1i);
 \
       |                  ^~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:440:1: note: in expansion of macro
 ‘DEFCSP420_CVT’
   440 | DEFCSP420_CVT(yuv2_argb,  out_argb)
       | ^~~~~~~~~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:340:18: error: incompatible types when
 assigning to type ‘__vector unsigned char’ {aka ‘__vector(16) unsigned
 char’} from type ‘int’
   340 |             y1 = vec_xl(0, y2i);
 \
       |                  ^~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:440:1: note: in expansion of macro
 ‘DEFCSP420_CVT’
   440 | DEFCSP420_CVT(yuv2_argb,  out_argb)
       | ^~~~~~~~~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:440:1: error: can’t convert a value of
 type ‘int’ to vector type ‘__vector(16) signed char’ which has different
 size
 libswscale/ppc/yuv2rgb_altivec.c:440:1: error: can’t convert a value of
 type ‘int’ to vector type ‘__vector(16) signed char’ which has different
 size
 libswscale/ppc/yuv2rgb_altivec.c: In function ‘altivec_yuv2_rgb24’:
 libswscale/ppc/yuv2rgb_altivec.c:338:18: error: incompatible types when
 assigning to type ‘__vector unsigned char’ {aka ‘__vector(16) unsigned
 char’} from type ‘int’
   338 |             y0 = vec_xl(0, y1i);
 \
       |                  ^~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:441:1: note: in expansion of macro
 ‘DEFCSP420_CVT’
   441 | DEFCSP420_CVT(yuv2_rgb24, out_rgb24)
       | ^~~~~~~~~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:340:18: error: incompatible types when
 assigning to type ‘__vector unsigned char’ {aka ‘__vector(16) unsigned
 char’} from type ‘int’
   340 |             y1 = vec_xl(0, y2i);
 \
       |                  ^~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:441:1: note: in expansion of macro
 ‘DEFCSP420_CVT’
   441 | DEFCSP420_CVT(yuv2_rgb24, out_rgb24)
       | ^~~~~~~~~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:441:1: error: can’t convert a value of
 type ‘int’ to vector type ‘__vector(16) signed char’ which has different
 size
 libswscale/ppc/yuv2rgb_altivec.c:441:1: error: can’t convert a value of
 type ‘int’ to vector type ‘__vector(16) signed char’ which has different
 size
 libswscale/ppc/yuv2rgb_altivec.c: In function ‘altivec_yuv2_bgr24’:
 libswscale/ppc/yuv2rgb_altivec.c:338:18: error: incompatible types when
 assigning to type ‘__vector unsigned char’ {aka ‘__vector(16) unsigned
 char’} from type ‘int’
   338 |             y0 = vec_xl(0, y1i);
 \
       |                  ^~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:442:1: note: in expansion of macro
 ‘DEFCSP420_CVT’
   442 | DEFCSP420_CVT(yuv2_bgr24, out_bgr24)
       | ^~~~~~~~~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:340:18: error: incompatible types when
 assigning to type ‘__vector unsigned char’ {aka ‘__vector(16) unsigned
 char’} from type ‘int’
   340 |             y1 = vec_xl(0, y2i);
 \
       |                  ^~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:442:1: note: in expansion of macro
 ‘DEFCSP420_CVT’
   442 | DEFCSP420_CVT(yuv2_bgr24, out_bgr24)
       | ^~~~~~~~~~~~~
 libswscale/ppc/yuv2rgb_altivec.c:442:1: error: can’t convert a value of
 type ‘int’ to vector type ‘__vector(16) signed char’ which has different
 size
 libswscale/ppc/yuv2rgb_altivec.c:442:1: error: can’t convert a value of
 type ‘int’ to vector type ‘__vector(16) signed char’ which has different
 size
 cc1: some warnings being treated as errors

--
Ticket URL: <https://trac.ffmpeg.org/ticket/8750>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list