<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">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 class="gmail-code gmail-highlight" lang="diff"><span id="gmail-LC42" class="gmail-line" lang="diff"><span class="gmail-gi">define SIMDE_ENABLE_NATIVE_ALIASES</span></span>
<span id="gmail-LC43" class="gmail-line" lang="diff"><span class="gmail-gi">#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">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" class="gmail_signature"><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>