<div dir="ltr"><div>Hi again,</div><div><br></div><div>Since that didn't work, I manually added a typedef definition for it, and it works now on both am64 machine and arm64 porter box - with passing build-time tests.<br></div><div>I've pushed to salsa.</div><div><br></div><div>I'd be really grateful if you could take a look at my changes and let me know if they look fine.</div><div><br></div><div>Also, another question: This package has a MPL-2.0 license and AFAIK, MPL is a restrictive Free software license, so does this qualify for adding in a "Built-Using" field?<br></div><div><br></div><div>Thanks and regards</div><div>Nilesh<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, 7 Dec 2020 at 16:19, Nilesh Patra <<a href="mailto:npatra974@gmail.com">npatra974@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Hi Michael</div><div><br></div><div>Thanks for the hint, I did this (not yet pushed):</div><div><br></div><div>-#include <xmmintrin.h><br>-<br> /* yes I know, the top of this file is quite ugly */<br> <br>+define SIMDE_ENABLE_NATIVE_ALIASES<br>+#include <simde/x86/sse.h><br></div><div><br></div><div>But I end up with the same error that I pasted earlier. Am I missing something in the hint?</div><div>Please let me know.</div><div>(I checked the code for xmmintrin.h and indeed the typedef should be included on the above diff simde patch - I've no idea why this doesn't.)<br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, 7 Dec 2020 at 16:04, Michael Crusoe <<a href="mailto:michael.crusoe@gmail.com" target="_blank">michael.crusoe@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Hey Nilesh,</div><div><br></div><div>No problem for me when you ask for help!</div><div><br></div><div>I suspect that <a href="https://salsa.debian.org/med-team/scrappie/-/commit/a00691d910110a460ef5e61a6c74cc2cb0e1a626#5dc91bdd30262777c0556235b73413cd5865a144_0_31" target="_blank">https://salsa.debian.org/med-team/scrappie/-/commit/a00691d910110a460ef5e61a6c74cc2cb0e1a626#5dc91bdd30262777c0556235b73413cd5865a144_0_31</a> is the issue</div><div>You should add the regular simde includes here, so that v4sf typedef works</div><div><br></div><div><pre lang="diff"><span id="gmail-m_-4898862680754072158gmail-m_-1010994603390413505gmail-LC42" lang="diff"><span>define SIMDE_ENABLE_NATIVE_ALIASES</span></span>
<span id="gmail-m_-4898862680754072158gmail-m_-1010994603390413505gmail-LC43" lang="diff"><span>#include <simde/x86/sse.h></span></span>
</pre></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, 7 Dec 2020 at 11:28, Nilesh Patra <<a href="mailto:npatra974@gmail.com" target="_blank">npatra974@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi Michael and others,<br>
<br>
Scrappie looks like a candidate where we can use the simde trick.<br>
I tried doing a patch, and it works on amd64 machine, but not on an arm64 porter box :/ (with issues with __v4sf)<br>
<br>
And I'm not sure how to fix this, and hence this is a humble request to please take a look - and any help/hints would be really great.<br>
My patch is pushed to salsa[1]<br>
I'm also sorry if these pings are somehow irritating, since I need help admittedly.<br>
<br>
[1]: <a href="https://salsa.debian.org/med-team/scrappie" rel="noreferrer" target="_blank">https://salsa.debian.org/med-team/scrappie</a><br>
<br>
Pasting the (relevant part of) failing arm64 log:<br>
<br>
make[1]: Entering directory '/home/nilesh/scrappie/scrappie'<br>
mkdir build<br>
cd build && \<br>
cmake .. -DCMAKE_BUILD_TYPE=Release && \<br>
make<br>
-- The C compiler identification is GNU 10.2.0<br>
-- Detecting C compiler ABI info<br>
-- Detecting C compiler ABI info - done<br>
-- Check for working C compiler: /usr/bin/cc - skipped<br>
-- Detecting C compile features<br>
-- Detecting C compile features - done<br>
-- Performing Test HAS_OPENMP<br>
-- Performing Test HAS_OPENMP - Success<br>
-- Looking for hdf5.h<br>
-- Looking for hdf5.h - not found<br>
-- Looking for hdf5/serial/hdf5.h<br>
-- Looking for hdf5/serial/hdf5.h - found<br>
-- Configuring done<br>
-- Generating done<br>
-- Build files have been written to: /home/nilesh/scrappie/scrappie/build<br>
make[2]: Entering directory '/home/nilesh/scrappie/scrappie/build'<br>
make[2]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.<br>
make[3]: Entering directory '/home/nilesh/scrappie/scrappie/build'<br>
make[4]: Entering directory '/home/nilesh/scrappie/scrappie/build'<br>
Scanning dependencies of target scrappie_objects<br>
make[4]: Leaving directory '/home/nilesh/scrappie/scrappie/build'<br>
make[4]: Entering directory '/home/nilesh/scrappie/scrappie/build'<br>
[ 2%] Building C object CMakeFiles/scrappie_objects.dir/src/decode.c.o<br>
In file included from /usr/include/simde/x86/avx.h:27,<br>
from /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6,<br>
from /home/nilesh/scrappie/scrappie/src/decode.h:5,<br>
from /home/nilesh/scrappie/scrappie/src/decode.c:3:<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h: In function 'log_ps':<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:106:22: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
106 | x = _mm_max_ps(x, *(v4sf*)_ps_min_norm_pos); /* cut off denormalized stuff */<br>
| ^~~~~~~~~~~~~~~~~~~~~~~<br>
In file included from /usr/include/simde/x86/avx.h:27,<br>
from /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6,<br>
from /home/nilesh/scrappie/scrappie/src/decode.h:5,<br>
from /home/nilesh/scrappie/scrappie/src/decode.c:3:<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:110:22: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
110 | x = _mm_and_ps(x, *(v4sf*)_ps_inv_mant_mask);<br>
| ^~~~~~~~~~~~~~~~~~~~~~~~<br>
In file included from /usr/include/simde/x86/sse3.h:30,<br>
from /usr/include/simde/x86/ssse3.h:30,<br>
from /usr/include/simde/x86/sse4.1.h:31,<br>
from /usr/include/simde/x86/sse4.2.h:31,<br>
from /usr/include/simde/x86/avx.h:31,<br>
from /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6,<br>
from /home/nilesh/scrappie/scrappie/src/decode.h:5,<br>
from /home/nilesh/scrappie/scrappie/src/decode.c:3:<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:113:31: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
113 | emm0 = _mm_sub_epi32(emm0, *(v4si*)_pi32_0x7f);<br>
| ^~~~~~~~~~~~~~~~~<br>
In file included from /usr/include/simde/x86/sse3.h:30,<br>
from /usr/include/simde/x86/ssse3.h:30,<br>
from /usr/include/simde/x86/sse4.1.h:31,<br>
from /usr/include/simde/x86/sse4.2.h:31,<br>
from /usr/include/simde/x86/avx.h:31,<br>
from /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6,<br>
from /home/nilesh/scrappie/scrappie/src/decode.h:5,<br>
from /home/nilesh/scrappie/scrappie/src/decode.c:3:<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h: In function 'exp_ps':<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:228:31: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
228 | emm0 = _mm_add_epi32(emm0, *(v4si*)_pi32_0x7f);<br>
| ^~~~~~~~~~~~~~~~~<br>
In file included from /usr/include/simde/x86/avx.h:27,<br>
from /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6,<br>
from /home/nilesh/scrappie/scrappie/src/decode.h:5,<br>
from /home/nilesh/scrappie/scrappie/src/decode.c:3:<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h: In function 'sin_ps':<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:281:22: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
281 | x = _mm_and_ps(x, *(v4sf*)_ps_inv_sign_mask);<br>
| ^~~~~~~~~~~~~~~~~~~~~~~~<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:283:36: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
283 | sign_bit = _mm_and_ps(sign_bit, *(v4sf*)_ps_sign_mask);<br>
| ^~~~~~~~~~~~~~~~~~~~<br>
In file included from /usr/include/simde/x86/sse3.h:30,<br>
from /usr/include/simde/x86/ssse3.h:30,<br>
from /usr/include/simde/x86/sse4.1.h:31,<br>
from /usr/include/simde/x86/sse4.2.h:31,<br>
from /usr/include/simde/x86/avx.h:31,<br>
from /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6,<br>
from /home/nilesh/scrappie/scrappie/src/decode.h:5,<br>
from /home/nilesh/scrappie/scrappie/src/decode.c:3:<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:291:31: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
291 | emm2 = _mm_add_epi32(emm2, *(v4si*)_pi32_1);<br>
| ^~~~~~~~~~~~~~<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:292:31: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
292 | emm2 = _mm_and_si128(emm2, *(v4si*)_pi32_inv1);<br>
| ^~~~~~~~~~~~~~~~~<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:296:31: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
296 | emm0 = _mm_and_si128(emm2, *(v4si*)_pi32_4);<br>
| ^~~~~~~~~~~~~~<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:304:31: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
304 | emm2 = _mm_and_si128(emm2, *(v4si*)_pi32_2);<br>
| ^~~~~~~~~~~~~~<br>
In file included from /usr/include/simde/x86/avx.h:27,<br>
from /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6,<br>
from /home/nilesh/scrappie/scrappie/src/decode.h:5,<br>
from /home/nilesh/scrappie/scrappie/src/decode.c:3:<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h: In function 'cos_ps':<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:364:22: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
364 | x = _mm_and_ps(x, *(v4sf*)_ps_inv_sign_mask);<br>
| ^~~~~~~~~~~~~~~~~~~~~~~~<br>
In file included from /usr/include/simde/x86/sse3.h:30,<br>
from /usr/include/simde/x86/ssse3.h:30,<br>
from /usr/include/simde/x86/sse4.1.h:31,<br>
from /usr/include/simde/x86/sse4.2.h:31,<br>
from /usr/include/simde/x86/avx.h:31,<br>
from /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6,<br>
from /home/nilesh/scrappie/scrappie/src/decode.h:5,<br>
from /home/nilesh/scrappie/scrappie/src/decode.c:3:<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:372:31: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
372 | emm2 = _mm_add_epi32(emm2, *(v4si*)_pi32_1);<br>
| ^~~~~~~~~~~~~~<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:373:31: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
373 | emm2 = _mm_and_si128(emm2, *(v4si*)_pi32_inv1);<br>
| ^~~~~~~~~~~~~~~~~<br>
In file included from /usr/include/simde/x86/sse3.h:30,<br>
from /usr/include/simde/x86/ssse3.h:30,<br>
from /usr/include/simde/x86/sse4.1.h:31,<br>
from /usr/include/simde/x86/sse4.2.h:31,<br>
from /usr/include/simde/x86/avx.h:31,<br>
from /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6,<br>
from /home/nilesh/scrappie/scrappie/src/decode.h:5,<br>
from /home/nilesh/scrappie/scrappie/src/decode.c:3:<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:376:31: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
376 | emm2 = _mm_sub_epi32(emm2, *(v4si*)_pi32_2);<br>
| ^~~~~~~~~~~~~~<br>
In file included from /usr/include/simde/x86/sse3.h:30,<br>
from /usr/include/simde/x86/ssse3.h:30,<br>
from /usr/include/simde/x86/sse4.1.h:31,<br>
from /usr/include/simde/x86/sse4.2.h:31,<br>
from /usr/include/simde/x86/avx.h:31,<br>
from /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6,<br>
from /home/nilesh/scrappie/scrappie/src/decode.h:5,<br>
from /home/nilesh/scrappie/scrappie/src/decode.c:3:<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:379:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
379 | emm0 = _mm_andnot_si128(emm2, *(v4si*)_pi32_4);<br>
| ^~~~~~~~~~~~~~<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:382:31: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
382 | emm2 = _mm_and_si128(emm2, *(v4si*)_pi32_2);<br>
| ^~~~~~~~~~~~~~<br>
In file included from /usr/include/simde/x86/avx.h:27,<br>
from /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6,<br>
from /home/nilesh/scrappie/scrappie/src/decode.h:5,<br>
from /home/nilesh/scrappie/scrappie/src/decode.c:3:<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h: In function 'sincos_ps':<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:444:22: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
444 | x = _mm_and_ps(x, *(v4sf*)_ps_inv_sign_mask);<br>
| ^~~~~~~~~~~~~~~~~~~~~~~~<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:446:44: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
446 | sign_bit_sin = _mm_and_ps(sign_bit_sin, *(v4sf*)_ps_sign_mask);<br>
| ^~~~~~~~~~~~~~~~~~~~<br>
In file included from /usr/include/simde/x86/sse3.h:30,<br>
from /usr/include/simde/x86/ssse3.h:30,<br>
from /usr/include/simde/x86/sse4.1.h:31,<br>
from /usr/include/simde/x86/sse4.2.h:31,<br>
from /usr/include/simde/x86/avx.h:31,<br>
from /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6,<br>
from /home/nilesh/scrappie/scrappie/src/decode.h:5,<br>
from /home/nilesh/scrappie/scrappie/src/decode.c:3:<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:455:31: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
455 | emm2 = _mm_add_epi32(emm2, *(v4si*)_pi32_1);<br>
| ^~~~~~~~~~~~~~<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:456:31: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
456 | emm2 = _mm_and_si128(emm2, *(v4si*)_pi32_inv1);<br>
| ^~~~~~~~~~~~~~~~~<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:462:31: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
462 | emm0 = _mm_and_si128(emm2, *(v4si*)_pi32_4);<br>
| ^~~~~~~~~~~~~~<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:467:31: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
467 | emm2 = _mm_and_si128(emm2, *(v4si*)_pi32_2);<br>
| ^~~~~~~~~~~~~~<br>
In file included from /usr/include/simde/x86/sse3.h:30,<br>
from /usr/include/simde/x86/ssse3.h:30,<br>
from /usr/include/simde/x86/sse4.1.h:31,<br>
from /usr/include/simde/x86/sse4.2.h:31,<br>
from /usr/include/simde/x86/avx.h:31,<br>
from /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6,<br>
from /home/nilesh/scrappie/scrappie/src/decode.h:5,<br>
from /home/nilesh/scrappie/scrappie/src/decode.c:3:<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:483:31: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
483 | emm4 = _mm_sub_epi32(emm4, *(v4si*)_pi32_2);<br>
| ^~~~~~~~~~~~~~<br>
In file included from /usr/include/simde/x86/sse3.h:30,<br>
from /usr/include/simde/x86/ssse3.h:30,<br>
from /usr/include/simde/x86/sse4.1.h:31,<br>
from /usr/include/simde/x86/sse4.2.h:31,<br>
from /usr/include/simde/x86/avx.h:31,<br>
from /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6,<br>
from /home/nilesh/scrappie/scrappie/src/decode.h:5,<br>
from /home/nilesh/scrappie/scrappie/src/decode.c:3:<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:484:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]<br>
484 | emm4 = _mm_andnot_si128(emm4, *(v4si*)_pi32_4);<br>
| ^~~~~~~~~~~~~~<br>
In file included from /home/nilesh/scrappie/scrappie/src/decode.c:5:<br>
/home/nilesh/scrappie/scrappie/src/util.h: In function 'expfv':<br>
/home/nilesh/scrappie/scrappie/src/util.h:172:5: error: unknown type name '__v4sf'; did you mean 'v4sf'?<br>
172 | __v4sf y = (__v4sf) x;<br>
| ^~~~~~<br>
| v4sf<br>
/home/nilesh/scrappie/scrappie/src/util.h:172:17: error: '__v4sf' undeclared (first use in this function); did you mean 'v4sf'?<br>
172 | __v4sf y = (__v4sf) x;<br>
| ^~~~~~<br>
| v4sf<br>
/home/nilesh/scrappie/scrappie/src/util.h:172:17: note: each undeclared identifier is reported only once for each function it appears in<br>
/home/nilesh/scrappie/scrappie/src/util.h:172:25: error: expected ',' or ';' before 'x'<br>
172 | __v4sf y = (__v4sf) x;<br>
| ^<br>
/home/nilesh/scrappie/scrappie/src/util.h:173:28: error: incompatible type for argument 1 of 'exp_ps'<br>
173 | return (__m128) exp_ps(y);<br>
| ^<br>
| |<br>
| int<br>
In file included from /home/nilesh/scrappie/scrappie/src/util.h:9,<br>
from /home/nilesh/scrappie/scrappie/src/decode.c:5:<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:183:67: note: expected 'v4sf' {aka 'float32x4_t'} but argument is of type 'int'<br>
183 | static inline __attribute__((__always_inline__)) v4sf exp_ps(v4sf x) {<br>
| ~~~~~^<br>
In file included from /home/nilesh/scrappie/scrappie/src/decode.c:5:<br>
/home/nilesh/scrappie/scrappie/src/util.h: In function 'logfv':<br>
/home/nilesh/scrappie/scrappie/src/util.h:177:5: error: unknown type name '__v4sf'; did you mean 'v4sf'?<br>
177 | __v4sf y = (__v4sf) x;<br>
| ^~~~~~<br>
| v4sf<br>
/home/nilesh/scrappie/scrappie/src/util.h:177:17: error: '__v4sf' undeclared (first use in this function); did you mean 'v4sf'?<br>
177 | __v4sf y = (__v4sf) x;<br>
| ^~~~~~<br>
| v4sf<br>
/home/nilesh/scrappie/scrappie/src/util.h:177:25: error: expected ',' or ';' before 'x'<br>
177 | __v4sf y = (__v4sf) x;<br>
| ^<br>
/home/nilesh/scrappie/scrappie/src/util.h:178:28: error: incompatible type for argument 1 of 'log_ps'<br>
178 | return (__m128) log_ps(y);<br>
| ^<br>
| |<br>
| int<br>
In file included from /home/nilesh/scrappie/scrappie/src/util.h:9,<br>
from /home/nilesh/scrappie/scrappie/src/decode.c:5:<br>
/home/nilesh/scrappie/scrappie/src/sse_mathfun.h:101:67: note: expected 'v4sf' {aka 'float32x4_t'} but argument is of type 'int'<br>
101 | static inline v4sf __attribute__((__always_inline__)) log_ps(v4sf x) {<br>
| ~~~~~^<br>
In file included from /home/nilesh/scrappie/scrappie/src/decode.c:5:<br>
/home/nilesh/scrappie/scrappie/src/util.h: In function 'fast_expfv':<br>
/home/nilesh/scrappie/scrappie/src/util.h:205:32: error: '__v4sf' undeclared (first use in this function); did you mean 'v4sf'?<br>
205 | const __m128 a = (__m128) (__v4sf) { _A, _A, _A, _A };<br>
| ^~~~~~<br>
| v4sf<br>
/home/nilesh/scrappie/scrappie/src/util.h:205:40: error: expected ',' or ';' before '{' token<br>
205 | const __m128 a = (__m128) (__v4sf) { _A, _A, _A, _A };<br>
| ^<br>
/home/nilesh/scrappie/scrappie/src/util.h:206:40: error: expected ',' or ';' before '{' token<br>
206 | const __m128 b = (__m128) (__v4sf) { _B, _B, _B, _B };<br>
| ^<br>
/home/nilesh/scrappie/scrappie/src/util.h:207:45: error: expected ',' or ';' before '{' token<br>
207 | const __m128 _bound = (__m128) (__v4sf) { _BOUND, _BOUND, _BOUND, _BOUND };<br>
| ^<br>
/home/nilesh/scrappie/scrappie/src/util.h: In function 'fast_logfv':<br>
/home/nilesh/scrappie/scrappie/src/util.h:217:32: error: '__v4sf' undeclared (first use in this function); did you mean 'v4sf'?<br>
217 | const __m128 a = (__m128) (__v4sf) { _Alogfv, _Alogfv, _Alogfv, _Alogfv };<br>
| ^~~~~~<br>
| v4sf<br>
/home/nilesh/scrappie/scrappie/src/util.h:217:40: error: expected ',' or ';' before '{' token<br>
217 | const __m128 a = (__m128) (__v4sf) { _Alogfv, _Alogfv, _Alogfv, _Alogfv };<br>
| ^<br>
/home/nilesh/scrappie/scrappie/src/util.h:218:40: error: expected ',' or ';' before '{' token<br>
218 | const __m128 b = (__m128) (__v4sf) { _Blogfv, _Blogfv, _Blogfv, _Blogfv };<br>
| ^<br>
/home/nilesh/scrappie/scrappie/src/decode.c: At top level:<br>
/home/nilesh/scrappie/scrappie/src/decode.c:11:6: error: #error "Compilation of function decode_transducer requires a processor that supports at least SSE2"<br>
11 | # error "Compilation of function decode_transducer requires a processor that supports at least SSE2"<br>
| ^~~~~<br>
In file included from /usr/include/simde/x86/sse4.2.h:31,<br>
from /usr/include/simde/x86/avx.h:31,<br>
from /home/nilesh/scrappie/scrappie/src/scrappie_matrix.h:6,<br>
from /home/nilesh/scrappie/scrappie/src/decode.h:5,<br>
from /home/nilesh/scrappie/scrappie/src/decode.c:3:<br>
/home/nilesh/scrappie/scrappie/src/decode.c:25:74: error: redefinition of 'simde_mm_mullo_epi32'<br>
25 | static inline __m128i __attribute__((__gnu_inline__, __always_inline__)) _mm_mullo_epi32(const __m128i x, const __m128i y) {<br>
| ^~~~~~~~~~~~~~~<br>
/usr/include/simde/x86/sse4.1.h:1761:1: note: previous definition of 'simde_mm_mullo_epi32' was here<br>
1761 | simde_mm_mullo_epi32 (simde__m128i a, simde__m128i b) {<br>
| ^~~~~~~~~~~~~~~~~~~~<br>
make[4]: *** [CMakeFiles/scrappie_objects.dir/build.make:82: CMakeFiles/scrappie_objects.dir/src/decode.c.o] Error 1<br>
make[4]: Leaving directory '/home/nilesh/scrappie/scrappie/build'<br>
make[3]: *** [CMakeFiles/Makefile2:104: CMakeFiles/scrappie_objects.dir/all] Error 2<br>
make[3]: Leaving directory '/home/nilesh/scrappie/scrappie/build'<br>
make[2]: *** [Makefile:182: all] Error 2<br>
make[2]: Leaving directory '/home/nilesh/scrappie/scrappie/build'<br>
make[1]: *** [Makefile:21: build/scrappie] Error 2<br>
make[1]: Leaving directory '/home/nilesh/scrappie/scrappie'<br>
dh_auto_build: error: make -j4 "INSTALL=install --strip-program=true" returned exit code 2<br>
make: *** [debian/rules:11: binary] Error 2<br>
<br>
</blockquote></div><br clear="all"><br>-- <br><div dir="ltr"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><span style="font-size:12.8px">Michael R. Crusoe</span><br style="font-size:12.8px"><span style="font-size:12.8px">Co-founder & Lead,</span><br style="font-size:12.8px"><a href="http://www.commonwl.org/" style="font-size:12.8px" target="_blank">Common Workflow Language project</a><br style="font-size:12.8px"><a href="https://orcid.org/0000-0002-2961-9670" style="font-size:12.8px" target="_blank">https://orcid.org/0000-0002-2961-9670</a><br style="font-size:12.8px"><a href="mailto:mrc@commonwl.org" style="font-size:12.8px" target="_blank">mrc@commonwl.org</a><span style="font-size:12.8px"></span><br></div></div></div></div></div></div></div></div></div></div>
</blockquote></div></div>
</blockquote></div>