[MacPorts] #59637: babl @0.1.72+universal: error: initializing '__m128i' (vector of 2 'long long' values) with an expression of incompatible type 'int'
MacPorts
noreply at macports.org
Mon Nov 11 21:28:58 UTC 2019
#59637: babl @0.1.72+universal: error: initializing '__m128i' (vector of 2 'long
long' values) with an expression of incompatible type 'int'
-------------------------+----------------------
Reporter: ryandesign | Owner: dbevans
Type: defect | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version: 2.6.2
Resolution: | Keywords:
Port: babl |
-------------------------+----------------------
Comment (by dbevans):
This problem seems to be similar to the (non universal) build failure on
10.10.
{{{
FAILED: extensions/20ef773@@sse-half at sha/sse-half.c.o
/usr/bin/clang -Iextensions/20ef773@@sse-half at sha -Iextensions
-I../babl-0.1.72/extensions -I. -I../babl-0.1.72/ -Ibabl
-I../babl-0.1.72/babl -I/opt/local/include -Xclang -fcolor-diagnostics
-pipe -Wall -Winvalid-pch -g -Ofast -Wdeclaration-after-statement -Winit-
self -Wmissing-declarations -Wmissing-prototypes -Wold-style-definition
-Wpointer-arith -mmmx -msse -mfpmath=sse -Os -arch x86_64 -msse4.1 -mf16c
-MD -MQ 'extensions/20ef773@@sse-half at sha/sse-half.c.o' -MF
'extensions/20ef773@@sse-half at sha/sse-half.c.o.d' -o 'extensions/20ef773
@@sse-half at sha/sse-half.c.o' -c ../babl-0.1.72/extensions/sse-half.c
../babl-0.1.72/extensions/sse-half.c:49:32: warning: implicit declaration
of function '_mm_cvtph_ps' is invalid in C99 [-Wimplicit-function-
declaration]
__v4sf out_val = (__v4sf)_mm_cvtph_ps(in_val);
^
../babl-0.1.72/extensions/sse-half.c:49:24: error: invalid conversion
between vector type '__v4sf' (vector of 4 'float' values) and integer type
'int' of different size
__v4sf out_val = (__v4sf)_mm_cvtph_ps(in_val);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../babl-0.1.72/extensions/sse-half.c:60:24: error: invalid conversion
between vector type '__v4sf' (vector of 4 'float' values) and integer type
'int' of different size
__v4sf out_val = (__v4sf)_mm_cvtph_ps(in_val);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../babl-0.1.72/extensions/sse-half.c:110:25: warning: implicit declaration
of function '_mm_cvtps_ph' is invalid in C99 [-Wimplicit-function-
declaration]
__m128i out_val = _mm_cvtps_ph(in_val, _MM_FROUND_TO_NEAREST_INT |
_MM_FROUND_NO_EXC);
^
../babl-0.1.72/extensions/sse-half.c:110:15: error: initializing '__m128i'
(vector of 2 'long long' values) with an expression of incompatible type
'int'
__m128i out_val = _mm_cvtps_ph(in_val, _MM_FROUND_TO_NEAREST_INT |
_MM_FROUND_NO_EXC);
^
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../babl-0.1.72/extensions/sse-half.c:121:15: error: initializing '__m128i'
(vector of 2 'long long' values) with an expression of incompatible type
'int'
__m128i out_val = _mm_cvtps_ph(in_val, _MM_FROUND_TO_NEAREST_INT |
_MM_FROUND_NO_EXC);
}}}
Looks like, specifically, the sse-half babl extension is using newer SSE
compiler instructions that are not recognized on older compilers. A
similar problem was found in graphene. Trying a tentative fix for 10.10
(https://github.com/macports/macports-
ports/commit/2071cbdb2d77350462172f62bddf68f6e380aaed) and looking into
this in more detail.
@ryandesign: on which platform, compiler did your reported errors appear?
--
Ticket URL: <https://trac.macports.org/ticket/59637#comment:3>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list