Here is my fix https://salsa.debian.org/med-team/gmap/-/commit/596beba027da3944b0f45a9ffc9e03d1d9dca5ba
On Thu, Jul 13, 2023 at 11:15 AM Michael R. Crusoe < michael.r.cru...@gmail.com> wrote: > Thanks César; I've done much of this already. I'll push my changes shortly > (testing the AVX512 level now) > > On Thu, Jul 13, 2023 at 9:49 AM César Pomar <cesarpoma...@gmail.com> > wrote: > >> Hi, >> >> I think the same way. The code has multiple levels of vector extensions: >> SSE2, SSE3, AVX... AVX512. The code has macros to define the data types >> according to the selected extension. It's very possible that they focused >> on SSE3 or AVX (which are already the minimum supported by any machine) and >> neglected to test SSE2. >> >> I can also take a look. Additionally, since it supports up to AVX512, it >> would be good to create multiple binaries (as we did in VeryFastTree) with >> different levels so that modern hardware can take advantage of them while >> preserving compatibility. >> >> El jue, 13 jul 2023 a las 9:36, Michael R. Crusoe (< >> michael.r.cru...@gmail.com>) escribió: >> >>> The real error is at >>> >>> gcc -DHAVE_CONFIG_H -I. -Wdate-time -D_FORTIFY_SOURCE=2 >>> -DTARGET=\"x86_64-pc-linux-gnu\" -DGMAPDB=\"/var/cache/gmap\" -DGSNAP=1 >>> -mpopcnt -DHAVE_SSE2=1 -msse2 -mno-ssse3 -mno-sse4.1 -mno-sse4.2 -mno-avx2 >>> -g -O2 -ffile-prefix-map=/builds/med-team/gmap/debian/output/source_dir=. >>> -fstack-protector-strong -Wformat -Werror=format-security -c -o >>> gsnap_sse2-intersect-uint2.o `test -f 'intersect-uint2.c' || echo >>> './'`intersect-uint2.c >>> intersect-simd.c: In function 'v1': >>> intersect-simd.c:242:8: warning: implicit declaration of function >>> '_mm_lddqu_si128'; did you mean '_mm_loadu_si128'? >>> [-Wimplicit-function-declaration] >>> 242 | F0 = _mm_lddqu_si128((const __m128i *)(freq)); >>> | ^~~~~~~~~~~~~~~ >>> | _mm_loadu_si128 >>> >>> I don't think upstream tested the SSE2 build recently; I'm looking at this >>> now >>> >>> >>> On Wed, Jul 12, 2023 at 2:01 PM Andreas Tille <andr...@an3as.eu> wrote: >>> >>>> Hi, >>>> >>>> I admit I'm bad in such hardware internals that seem to break the >>>> build of gmap: >>>> >>>> intersect-uint2.c:409:21: error: incompatible types when initializing >>>> type '__m128i' using type 'int' >>>> 409 | __m128i p = _mm_shuffle_epi8(v_a, * (__m128i *) >>>> &(shuffle_mask16[r*16])); >>>> | ^~~~~~~~~~~~~~~~ >>>> intersect-uint2.c:427:17: error: incompatible types when assigning to >>>> type '__m128i' from type 'int' >>>> 427 | v_b = _mm_lddqu_si128((const __m128i *) &B[i_b]); >>>> | ^~~~~~~~~~~~~~~ >>>> >>>> See >>>> https://salsa.debian.org/med-team/gmap/-/jobs/4423598 >>>> for the full build log. >>>> >>>> Any help would be welcome >>>> Andreas. >>>> >>>> -- >>>> http://fam-tille.de >>>> >>>>