﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
620	MSYS2/MinGW/GCC9: InterpolationFilter_avx.cpp: x86 compile trying to use x86-64 intrinsics	ligh_de		"CFLAGS: -mthreads -mtune=generic -O2 -pipe
LDFLAGS: -pipe -static-libgcc -static-libstdc++

{{{
[6/141] Building CXX object source/Lib/CommonAnalyserLib/CMakeFiles/CommonAnalyserLib.dir/__/CommonLib/x86/avx/InterpolationFilter_avx.cpp.o
FAILED: source/Lib/CommonAnalyserLib/CMakeFiles/CommonAnalyserLib.dir/__/CommonLib/x86/avx/InterpolationFilter_avx.cpp.o 
E:\MABS\local32\bin\g++.bat  -DENABLE_SPLIT_PARALLELISM=0 -DRExt__DECODER_DEBUG_BIT_STATISTICS=1 -DRExt__DECODER_DEBUG_TOOL_STATISTICS=1 -DUSE_AVX -I../source/Lib/CommonAnalyserLib/../CommonLib/. -I../source/Lib/CommonAnalyserLib/../CommonLib/.. -I../source/Lib/CommonAnalyserLib/../CommonLib/x86 -I../source/Lib/CommonAnalyserLib/../libmd5 -mthreads -mtune=generic -O2 -pipe -fopenmp -O3 -DNDEBUG   -Wall -fdiagnostics-show-option -Werror -Wno-sign-compare -Wno-class-memaccess -msse4.1 -mthreads -std=gnu++11 -mavx -MD -MT source/Lib/CommonAnalyserLib/CMakeFiles/CommonAnalyserLib.dir/__/CommonLib/x86/avx/InterpolationFilter_avx.cpp.o -MF source\Lib\CommonAnalyserLib\CMakeFiles\CommonAnalyserLib.dir\__\CommonLib\x86\avx\InterpolationFilter_avx.cpp.o.d -o source/Lib/CommonAnalyserLib/CMakeFiles/CommonAnalyserLib.dir/__/CommonLib/x86/avx/InterpolationFilter_avx.cpp.o -c ../source/Lib/CommonLib/x86/avx/InterpolationFilter_avx.cpp
In file included from ../source/Lib/CommonLib/x86/avx/InterpolationFilter_avx.cpp:1:
../source/Lib/CommonLib/x86/avx/../InterpolationFilterX86.h: In function 'void simdInterpolateN2_HIGHBIT_M4(const int16_t*, int, int16_t*, int, int, int, int, int, int, const ClpRng&, const int16_t*)':
../source/Lib/CommonLib/x86/avx/../InterpolationFilterX86.h:1085:21: error: there are no arguments to '_mm_cvtsi64_si128' that depend on a template parameter, so a declaration of '_mm_cvtsi64_si128' must be available [-fpermissive]
 1085 |   __m128i mmShift = _mm_cvtsi64_si128(shift);
      |                     ^~~~~~~~~~~~~~~~~
../source/Lib/CommonLib/x86/avx/../InterpolationFilterX86.h:1085:21: note: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
../source/Lib/CommonLib/x86/avx/../InterpolationFilterX86.h: In instantiation of 'void simdInterpolateN2_HIGHBIT_M4(const int16_t*, int, int16_t*, int, int, int, int, int, int, const ClpRng&, const int16_t*) [with X86_VEXT vext = AVX; bool isLast = false; int16_t = short int]':
../source/Lib/CommonLib/x86/avx/../InterpolationFilterX86.h:1284:53:   required from 'void simdFilter(const ClpRng&, const Pel*, int, Pel*, int, int, int, const TFilterCoeff*, bool) [with X86_VEXT vext = AVX; int N = 8; bool isVertical = false; bool isFirst = false; bool isLast = false; Pel = short int; TFilterCoeff = short int]'
../source/Lib/CommonLib/x86/avx/../InterpolationFilterX86.h:1447:24:   required from 'void InterpolationFilter::_initInterpolationFilterX86() [with X86_VEXT vext = AVX]'
../source/Lib/CommonLib/x86/avx/../InterpolationFilterX86.h:1485:73:   required from here
../source/Lib/CommonLib/x86/avx/../InterpolationFilterX86.h:1085:38: error: '_mm_cvtsi64_si128' was not declared in this scope; did you mean '_mm_cvtsi32_si128'?
 1085 |   __m128i mmShift = _mm_cvtsi64_si128(shift);
      |                     ~~~~~~~~~~~~~~~~~^~~~~~~
      |                     _mm_cvtsi32_si128
../source/Lib/CommonLib/x86/avx/../InterpolationFilterX86.h: In instantiation of 'void simdInterpolateN2_HIGHBIT_M4(const int16_t*, int, int16_t*, int, int, int, int, int, int, const ClpRng&, const int16_t*) [with X86_VEXT vext = AVX; bool isLast = true; int16_t = short int]':
../source/Lib/CommonLib/x86/avx/../InterpolationFilterX86.h:1284:53:   required from 'void simdFilter(const ClpRng&, const Pel*, int, Pel*, int, int, int, const TFilterCoeff*, bool) [with X86_VEXT vext = AVX; int N = 8; bool isVertical = false; bool isFirst = false; bool isLast = true; Pel = short int; TFilterCoeff = short int]'
../source/Lib/CommonLib/x86/avx/../InterpolationFilterX86.h:1448:24:   required from 'void InterpolationFilter::_initInterpolationFilterX86() [with X86_VEXT vext = AVX]'
../source/Lib/CommonLib/x86/avx/../InterpolationFilterX86.h:1485:73:   required from here
../source/Lib/CommonLib/x86/avx/../InterpolationFilterX86.h:1085:38: error: '_mm_cvtsi64_si128' was not declared in this scope; did you mean '_mm_cvtsi32_si128'?
 1085 |   __m128i mmShift = _mm_cvtsi64_si128(shift);
      |                     ~~~~~~~~~~~~~~~~~^~~~~~~
      |                     _mm_cvtsi32_si128

}}}
"	defect	new	blocker		VTM	VTM-6.2		x86 assembler build	ksuehring XiangLi fbossen jvet@…
