#8591 closed defect (fixed)
vf_deshake_opencl fails to compile on ppc64le/POWER8
| Reported by: | Dominik Mierzejewski | Owned by: | |
|---|---|---|---|
| Priority: | normal | Component: | avfilter |
| Version: | git-master | Keywords: | ppc opencl |
| Cc: | Blocked By: | ||
| Blocking: | Reproduced by developer: | no | |
| Analyzed by developer: | no |
Description
Summary of the bug:
FFmpeg snapshot from 2020-02-20 fails to compile on ppc64le/POWER8 on Fedora rawhide with gcc 10.0.1. There were no commits to libavfilter/vf_deshake_opencl.c since then, so this applies to git master HEAD, too.
How to reproduce:
$ ./configure --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --docdir=/usr/share/doc/ffmpeg --incdir=/usr/include/ffmpeg --libdir=/usr/lib64 --mandir=/usr/share/man --arch=ppc64le '--optflags=-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mcpu=power8 -mtune=power8 -fasynchronous-unwind-tables -fstack-clash-protection' '--extra-ldflags=-Wl,-z,relro -Wl,--as-needed -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld ' '--extra-cflags= ' --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvo-amrwbenc --enable-version3 --enable-bzlib --disable-crystalhd --enable-fontconfig --enable-frei0r --enable-gcrypt --enable-gnutls --enable-ladspa --enable-libaom --enable-libdav1d --enable-libass --enable-libbluray --enable-libcdio --enable-libdrm --enable-libjack --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libmp3lame --enable-openal --enable-opencl --enable-opengl --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librsvg --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libvorbis --enable-libv4l2 --enable-libvidstab --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxvid --enable-libzimg --enable-libzvbi --enable-avfilter --enable-avresample --enable-postproc --enable-pthreads --disable-static --enable-shared --enable-gpl --disable-debug --disable-stripping --shlibdir=/usr/lib64 --enable-runtime-cpudetect --cpu=power8 --enable-pic
...
$ /usr/bin/make -O -j2 V=1 VERBOSE=1 V=1
...
gcc -I. -I./ -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -DPIC -DZLIB_CONST -DHAVE_AV_CONFIG_H -DBUILDING_avfilter -mcpu=power8 -std=c11 -fomit-frame-pointer -fPIC -maltivec -mabi=altivec -mvsx -pthread -I/usr/include/p11-kit-1 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/fribidi -I/usr/include/libxml2 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/fribidi -I/usr/include/openjpeg-2.3 -I/usr/include/opus -I/usr/include/opus -D_REENTRANT -I/usr/include/librsvg-2.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/gdk-pixbuf-2.0 -pthread -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -DX264_API_IMPORTS -I/usr/include/cdio -Wdeclaration-after-statement -Wall -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wwrite-strings -Wtype-limits -Wundef -Wmissing-prototypes -Wno-pointer-to-int-cast -Wstrict-prototypes -Wempty-body -Wno-parentheses -Wno-switch -Wno-format-zero-length -Wno-pointer-sign -Wno-unused-const-variable -Wno-bool-operation -Wno-char-subscripts -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mcpu=power8 -mtune=power8 -fasynchronous-unwind-tables -fstack-clash-protection -fno-math-errno -fno-signed-zeros -fno-tree-vectorize -Werror=format-security -Werror=implicit-function-declaration -Werror=missing-prototypes -Werror=return-type -Werror=vla -Wformat -fdiagnostics-color=auto -Wno-maybe-uninitialized -I/usr/include/SDL2 -D_REENTRANT -MMD -MF libavfilter/vf_deshake_opencl.d -MT libavfilter/vf_deshake_opencl.o -c -o libavfilter/vf_deshake_opencl.o libavfilter/vf_deshake_opencl.c
In file included from /usr/include/CL/cl.h:32,
from ./libavutil/hwcontext_opencl.h:25,
from libavfilter/opencl.h:31,
from libavfilter/vf_deshake_opencl.c:64:
/usr/include/CL/cl_version.h:34:9: note: '#pragma message: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 220 (OpenCL 2.2)'
34 | #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 220 (OpenCL 2.2)")
| ^~~~~~~
libavfilter/vf_deshake_opencl.c: In function 'points_not_collinear':
libavfilter/vf_deshake_opencl.c:376:24: error: incompatible types when returning type 'int' but '__vector __bool int' {aka '__vector(4) __bool int'} was expected
376 | return false;
| ^~~~~
libavfilter/vf_deshake_opencl.c:381:12: error: incompatible types when returning type 'int' but '__vector __bool int' {aka '__vector(4) __bool int'} was expected
381 | return true;
| ^~~~
libavfilter/vf_deshake_opencl.c: In function 'check_subset':
libavfilter/vf_deshake_opencl.c:400:12: error: used vector type where scalar is required
400 | return points_not_collinear(prev_points) && points_not_collinear(curr_points);
| ^~~~~~~~~~~~~~~~~~~~
libavfilter/vf_deshake_opencl.c: In function 'get_subset':
libavfilter/vf_deshake_opencl.c:436:23: error: wrong type argument to unary exclamation mark
436 | if (i == 3 && !check_subset(pairs_subset)) {
| ^
libavfilter/vf_deshake_opencl.c:442:19: error: incompatible types when returning type 'int' but '__vector __bool int' {aka '__vector(4) __bool int'} was expected
442 | return i == 3 && iters < max_attempts;
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
libavfilter/vf_deshake_opencl.c: In function 'estimate_affine_2d':
libavfilter/vf_deshake_opencl.c:538:19: error: incompatible types when initializing type '__vector __bool int' {aka '__vector(4) __bool int'} using type 'int'
538 | bool result = false;
| ^~~~~
libavfilter/vf_deshake_opencl.c:547:16: error: incompatible types when returning type 'int' but '__vector __bool int' {aka '__vector(4) __bool int'} was expected
547 | return false;
| ^~~~~
libavfilter/vf_deshake_opencl.c:556:16: error: incompatible types when returning type 'int' but '__vector __bool int' {aka '__vector(4) __bool int'} was expected
556 | return true;
| ^~~~
libavfilter/vf_deshake_opencl.c:562:13: error: wrong type argument to unary exclamation mark
562 | if (!found) {
| ^
libavfilter/vf_deshake_opencl.c:564:24: error: incompatible types when returning type 'int' but '__vector __bool int' {aka '__vector(4) __bool int'} was expected
564 | return false;
| ^~~~~
In file included from libavfilter/vf_deshake_opencl.c:48:
libavfilter/vf_deshake_opencl.c:603:18: error: incompatible types when assigning to type '__vector __bool int' {aka '__vector(4) __bool int'} from type 'int'
603 | result = true;
| ^~~~
libavfilter/vf_deshake_opencl.c: In function 'optimize_model':
libavfilter/vf_deshake_opencl.c:621:19: error: incompatible types when initializing type '__vector __bool int' {aka '__vector(4) __bool int'} using type 'int'
621 | bool move_x = true;
| ^~~~
libavfilter/vf_deshake_opencl.c:629:13: error: used vector type where scalar is required
629 | if (move_x) {
| ^~~~~~
libavfilter/vf_deshake_opencl.c:651:17: error: used vector type where scalar is required
651 | if (move_x) {
| ^~~~~~
libavfilter/vf_deshake_opencl.c:664:17: error: used vector type where scalar is required
664 | if (move_x) {
| ^~~~~~
In file included from libavfilter/vf_deshake_opencl.c:48:
libavfilter/vf_deshake_opencl.c:671:26: error: incompatible types when assigning to type '__vector __bool int' {aka '__vector(4) __bool int'} from type 'int'
671 | move_x = false;
| ^~~~~
libavfilter/vf_deshake_opencl.c:673:26: error: incompatible types when assigning to type '__vector __bool int' {aka '__vector(4) __bool int'} from type 'int'
673 | move_x = true;
| ^~~~
libavfilter/vf_deshake_opencl.c:621:10: warning: variable 'move_x' set but not used [-Wunused-but-set-variable]
621 | bool move_x = true;
| ^~~~~~
libavfilter/vf_deshake_opencl.c: In function 'minimize_error':
libavfilter/vf_deshake_opencl.c:692:19: error: incompatible types when initializing type '__vector __bool int' {aka '__vector(4) __bool int'} using type 'int'
692 | bool result = false;
| ^~~~~
libavfilter/vf_deshake_opencl.c:701:13: error: wrong type argument to unary exclamation mark
701 | if (!found) {
| ^
libavfilter/vf_deshake_opencl.c:703:24: error: incompatible types when returning type 'int' but '__vector __bool int' {aka '__vector(4) __bool int'} was expected
703 | return false;
| ^~~~~
In file included from libavfilter/vf_deshake_opencl.c:48:
libavfilter/vf_deshake_opencl.c:737:14: error: incompatible types when assigning to type '__vector __bool int' {aka '__vector(4) __bool int'} from type 'int'
737 | result = true;
| ^~~~
libavfilter/vf_deshake_opencl.c: In function 'deshake_opencl_uninit':
libavfilter/vf_deshake_opencl.c:1106:9: error: wrong type argument to unary exclamation mark
1106 | if (!ctx->is_yuv)
| ^
In file included from libavfilter/vf_deshake_opencl.c:48:
libavfilter/vf_deshake_opencl.c: In function 'deshake_opencl_init':
libavfilter/vf_deshake_opencl.c:1173:16: error: incompatible types when assigning to type '__vector __bool int' {aka '__vector(4) __bool int'} from type 'int'
1173 | ctx->eof = false;
| ^~~~~
libavfilter/vf_deshake_opencl.c:1265:23: error: incompatible types when assigning to type '__vector __bool int' {aka '__vector(4) __bool int'} from type 'int'
1265 | ctx->is_yuv = false;
| ^~~~~
libavfilter/vf_deshake_opencl.c:1267:23: error: incompatible types when assigning to type '__vector __bool int' {aka '__vector(4) __bool int'} from type 'int'
1267 | ctx->is_yuv = true;
| ^~~~
libavfilter/vf_deshake_opencl.c:1298:9: error: wrong type argument to unary exclamation mark
1298 | if (!ctx->is_yuv) {
| ^
libavfilter/vf_deshake_opencl.c: In function 'filter_frame':
libavfilter/vf_deshake_opencl.c:1570:34: error: wrong type argument to unary exclamation mark
1570 | if (deshake_ctx->debug_on && !deshake_ctx->is_yuv && debug_matches.num_matches > 0) {
| ^
libavfilter/vf_deshake_opencl.c: In function 'queue_frame':
libavfilter/vf_deshake_opencl.c:1796:9: error: used vector type where scalar is required
1796 | if (deshake_ctx->is_yuv) {
| ^~~~~~~~~~~
libavfilter/vf_deshake_opencl.c:1902:9: error: wrong type argument to unary exclamation mark
1902 | if (!estimate_affine_2d(
| ^
libavfilter/vf_deshake_opencl.c:1922:9: error: wrong type argument to unary exclamation mark
1922 | if (!minimize_error(
| ^
libavfilter/vf_deshake_opencl.c:1954:13: error: wrong type argument to unary exclamation mark
1954 | if (!deshake_ctx->is_yuv) {
| ^
libavfilter/vf_deshake_opencl.c: In function 'activate':
libavfilter/vf_deshake_opencl.c:2051:9: error: wrong type argument to unary exclamation mark
2051 | if (!deshake_ctx->eof) {
| ^
libavfilter/vf_deshake_opencl.c:2086:9: error: wrong type argument to unary exclamation mark
2086 | if (!deshake_ctx->eof && ff_inlink_acknowledge_status(inlink, &status, &pts)) {
| ^
In file included from libavfilter/vf_deshake_opencl.c:48:
libavfilter/vf_deshake_opencl.c:2088:32: error: incompatible types when assigning to type '__vector __bool int' {aka '__vector(4) __bool int'} from type 'int'
2088 | deshake_ctx->eof = true;
| ^~~~
libavfilter/vf_deshake_opencl.c:2092:9: error: used vector type where scalar is required
2092 | if (deshake_ctx->eof) {
| ^~~~~~~~~~~
libavfilter/vf_deshake_opencl.c:2132:9: error: wrong type argument to unary exclamation mark
2132 | if (!deshake_ctx->eof) {
| ^
make: *** [ffbuild/common.mak:59: libavfilter/vf_deshake_opencl.o] Error 1
Installed packages versions: http://koji.rpmfusion.org/kojifiles/work/tasks/8422/388422/root.log
Full build log: http://koji.rpmfusion.org/kojifiles/work/tasks/8422/388422/build.log
Change History (10)
comment:1 by , 4 years ago
comment:2 by , 4 years ago
Which ones in particular are invalid and why are they not rejected by configure? The current option set has been working for years.
comment:3 by , 4 years ago
Using arch is only defined for cross-compilation, optflags should only be used with strange compilers.
comment:4 by , 4 years ago
Ok, fair enough. I'll try to reproduce without those two, though I'm not convinced they are the culprit.
comment:6 by , 4 years ago
Sorry for the misunderstanding: This isn't about removing some options but providing the console output of ./configure && make V=1 libavfilter/vf_deshake_opencl.o to simplify reproducing the error for everybody.
comment:7 by , 4 years ago
Sure thing. Here you go:
$ ./configure && make V=1 libavfilter/vf_deshake_opencl.o
install prefix /usr/local
source path .
C compiler gcc
C library glibc
ARCH ppc (generic)
big-endian no
runtime cpu detection yes
AltiVec enabled yes
VSX enabled yes
POWER8 enabled yes
PPC 4xx optimizations no
dcbzl available yes
debug symbols yes
strip symbols yes
optimize for size no
optimizations yes
static yes
shared no
postprocessing support no
network support yes
threading support pthreads
safe bitstream reader yes
texi2html enabled no
perl enabled yes
pod2man enabled yes
makeinfo enabled yes
makeinfo supports HTML yes
External libraries:
alsa iconv libxcb_shape libxcb_xfixes sdl2
bzlib libxcb libxcb_shm lzma zlib
External libraries providing hardware acceleration:
v4l2_m2m vaapi vdpau
Libraries:
avcodec avfilter avutil swscale
avdevice avformat swresample
Programs:
ffmpeg ffplay ffprobe
Enabled decoders:
aac bitpacked hq_hqa pcm_f32be subviewer
aac_fixed bmp hqx pcm_f32le subviewer1
aac_latm bmv_audio huffyuv pcm_f64be sunrast
aasc bmv_video hymt pcm_f64le svq1
ac3 brender_pix iac pcm_lxf svq3
ac3_fixed c93 idcin pcm_mulaw tak
acelp_kelvin cavs idf pcm_s16be targa
adpcm_4xm ccaption iff_ilbm pcm_s16be_planar targa_y216
adpcm_adx cdgraphics ilbc pcm_s16le tdsc
adpcm_afc cdtoons imc pcm_s16le_planar text
adpcm_agm cdxl imm4 pcm_s24be theora
adpcm_aica cfhd imm5 pcm_s24daud thp
adpcm_argo cinepak indeo2 pcm_s24le tiertexseqvideo
adpcm_ct clearvideo indeo3 pcm_s24le_planar tiff
adpcm_dtk cljr indeo4 pcm_s32be tmv
adpcm_ea cllc indeo5 pcm_s32le truehd
adpcm_ea_maxis_xa comfortnoise interplay_acm pcm_s32le_planar truemotion1
adpcm_ea_r1 cook interplay_dpcm pcm_s64be truemotion2
adpcm_ea_r2 cpia interplay_video pcm_s64le truemotion2rt
adpcm_ea_r3 cscd jacosub pcm_s8 truespeech
adpcm_ea_xas cyuv jpeg2000 pcm_s8_planar tscc
adpcm_g722 dca jpegls pcm_u16be tscc2
adpcm_g726 dds jv pcm_u16le tta
adpcm_g726le derf_dpcm kgv1 pcm_u24be twinvq
adpcm_ima_alp dfa kmvc pcm_u24le txd
adpcm_ima_amv dirac lagarith pcm_u32be ulti
adpcm_ima_apc dnxhd loco pcm_u32le utvideo
adpcm_ima_apm dolby_e lscr pcm_u8 v210
adpcm_ima_dat4 dpx m101 pcm_vidc v210x
adpcm_ima_dk3 dsd_lsbf mace3 pcx v308
adpcm_ima_dk4 dsd_lsbf_planar mace6 pgm v408
adpcm_ima_ea_eacs dsd_msbf magicyuv pgmyuv v410
adpcm_ima_ea_sead dsd_msbf_planar mdec pgssub vb
adpcm_ima_iss dsicinaudio metasound pictor vble
adpcm_ima_mtf dsicinvideo microdvd pixlet vc1
adpcm_ima_oki dss_sp mimic pjs vc1_v4l2m2m
adpcm_ima_qt dst mjpeg png vc1image
adpcm_ima_rad dvaudio mjpegb ppm vcr1
adpcm_ima_smjpeg dvbsub mlp prores vmdaudio
adpcm_ima_ssi dvdsub mmvideo prosumer vmdvideo
adpcm_ima_wav dvvideo motionpixels psd vmnc
adpcm_ima_ws dxa movtext ptx vorbis
adpcm_ms dxtory mp1 qcelp vp3
adpcm_mtaf dxv mp1float qdm2 vp4
adpcm_psx eac3 mp2 qdmc vp5
adpcm_sbpro_2 eacmv mp2float qdraw vp6
adpcm_sbpro_3 eamad mp3 qpeg vp6a
adpcm_sbpro_4 eatgq mp3adu qtrle vp6f
adpcm_swf eatgv mp3adufloat r10k vp7
adpcm_thp eatqi mp3float r210 vp8
adpcm_thp_le eightbps mp3on4 ra_144 vp8_v4l2m2m
adpcm_vima eightsvx_exp mp3on4float ra_288 vp9
adpcm_xa eightsvx_fib mpc7 ralf vp9_v4l2m2m
adpcm_yamaha escape124 mpc8 rasc vplayer
adpcm_zork escape130 mpeg1_v4l2m2m rawvideo vqa
agm evrc mpeg1video realtext wavpack
aic exr mpeg2_v4l2m2m rl2 wcmv
alac ffv1 mpeg2video roq webp
alias_pix ffvhuff mpeg4 roq_dpcm webvtt
als ffwavesynth mpeg4_v4l2m2m rpza wmalossless
amrnb fic mpegvideo rscc wmapro
amrwb fits mpl2 rv10 wmav1
amv flac msa1 rv20 wmav2
anm flashsv mscc rv30 wmavoice
ansi flashsv2 msmpeg4v1 rv40 wmv1
ape flic msmpeg4v2 s302m wmv2
apng flv msmpeg4v3 sami wmv3
aptx fmvc msrle sanm wmv3image
aptx_hd fourxm mss1 sbc wnv1
arbc fraps mss2 scpr wrapped_avframe
ass frwu msvideo1 screenpresso ws_snd1
asv1 g2m mszh sdx2_dpcm xan_dpcm
asv2 g723_1 mts2 sgi xan_wc3
atrac1 g729 mvc1 sgirle xan_wc4
atrac3 gdv mvc2 sheervideo xbin
atrac3al gif mvdv shorten xbm
atrac3p gremlin_dpcm mvha sipr xface
atrac3pal gsm mwsc siren xl
atrac9 gsm_ms mxpeg smackaud xma1
aura h261 nellymoser smacker xma2
aura2 h263 nuv smc xpm
avrn h263_v4l2m2m on2avc smvjpeg xsub
avrp h263i opus snow xwd
avs h263p paf_audio sol_dpcm y41p
avui h264 paf_video sonic ylc
ayuv h264_v4l2m2m pam sp5x yop
bethsoftvid hap pbm speedhq yuv4
bfi hca pcm_alaw srgc zero12v
bink hcom pcm_bluray srt zerocodec
binkaudio_dct hevc pcm_dvd ssa zlib
binkaudio_rdft hevc_v4l2m2m pcm_f16le stl zmbv
bintext hnm4_video pcm_f24le subrip
Enabled encoders:
a64multi dvbsub mpeg2_vaapi pcm_u16be subrip
a64multi5 dvdsub mpeg2video pcm_u16le sunrast
aac dvvideo mpeg4 pcm_u24be svq1
ac3 eac3 mpeg4_v4l2m2m pcm_u24le targa
ac3_fixed ffv1 msmpeg4v2 pcm_u32be text
adpcm_adx ffvhuff msmpeg4v3 pcm_u32le tiff
adpcm_g722 fits msvideo1 pcm_u8 truehd
adpcm_g726 flac nellymoser pcm_vidc tta
adpcm_g726le flashsv opus pcx utvideo
adpcm_ima_qt flashsv2 pam pgm v210
adpcm_ima_wav flv pbm pgmyuv v308
adpcm_ms g723_1 pcm_alaw png v408
adpcm_swf gif pcm_dvd ppm v410
adpcm_yamaha h261 pcm_f32be prores vc2
alac h263 pcm_f32le prores_aw vorbis
alias_pix h263_v4l2m2m pcm_f64be prores_ks vp8_v4l2m2m
amv h263p pcm_f64le qtrle vp8_vaapi
apng h264_v4l2m2m pcm_mulaw r10k vp9_vaapi
aptx h264_vaapi pcm_s16be r210 wavpack
aptx_hd hevc_v4l2m2m pcm_s16be_planar ra_144 webvtt
ass hevc_vaapi pcm_s16le rawvideo wmav1
asv1 huffyuv pcm_s16le_planar roq wmav2
asv2 jpeg2000 pcm_s24be roq_dpcm wmv1
avrp jpegls pcm_s24daud rv10 wmv2
avui ljpeg pcm_s24le rv20 wrapped_avframe
ayuv magicyuv pcm_s24le_planar s302m xbm
bmp mjpeg pcm_s32be sbc xface
cinepak mjpeg_vaapi pcm_s32le sgi xsub
cljr mlp pcm_s32le_planar snow xwd
comfortnoise movtext pcm_s64be sonic y41p
dca mp2 pcm_s64le sonic_ls yuv4
dnxhd mp2fixed pcm_s8 srt zlib
dpx mpeg1video pcm_s8_planar ssa zmbv
Enabled hwaccels:
h263_vaapi hevc_vdpau mpeg2_vdpau vc1_vdpau wmv3_vaapi
h264_vaapi mjpeg_vaapi mpeg4_vaapi vp8_vaapi wmv3_vdpau
h264_vdpau mpeg1_vdpau mpeg4_vdpau vp9_vaapi
hevc_vaapi mpeg2_vaapi vc1_vaapi vp9_vdpau
Enabled parsers:
aac dca g723_1 mlp sbc
aac_latm dirac g729 mpeg4video sipr
ac3 dnxhd gif mpegaudio tak
adx dpx gsm mpegvideo vc1
av1 dvaudio h261 opus vorbis
avs2 dvbsub h263 png vp3
bmp dvd_nav h264 pnm vp8
cavsvideo dvdsub hevc rv30 vp9
cook flac mjpeg rv40 xma
Enabled demuxers:
aa dnxhd image_pbm_pipe mxf shorten
aac dsf image_pcx_pipe mxg siff
ac3 dsicin image_pgm_pipe nc sln
acm dss image_pgmyuv_pipe nistsphere smacker
act dts image_pictor_pipe nsp smjpeg
adf dtshd image_png_pipe nsv smush
adp dv image_ppm_pipe nut sol
ads dvbsub image_psd_pipe nuv sox
adx dvbtxt image_qdraw_pipe ogg spdif
aea dxa image_sgi_pipe oma srt
afc ea image_sunrast_pipe paf stl
aiff ea_cdata image_svg_pipe pcm_alaw str
aix eac3 image_tiff_pipe pcm_f32be subviewer
alp epaf image_webp_pipe pcm_f32le subviewer1
amr ffmetadata image_xpm_pipe pcm_f64be sup
amrnb filmstrip image_xwd_pipe pcm_f64le svag
amrwb fits ingenient pcm_mulaw swf
anm flac ipmovie pcm_s16be tak
apc flic ircam pcm_s16le tedcaptions
ape flv iss pcm_s24be thp
apm fourxm iv8 pcm_s24le threedostr
apng frm ivf pcm_s32be tiertexseq
aptx fsb ivr pcm_s32le tmv
aptx_hd fwse jacosub pcm_s8 truehd
aqtitle g722 jv pcm_u16be tta
argo_asf g723_1 kux pcm_u16le tty
asf g726 kvag pcm_u24be txd
asf_o g726le live_flv pcm_u24le ty
ass g729 lmlm4 pcm_u32be v210
ast gdv loas pcm_u32le v210x
au genh lrc pcm_u8 vag
av1 gif lvf pcm_vidc vc1
avi gsm lxf pjs vc1t
avr gxf m4v pmp vividas
avs h261 matroska pva vivo
avs2 h263 mgsts pvf vmd
bethsoftvid h264 microdvd qcp vobsub
bfi hca mjpeg r3d voc
bfstm hcom mjpeg_2000 rawvideo vpk
bink hevc mlp realtext vplayer
bintext hls mlv redspark vqf
bit hnm mm rl2 w64
bmv ico mmf rm wav
boa idcin mov roq wc3
brstm idf mp3 rpl webm_dash_manifest
c93 iff mpc rsd webvtt
caf ifv mpc8 rso wsaud
cavsvideo ilbc mpegps rtp wsd
cdg image2 mpegts rtsp wsvqa
cdxl image2_alias_pix mpegtsraw s337m wtv
cine image2_brender_pix mpegvideo sami wv
codec2 image2pipe mpjpeg sap wve
codec2raw image_bmp_pipe mpl2 sbc xa
concat image_dds_pipe mpsub sbg xbin
data image_dpx_pipe msf scc xmv
daud image_exr_pipe msnwc_tcp sdp xvag
dcstr image_gif_pipe mtaf sdr2 xwma
derf image_j2k_pipe mtv sds yop
dfa image_jpeg_pipe musx sdx yuv4mpegpipe
dhav image_jpegls_pipe mv segafilm
dirac image_pam_pipe mvi ser
Enabled muxers:
a64 fifo lrc pcm_alaw segment
ac3 fifo_test m4v pcm_f32be singlejpeg
adts filmstrip matroska pcm_f32le smjpeg
adx fits matroska_audio pcm_f64be smoothstreaming
aiff flac md5 pcm_f64le sox
amr flv microdvd pcm_mulaw spdif
apng framecrc mjpeg pcm_s16be spx
aptx framehash mkvtimestamp_v2 pcm_s16le srt
aptx_hd framemd5 mlp pcm_s24be stream_segment
asf g722 mmf pcm_s24le streamhash
asf_stream g723_1 mov pcm_s32be sup
ass g726 mp2 pcm_s32le swf
ast g726le mp3 pcm_s8 tee
au gif mp4 pcm_u16be tg2
avi gsm mpeg1system pcm_u16le tgp
avm2 gxf mpeg1vcd pcm_u24be truehd
avs2 h261 mpeg1video pcm_u24le tta
bit h263 mpeg2dvd pcm_u32be uncodedframecrc
caf h264 mpeg2svcd pcm_u32le vc1
cavsvideo hash mpeg2video pcm_u8 vc1t
codec2 hds mpeg2vob pcm_vidc voc
codec2raw hevc mpegts psp w64
crc hls mpjpeg rawvideo wav
dash ico mxf rm webm
data ilbc mxf_d10 roq webm_chunk
daud image2 mxf_opatom rso webm_dash_manifest
dirac image2pipe null rtp webp
dnxhd ipod nut rtp_mpegts webvtt
dts ircam oga rtsp wtv
dv ismv ogg sap wv
eac3 ivf ogv sbc yuv4mpegpipe
f4v jacosub oma scc
ffmetadata latm opus segafilm
Enabled protocols:
async file icecast rtmp tee
cache ftp md5 rtmpt udp
concat gopher mmsh rtp udplite
crypto hls mmst srtp unix
data http pipe subfile
ffrtmphttp httpproxy prompeg tcp
Enabled filters:
abench atadenoise earwax maskedmerge showspectrumpic
abitscope atempo ebur128 maskedmin showvolume
acompressor atrim edgedetect maskfun showwaves
acontrast avectorscope elbg mcompand showwavespic
acopy avgblur entropy median shuffleframes
acrossfade axcorrelate equalizer mergeplanes shuffleplanes
acrossover bandpass erosion mestimate sidechaincompress
acrusher bandreject extractplanes metadata sidechaingate
acue bass extrastereo midequalizer sidedata
addroi bbox fade minterpolate sierpinski
adeclick bench fftdnoiz mix signalstats
adeclip bilateral fftfilt movie silencedetect
adelay biquad field negate silenceremove
aderivative bitplanenoise fieldhint nlmeans sinc
adrawgraph blackdetect fieldmatch noformat sine
aecho blend fieldorder noise smptebars
aemphasis bm3d fifo normalize smptehdbars
aeval bwdif fillborders null sobel
aevalsrc cas firequalizer nullsink spectrumsynth
afade cellauto flanger nullsrc split
afftdn channelmap floodfill oscilloscope sr
afftfilt channelsplit format overlay ssim
afifo chorus fps pad stereotools
afir chromahold framepack pal100bars stereowiden
afirsrc chromakey framerate pal75bars streamselect
aformat chromashift framestep palettegen superequalizer
agate ciescope freezedetect paletteuse surround
agraphmonitor codecview freezeframes pan swaprect
ahistogram color gblur perms swapuv
aiir colorbalance geq photosensitivity tblend
aintegral colorchannelmixer gradfun pixdesctest telecine
ainterleave colorhold graphmonitor pixscope testsrc
alimiter colorkey greyedge premultiply testsrc2
allpass colorlevels haas prewitt thistogram
allrgb colorspace haldclut procamp_vaapi threshold
allyuv compand haldclutsrc pseudocolor thumbnail
aloop compensationdelay hdcd psnr tile
alphaextract concat headphone qp tlut2
alphamerge convolution hflip random tmix
amerge convolve highpass readeia608 tonemap
ametadata copy highshelf readvitc tonemap_vaapi
amix crop hilbert realtime tpad
amovie crossfeed histogram remap transpose
amplify crystalizer hqx removegrain transpose_vaapi
amultiply cue hstack removelogo treble
anequalizer curves hue replaygain tremolo
anlmdn datascope hwdownload reverse trim
anlms dcshift hwmap rgbashift unpremultiply
anoisesrc dctdnoiz hwupload rgbtestsrc unsharp
anull deband hysteresis roberts v360
anullsink deblock idet rotate vectorscope
anullsrc decimate il scale vflip
apad deconvolve inflate scale2ref vfrdet
aperms dedot interleave scale_vaapi vibrance
aphasemeter deesser join scroll vibrato
aphaser deflate lagfun select vignette
apulsator deflicker lenscorrection selectivecolor vmafmotion
arealtime deinterlace_vaapi life sendcmd volume
aresample dejudder limiter separatefields volumedetect
areverse denoise_vaapi loop setdar vstack
arnndn derain loudnorm setfield w3fdif
aselect deshake lowpass setparams waveform
asendcmd despill lowshelf setpts weave
asetnsamples detelecine lumakey setrange xbr
asetpts dilation lut setsar xfade
asetrate displace lut1d settb xmedian
asettb dnn_processing lut2 sharpness_vaapi xstack
ashowinfo doubleweave lut3d showcqt yadif
asidedata drawbox lutrgb showfreqs yaepblur
asoftclip drawgraph lutyuv showinfo yuvtestsrc
asplit drawgrid mandelbrot showpalette zoompan
astats drmeter maskedclamp showspatial
astreamselect dynaudnorm maskedmax showspectrum
Enabled bsfs:
aac_adtstoasc eac3_core hevc_metadata mpeg2_metadata trace_headers
av1_frame_merge extract_extradata hevc_mp4toannexb mpeg4_unpack_bframes truehd_core
av1_frame_split filter_units imx_dump_header noise vp9_metadata
av1_metadata h264_metadata mjpeg2jpeg null vp9_raw_reorder
chomp h264_mp4toannexb mjpega_dump_header prores_metadata vp9_superframe
dca_core h264_redundant_pps mov2textsub remove_extradata vp9_superframe_split
dump_extradata hapqa_extract mp3_header_decompress text2movsub
Enabled indevs:
alsa lavfi v4l2
fbdev oss xcbgrab
Enabled outdevs:
alsa fbdev oss sdl2 v4l2
License: LGPL version 2.1 or later
libavutil/avconfig.h is unchanged
libavcodec/codec_list.c is unchanged
libavcodec/parser_list.c is unchanged
libavcodec/bsf_list.c is unchanged
libavformat/demuxer_list.c is unchanged
libavformat/muxer_list.c is unchanged
libavdevice/indev_list.c is unchanged
libavdevice/outdev_list.c is unchanged
libavformat/protocol_list.c is unchanged
touch .version
gcc -I. -I./ -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600 -DZLIB_CONST -std=c11 -fomit-frame-pointer -maltivec -mabi=altivec -mvsx -pthread -g -Wdeclaration-after-statement -Wall -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wwrite-strings -Wtype-limits -Wundef -Wmissing-prototypes -Wno-pointer-to-int-cast -Wstrict-prototypes -Wempty-body -Wno-parentheses -Wno-switch -Wno-format-zero-length -Wno-pointer-sign -Wno-unused-const-variable -Wno-bool-operation -Wno-char-subscripts -O3 -fno-math-errno -fno-signed-zeros -fno-tree-vectorize -Werror=format-security -Werror=implicit-function-declaration -Werror=missing-prototypes -Werror=return-type -Werror=vla -Wformat -fdiagnostics-color=auto -Wno-maybe-uninitialized -I/usr/include/SDL2 -D_REENTRANT -MMD -MF libavfilter/vf_deshake_opencl.d -MT libavfilter/vf_deshake_opencl.o -c -o libavfilter/vf_deshake_opencl.o libavfilter/vf_deshake_opencl.c
In file included from /usr/include/CL/cl.h:32,
from ./libavutil/hwcontext_opencl.h:25,
from libavfilter/opencl.h:31,
from libavfilter/vf_deshake_opencl.c:64:
/usr/include/CL/cl_version.h:34:9: note: '#pragma message: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 220 (OpenCL 2.2)'
34 | #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 220 (OpenCL 2.2)")
| ^~~~~~~
libavfilter/vf_deshake_opencl.c: In function 'points_not_collinear':
libavfilter/vf_deshake_opencl.c:376:24: error: incompatible types when returning type 'int' but '__vector __bool int' {aka '__vector(4) __bool int'} was expected
376 | return false;
| ^~~~~
libavfilter/vf_deshake_opencl.c:381:12: error: incompatible types when returning type 'int' but '__vector __bool int' {aka '__vector(4) __bool int'} was expected
381 | return true;
| ^~~~
libavfilter/vf_deshake_opencl.c: In function 'check_subset':
libavfilter/vf_deshake_opencl.c:400:12: error: used vector type where scalar is required
400 | return points_not_collinear(prev_points) && points_not_collinear(curr_points);
| ^~~~~~~~~~~~~~~~~~~~
libavfilter/vf_deshake_opencl.c: In function 'get_subset':
libavfilter/vf_deshake_opencl.c:436:23: error: wrong type argument to unary exclamation mark
436 | if (i == 3 && !check_subset(pairs_subset)) {
| ^
libavfilter/vf_deshake_opencl.c:442:19: error: incompatible types when returning type 'int' but '__vector __bool int' {aka '__vector(4) __bool int'} was expected
442 | return i == 3 && iters < max_attempts;
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
libavfilter/vf_deshake_opencl.c: In function 'estimate_affine_2d':
libavfilter/vf_deshake_opencl.c:538:19: error: incompatible types when initializing type '__vector __bool int' {aka '__vector(4) __bool int'} using type 'int'
538 | bool result = false;
| ^~~~~
libavfilter/vf_deshake_opencl.c:547:16: error: incompatible types when returning type 'int' but '__vector __bool int' {aka '__vector(4) __bool int'} was expected
547 | return false;
| ^~~~~
libavfilter/vf_deshake_opencl.c:556:16: error: incompatible types when returning type 'int' but '__vector __bool int' {aka '__vector(4) __bool int'} was expected
556 | return true;
| ^~~~
libavfilter/vf_deshake_opencl.c:562:13: error: wrong type argument to unary exclamation mark
562 | if (!found) {
| ^
libavfilter/vf_deshake_opencl.c:564:24: error: incompatible types when returning type 'int' but '__vector __bool int' {aka '__vector(4) __bool int'} was expected
564 | return false;
| ^~~~~
In file included from libavfilter/vf_deshake_opencl.c:48:
libavfilter/vf_deshake_opencl.c:603:18: error: incompatible types when assigning to type '__vector __bool int' {aka '__vector(4) __bool int'} from type 'int'
603 | result = true;
| ^~~~
libavfilter/vf_deshake_opencl.c: In function 'optimize_model':
libavfilter/vf_deshake_opencl.c:621:19: error: incompatible types when initializing type '__vector __bool int' {aka '__vector(4) __bool int'} using type 'int'
621 | bool move_x = true;
| ^~~~
libavfilter/vf_deshake_opencl.c:629:13: error: used vector type where scalar is required
629 | if (move_x) {
| ^~~~~~
libavfilter/vf_deshake_opencl.c:651:17: error: used vector type where scalar is required
651 | if (move_x) {
| ^~~~~~
libavfilter/vf_deshake_opencl.c:664:17: error: used vector type where scalar is required
664 | if (move_x) {
| ^~~~~~
In file included from libavfilter/vf_deshake_opencl.c:48:
libavfilter/vf_deshake_opencl.c:671:26: error: incompatible types when assigning to type '__vector __bool int' {aka '__vector(4) __bool int'} from type 'int'
671 | move_x = false;
| ^~~~~
libavfilter/vf_deshake_opencl.c:673:26: error: incompatible types when assigning to type '__vector __bool int' {aka '__vector(4) __bool int'} from type 'int'
673 | move_x = true;
| ^~~~
libavfilter/vf_deshake_opencl.c:621:10: warning: variable 'move_x' set but not used [-Wunused-but-set-variable]
621 | bool move_x = true;
| ^~~~~~
libavfilter/vf_deshake_opencl.c: In function 'minimize_error':
libavfilter/vf_deshake_opencl.c:692:19: error: incompatible types when initializing type '__vector __bool int' {aka '__vector(4) __bool int'} using type 'int'
692 | bool result = false;
| ^~~~~
libavfilter/vf_deshake_opencl.c:701:13: error: wrong type argument to unary exclamation mark
701 | if (!found) {
| ^
libavfilter/vf_deshake_opencl.c:703:24: error: incompatible types when returning type 'int' but '__vector __bool int' {aka '__vector(4) __bool int'} was expected
703 | return false;
| ^~~~~
In file included from libavfilter/vf_deshake_opencl.c:48:
libavfilter/vf_deshake_opencl.c:737:14: error: incompatible types when assigning to type '__vector __bool int' {aka '__vector(4) __bool int'} from type 'int'
737 | result = true;
| ^~~~
libavfilter/vf_deshake_opencl.c: In function 'deshake_opencl_uninit':
libavfilter/vf_deshake_opencl.c:1106:9: error: wrong type argument to unary exclamation mark
1106 | if (!ctx->is_yuv)
| ^
In file included from libavfilter/vf_deshake_opencl.c:48:
libavfilter/vf_deshake_opencl.c: In function 'deshake_opencl_init':
libavfilter/vf_deshake_opencl.c:1173:16: error: incompatible types when assigning to type '__vector __bool int' {aka '__vector(4) __bool int'} from type 'int'
1173 | ctx->eof = false;
| ^~~~~
libavfilter/vf_deshake_opencl.c:1265:23: error: incompatible types when assigning to type '__vector __bool int' {aka '__vector(4) __bool int'} from type 'int'
1265 | ctx->is_yuv = false;
| ^~~~~
libavfilter/vf_deshake_opencl.c:1267:23: error: incompatible types when assigning to type '__vector __bool int' {aka '__vector(4) __bool int'} from type 'int'
1267 | ctx->is_yuv = true;
| ^~~~
libavfilter/vf_deshake_opencl.c:1298:9: error: wrong type argument to unary exclamation mark
1298 | if (!ctx->is_yuv) {
| ^
libavfilter/vf_deshake_opencl.c: In function 'filter_frame':
libavfilter/vf_deshake_opencl.c:1570:34: error: wrong type argument to unary exclamation mark
1570 | if (deshake_ctx->debug_on && !deshake_ctx->is_yuv && debug_matches.num_matches > 0) {
| ^
libavfilter/vf_deshake_opencl.c: In function 'queue_frame':
libavfilter/vf_deshake_opencl.c:1796:9: error: used vector type where scalar is required
1796 | if (deshake_ctx->is_yuv) {
| ^~~~~~~~~~~
libavfilter/vf_deshake_opencl.c:1902:9: error: wrong type argument to unary exclamation mark
1902 | if (!estimate_affine_2d(
| ^
libavfilter/vf_deshake_opencl.c:1922:9: error: wrong type argument to unary exclamation mark
1922 | if (!minimize_error(
| ^
libavfilter/vf_deshake_opencl.c:1954:13: error: wrong type argument to unary exclamation mark
1954 | if (!deshake_ctx->is_yuv) {
| ^
libavfilter/vf_deshake_opencl.c: In function 'activate':
libavfilter/vf_deshake_opencl.c:2051:9: error: wrong type argument to unary exclamation mark
2051 | if (!deshake_ctx->eof) {
| ^
libavfilter/vf_deshake_opencl.c:2086:9: error: wrong type argument to unary exclamation mark
2086 | if (!deshake_ctx->eof && ff_inlink_acknowledge_status(inlink, &status, &pts)) {
| ^
In file included from libavfilter/vf_deshake_opencl.c:48:
libavfilter/vf_deshake_opencl.c:2088:32: error: incompatible types when assigning to type '__vector __bool int' {aka '__vector(4) __bool int'} from type 'int'
2088 | deshake_ctx->eof = true;
| ^~~~
libavfilter/vf_deshake_opencl.c:2092:9: error: used vector type where scalar is required
2092 | if (deshake_ctx->eof) {
| ^~~~~~~~~~~
libavfilter/vf_deshake_opencl.c:2132:9: error: wrong type argument to unary exclamation mark
2132 | if (!deshake_ctx->eof) {
| ^
make: *** [ffbuild/common.mak:59: libavfilter/vf_deshake_opencl.o] Error 1
$
comment:8 by , 4 years ago
I guess these are also relevant:
$ gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/libexec/gcc/ppc64le-redhat-linux/10/lto-wrapper OFFLOAD_TARGET_NAMES=nvptx-none OFFLOAD_TARGET_DEFAULT=1 Target: ppc64le-redhat-linux Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,objc,obj-c++,ada,go,lto --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-targets=powerpcle-linux --disable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=gnu --enable-plugin --enable-initfini-array --with-isl --enable-offload-targets=nvptx-none --without-cuda-driver --enable-gnu-indirect-function --enable-secureplt --with-long-double-128 --with-cpu-32=power8 --with-tune-32=power8 --with-cpu-64=power8 --with-tune-64=power8 --build=ppc64le-redhat-linux Thread model: posix Supported LTO compression algorithms: zlib zstd gcc version 10.0.1 20200328 (Red Hat 10.0.1-0.11) (GCC) $ rpm -q gcc opencl-headers ocl-icd-devel gcc-10.0.1-0.11.fc33.ppc64le opencl-headers-2.2-7.20200218git96f5bde.fc33.noarch ocl-icd-devel-2.2.12-9.fc32.ppc64le
comment:9 by , 4 years ago
| Keywords: | ppc opencl added |
|---|---|
| Resolution: | → fixed |
| Status: | new → closed |
Fixed in 00ce1ec6a5d301b4075e2e7e5c9ea3b37c9c4be5, thank you for the report!



Some of the configure flags look invalid to me (don't worry, OpenBSD has the same issue), please test current FFmpeg git head with a simplified configure line to make this a valid ticket.