volk icon indicating copy to clipboard operation
volk copied to clipboard

build problem 2.5.2 32 bit

Open cinaeds opened this issue 1 year ago • 15 comments

I can't bulid versiion 2.5.2 volk on a 32 bit armv7l cpu.

build.log compile.log

cinaeds avatar Sep 11 '22 21:09 cinaeds

How did you run CMake etc? I've read multiple reports that it is problematic to rely on CMake to detect the correct 32bit ARM CPU. Did you use a specific toolchain file?

jdemel avatar Sep 12 '22 07:09 jdemel

I see an issue in my OE build which should have a good toolchain file. I'll investigate. Oddly enough, not sure it is the same one though .....

balister avatar Sep 21 '22 17:09 balister

Okay, thanks for the update.

It's 32 machine - I  use it primarily for viewing and testing flow charts since it has good frame buffer and a large monitor.

Would it be possible to just fool gnuradio it so I can build gnuradio 3.10 on it?

-- Cinaed

On 9/21/22 10:53, Philip Balister wrote:

I see an issue in my OE build which should have a good toolchain file. I'll investigate. Oddly enough, not sure it is the same one though .....

— Reply to this email directly, view it on GitHub https://github.com/gnuradio/volk/issues/601#issuecomment-1254037661, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADKKX2NNAMLGW7XBBZ2PUYLV7NDQHANCNFSM6AAAAAAQJ6NWPQ. You are receiving this because you authored the thread.Message ID: @.***>

cinaeds avatar Sep 22 '22 10:09 cinaeds

Can you show the command line you use to build gnuradio? POking around, I think your issue is the the -mfpu=neon flag isn't making it into the build.

balister avatar Sep 22 '22 11:09 balister

Here are the cflags I passed cmake for volk (and gnuradio):

   armv7l)      CFLAGS="-march=armv7ve -O2 -mtune=cortex-a15.cortex-a7 -mfloat-abi=hard -mfpu=neon-vfpv4"

Here are the are the error messages - it bombs at about 44% completion:

/opt/gnuradio/src/gr-pre-libs/volk/kernels/volk/asm/neon/volk_16i_max_star_horizontal_16i.s: Assembler messages: /opt/gnuradio/src/gr-pre-libs/volk/kernels/volk/asm/neon/volk_16i_max_star_horizontal_16i.s:11: Error: selected FPU does not support instruction -- vmov.i32 q12,#0' /opt/gnuradio/src/gr-pre-libs/volk/kernels/volk/asm/neon/volk_16i_max_star_horizontal_16i.s:22: Error: selected FPU does not support instruction -- vsub.i16 q10,q8,q9' /opt/gnuradio/src/gr-pre-libs/volk/kernels/volk/asm/neon/volk_16i_max_star_horizontal_16i.s:23: Error: selected processor does not support vcge.s16 q11,q10,#0' in ARM mode /opt/gnuradio/src/gr-pre-libs/volk/kernels/volk/asm/neon/volk_16i_max_star_horizontal_16i.s:24: Error: selected processor does not support vcgt.s16 q10,q12,q10' in ARM mode /opt/gnuradio/src/gr-pre-libs/volk/kernels/volk/asm/neon/volk_16i_max_star_horizontal_16i.s:25: Error: selected processor does not support vand.i16 q11,q8,q11' in ARM mode /opt/gnuradio/src/gr-pre-libs/volk/kernels/volk/asm/neon/volk_16i_max_star_horizontal_16i.s:26: Error: selected processor does not support vand.i16 q10,q9,q10' in ARM mode /opt/gnuradio/src/gr-pre-libs/volk/kernels/volk/asm/neon/volk_16i_max_star_horizontal_16i.s:27: Error: selected FPU does not support instruction -- `vadd.i16 q10,q11,q10' make[2]: *** [lib/CMakeFiles/volk_obj.dir/build.make:1825: lib/CMakeFiles/volk_obj.dir/__/kernels/volk/asm/neon/volk_16i_max_star_horizontal_16i.s.o] Error 1

-- Cinaed

On 9/22/22 04:02, Philip Balister wrote:

Can you show the command line you use to build gnuradio? POking around, I think your issue is the the -mfpu=neon flag isn't making it into the build.

— Reply to this email directly, view it on GitHub https://github.com/gnuradio/volk/issues/601#issuecomment-1254866295, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADKKX2KEUXUHE7QYIMAIPD3V7Q4CZANCNFSM6AAAAAAQJ6NWPQ. You are receiving this because you authored the thread.Message ID: @.***>

cinaeds avatar Sep 22 '22 23:09 cinaeds

So the issue is you need to set the flags used by the assembler to the ones you are using for CFLAGS. Can you try setting ASFLAGS to the same as CFLAGS?

balister avatar Sep 23 '22 10:09 balister

Progress!

In instead of crashing at 44%, it now crashes at 83%.

-- Cinaed

On 9/23/22 03:25, Philip Balister wrote:

So the issue is you need to set the flags used by the assembler to the ones you are using for CFLAGS. Can you try setting ASFLAGS to the same as CFLAGS?

— Reply to this email directly, view it on GitHub https://github.com/gnuradio/volk/issues/601#issuecomment-1256040648, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADKKX2ML7OHGJ6Z7VLABTOTV7WAQXANCNFSM6AAAAAAQJ6NWPQ. You are receiving this because you authored the thread.Message ID: @.***>

[ 84%] Building C object lib/CMakeFiles/volk_obj.dir/volk_machine_neon_orc.c.o In file included from /opt/gnuradio/src/gr-pre-libs/volk/kernels/volk/volk_8u_x4_conv_k7_r2_8u.h:624, from /opt/gnuradio/src/gr-pre-libs/volk/kernels/volk/volk_8u_conv_k7_r2puppet_8u.h:15, from /opt/gnuradio/src/gr-pre-libs/volk/build/lib/volk_machine_neon_orc.c:163: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_sse2neon_vld1q_u8_x4’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:463:12: warning: implicit declaration of function ‘vld1q_u8_x4’; did you mean ‘vld1q_u64’? [-Wimplicit-function-declaration] 463 | return vld1q_u8_x4(p); | ^~~~~~~~~~~ | vld1q_u64 /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:463:12: error: incompatible types when returning type ‘int’ but ‘uint8x16x4_t’ was expected 463 | return vld1q_u8_x4(p); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cmpge_pd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3330:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3330 | d[0] = (*(double ) &a0) >= ((double ) &b0) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3330:35: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3330 | d[0] = ((double ) &a0) >= ((double ) &b0) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3331:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3331 | d[1] = ((double ) &a1) >= ((double ) &b1) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3331:35: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3331 | d[1] = ((double ) &a1) >= ((double ) &b1) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cmpge_sd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3351:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3351 | d[0] = ((double ) &a0) >= ((double ) &b0) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3351:35: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3351 | d[0] = ((double ) &a0) >= ((double ) &b0) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cmpgt_pd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3411:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3411 | d[0] = ((double ) &a0) > ((double ) &b0) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3411:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3411 | d[0] = ((double ) &a0) > ((double ) &b0) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3412:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3412 | d[1] = ((double ) &a1) > ((double ) &b1) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3412:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3412 | d[1] = ((double ) &a1) > ((double ) &b1) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cmpgt_sd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3432:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3432 | d[0] = ((double ) &a0) > ((double ) &b0) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3432:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3432 | d[0] = ((double ) &a0) > ((double ) &b0) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cmple_pd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3453:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3453 | d[0] = ((double ) &a0) <= ((double ) &b0) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3453:35: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3453 | d[0] = ((double ) &a0) <= ((double ) &b0) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3454:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3454 | d[1] = ((double ) &a1) <= ((double ) &b1) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3454:35: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3454 | d[1] = ((double ) &a1) <= ((double ) &b1) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cmple_sd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3474:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3474 | d[0] = ((double ) &a0) <= ((double ) &b0) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3474:35: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3474 | d[0] = ((double ) &a0) <= ((double ) &b0) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cmplt_pd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3529:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3529 | d[0] = ((double ) &a0) < ((double ) &b0) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3529:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3529 | d[0] = ((double ) &a0) < ((double ) &b0) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3530:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3530 | d[1] = ((double ) &a1) < ((double ) &b1) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3530:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3530 | d[1] = ((double ) &a1) < ((double ) &b1) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cmplt_sd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3549:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3549 | d[0] = ((double ) &a0) < ((double ) &b0) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3549:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3549 | d[0] = ((double ) &a0) < ((double ) &b0) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cmpnge_pd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3598:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3598 | !(((double ) &a0) >= ((double ) &b0)) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3598:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3598 | !(((double ) &a0) >= ((double ) &b0)) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3600:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3600 | !(((double ) &a1) >= ((double ) &b1)) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3600:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3600 | !(((double ) &a1) >= ((double ) &b1)) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cmpngt_pd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3631:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3631 | !(((double ) &a0) > ((double ) &b0)) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3631:33: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3631 | !(((double ) &a0) > ((double ) &b0)) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3633:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3633 | !(((double ) &a1) > ((double ) &b1)) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3633:33: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3633 | !(((double ) &a1) > ((double ) &b1)) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cmpnle_pd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3664:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3664 | !(((double ) &a0) <= ((double ) &b0)) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3664:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3664 | !(((double ) &a0) <= ((double ) &b0)) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3666:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3666 | !(((double ) &a1) <= ((double ) &b1)) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3666:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3666 | !(((double ) &a1) <= ((double ) &b1)) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cmpnlt_pd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3697:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3697 | !(((double ) &a0) < ((double ) &b0)) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3697:33: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3697 | !(((double ) &a0) < ((double ) &b0)) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3699:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3699 | !(((double ) &a1) < ((double ) &b1)) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3699:33: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3699 | !(((double ) &a1) < ((double ) &b1)) ? ~UINT64_C(0) : UINT64_C(0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cmpord_pd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3732:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3732 | d[0] = (((double ) &a0) == ((double ) &a0) && | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3732:36: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3732 | d[0] = (((double ) &a0) == ((double ) &a0) && | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3733:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3733 | ((double ) &b0) == ((double ) &b0)) | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3733:36: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3733 | ((double ) &b0) == ((double ) &b0)) | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3736:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3736 | d[1] = (((double ) &a1) == ((double ) &a1) && | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3736:36: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3736 | d[1] = (((double ) &a1) == ((double ) &a1) && | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3737:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3737 | ((double ) &b1) == ((double ) &b1)) | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3737:36: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3737 | ((double ) &b1) == ((double ) &b1)) | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cmpord_sd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3758:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3758 | d[0] = (((double ) &a0) == ((double ) &a0) && | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3758:36: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3758 | d[0] = (((double ) &a0) == ((double ) &a0) && | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3759:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3759 | ((double ) &b0) == ((double ) &b0)) | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3759:36: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3759 | ((double ) &b0) == ((double ) &b0)) | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cmpunord_pd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3787:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3787 | d[0] = (((double ) &a0) == ((double ) &a0) && | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3787:36: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3787 | d[0] = (((double ) &a0) == ((double ) &a0) && | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3788:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3788 | ((double ) &b0) == ((double ) &b0)) | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3788:36: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3788 | ((double ) &b0) == ((double ) &b0)) | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3791:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3791 | d[1] = (((double ) &a1) == ((double ) &a1) && | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3791:36: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3791 | d[1] = (((double ) &a1) == ((double ) &a1) && | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3792:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3792 | ((double ) &b1) == ((double ) &b1)) | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3792:36: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3792 | ((double ) &b1) == ((double ) &b1)) | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cmpunord_sd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3813:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3813 | d[0] = (((double ) &a0) == ((double ) &a0) && | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3813:36: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3813 | d[0] = (((double ) &a0) == ((double ) &a0) && | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3814:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3814 | ((double ) &b0) == ((double ) &b0)) | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3814:36: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3814 | ((double ) &b0) == ((double ) &b0)) | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_comige_sd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3834:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3834 | return ((double *) &a0 >= *(double ) &b0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3834:33: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3834 | return ((double *) &a0 >= *(double ) &b0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_comigt_sd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3849:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3849 | return ((double *) &a0 > *(double ) &b0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3849:32: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3849 | return ((double *) &a0 > *(double ) &b0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_comile_sd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3864:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3864 | return ((double *) &a0 <= *(double ) &b0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3864:33: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3864 | return ((double *) &a0 <= *(double ) &b0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_comilt_sd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3879:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3879 | return ((double *) &a0 < *(double ) &b0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3879:32: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3879 | return ((double *) &a0 < *(double *) &b0); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cvtpd_epi32’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3955:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3955 | double d0 = ((double *) &rnd)[0]; | ^ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cvtpd_pi32’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3973:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3973 | double d0 = ((double *) &rnd)[0]; | ^ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cvtpd_ps’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:3997:39: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 3997 | float a0 = (float) ((double *) &a)[0]; | ^ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cvtsd_f64’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4118:27: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4118 | return ((double *) &a)[0]; | ^ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cvtsd_si32’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4134:35: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4134 | double ret = ((double *) &rnd)[0]; | ^ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cvtsd_si64’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4151:35: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4151 | double ret = ((double *) &rnd)[0]; | ^ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cvtsd_ss’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4176:73: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4176 | return vreinterpretq_m128_f32(vsetq_lane_f32((float) ((double ) &b)[0], | ^ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:259:36: note: in definition of macro ‘vreinterpretq_m128_f32’ 259 | #define vreinterpretq_m128_f32(x) (x) | ^ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cvtsi32_sd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4217:25: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4217 | vsetq_lane_s64((int64_t ) &bf, vreinterpretq_s64_m128d(a), 0)); | ^~~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:353:58: note: in definition of macro ‘vreinterpretq_m128d_s64’ 353 | #define vreinterpretq_m128d_s64(x) vreinterpretq_f32_s64(x) | ^ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cvtsi64_sd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4254:25: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4254 | vsetq_lane_s64((int64_t ) &bf, vreinterpretq_s64_m128d(a), 0)); | ^~~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:353:58: note: in definition of macro ‘vreinterpretq_m128d_s64’ 353 | #define vreinterpretq_m128d_s64(x) vreinterpretq_f32_s64(x) | ^ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cvtss_sd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4296:25: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4296 | vsetq_lane_s64((int64_t *) &d, vreinterpretq_s64_m128d(a), 0)); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:353:58: note: in definition of macro ‘vreinterpretq_m128d_s64’ 353 | #define vreinterpretq_m128d_s64(x) vreinterpretq_f32_s64(x) | ^ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cvttpd_epi32’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4305:32: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4305 | double a0 = ((double *) &a)[0]; | ^ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cvttpd_pi32’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4315:32: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4315 | double a0 = ((double *) &a)[0]; | ^ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cvttsd_si32’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4337:20: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4337 | double ret = *((double *) &a); | ~^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_cvttsd_si64’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4352:20: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4352 | double ret = *((double ) &a); | ~^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_max_pd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4661:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4661 | d[0] = ((double ) &a0) > ((double ) &b0) ? a0 : b0; | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4661:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4661 | d[0] = ((double ) &a0) > ((double ) &b0) ? a0 : b0; | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4662:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4662 | d[1] = ((double ) &a1) > ((double ) &b1) ? a1 : b1; | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4662:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4662 | d[1] = ((double ) &a1) > ((double ) &b1) ? a1 : b1; | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_min_pd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4722:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4722 | d[0] = ((double ) &a0) < ((double ) &b0) ? a0 : b0; | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4722:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4722 | d[0] = ((double ) &a0) < ((double ) &b0) ? a0 : b0; | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4723:14: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4723 | d[1] = ((double ) &a1) < ((double ) &b1) ? a1 : b1; | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:4723:34: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 4723 | d[1] = ((double ) &a1) < ((double ) &b1) ? a1 : b1; | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_set1_pd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:5252:49: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 5252 | return vreinterpretq_m128d_s64(vdupq_n_s64((int64_t *) &d)); | ^~~~~~~~~~~~~~ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:353:58: note: in definition of macro ‘vreinterpretq_m128d_s64’ 353 | #define vreinterpretq_m128d_s64(x) vreinterpretq_f32_s64(x) | ^ In file included from /opt/gnuradio/src/gr-pre-libs/volk/include/volk/volk_complex.h:68, from /opt/gnuradio/src/gr-pre-libs/volk/build/include/volk/volk_typedefs.h:18, from /opt/gnuradio/src/gr-pre-libs/volk/build/lib/volk_machines.h:18, from /opt/gnuradio/src/gr-pre-libs/volk/build/lib/volk_machine_neon_orc.c:22: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_sqrt_pd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:5621:37: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 5621 | double a0 = sqrt(((double *) &a)[0]); | ^ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_sqrt_sd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:5636:63: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 5636 | return _mm_set_pd(((double *) &a)[1], sqrt(((double *) &b)[0])); | ^ /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h: In function ‘_mm_dp_pd’: /opt/gnuradio/src/gr-pre-libs/volk/include/volk/sse2neon.h:7688:20: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 7688 | double sum = *((double ) &tmp) + (((double ) &tmp) + 1); | ~^~~~~~~~~~~~~~~~ make[2]: *** [lib/CMakeFiles/volk_obj.dir/build.make:2457: lib/CMakeFiles/volk_obj.dir/volk_machine_neon_orc.c.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:342: lib/CMakeFiles/volk_obj.dir/all] Error 2 make: *** [Makefile:146: all] Error 2 @.:/opt/gnuradio/src/gr-pre-libs/volk/build#

cinaeds avatar Sep 24 '22 04:09 cinaeds

I have a fix for that one in progress. Can you confirm what version of gcc you are using? I am guessing 12.

balister avatar Sep 24 '22 10:09 balister

Try: https://github.com/gnuradio/volk/pull/602

balister avatar Sep 24 '22 14:09 balister

Great! Yes, the version of gcc is 12.1.0.

-- Cinaed

On 9/24/22 03:32, Philip Balister wrote:

I have a fix for that one in progress. Can you confirm what version of gcc you are using? I am guessing 12.

— Reply to this email directly, view it on GitHub https://github.com/gnuradio/volk/issues/601#issuecomment-1256934739, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADKKX2ONGUENR4FGEPGFD5LV73KELANCNFSM6AAAAAAQJ6NWPQ. You are receiving this because you authored the thread.Message ID: @.***>

cinaeds avatar Sep 25 '22 00:09 cinaeds

Can you confirm this fixes the issue and tell us a little about what you are doing? I am guessing native compile on some 32 bit arm board. We need to document the use of CFLAGS and ASFLAGS for this case better.

balister avatar Sep 26 '22 13:09 balister

Sure, I used

  CFLAGS="-march=armv7ve -O2 -mtune=cortex-a15.cortex-a7 -mfloat-abi=hard -mfpu=neon-vfpv4"   ASMFLAGS="-march=armv7ve -O2 -mtune=cortex-a15.cortex-a7 -mfloat-abi=hard -mfpu=neon-vfpv4"

noting  I ended up having to use ASMFLAGS instead of ASFLAGS.

The OS is Debian bookworm - or Debian 12 - and the gcc compiler was Debian 12.1.0-8.

-- Cinaed

On 9/26/22 06:39, Philip Balister wrote:

Can you confirm this fixes the issue and tell us a little about what you are doing? I am guessing native compile on some 32 bit arm board. We need to document the use of CFLAGS and ASFLAGS for this case better.

— Reply to this email directly, view it on GitHub https://github.com/gnuradio/volk/issues/601#issuecomment-1258059920, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADKKX2OJAZWQKYPKU64P22TWAGRSLANCNFSM6AAAAAAQJ6NWPQ. You are receiving this because you authored the thread.Message ID: @.***>

cinaeds avatar Sep 26 '22 21:09 cinaeds

OK this is weird ... see the definition here: https://www.gnu.org/software/make/manual/html_node/Implicit-Variables.html

balister avatar Sep 27 '22 14:09 balister

HMMM, Maybe ASFLAGS goes to the actual assembler and ASMFLAGS goes via gcc when called with -s to call the assembler. Quick google isn't returning anything I can point at though :(

balister avatar Sep 27 '22 15:09 balister

Yes, that was my assumption too.

But I did find a work around.

I was able to find the script used to build gr-3.7 and the source code for volk-2.4.1.

And I was able to configure and build volk and gr-3.10 without any issues - but it warned me at the end the of the configuration of gr to enable volk.

It may not be optimal - but for what I'm using the machine for - it's close enough.

Enclosed is a copy of the volk-2.4.1 profile.

-- CInaed

On 9/27/22 08:30, Philip Balister wrote:

HMMM, Maybe ASFLAGS goes to the actual assembler and ASMFLAGS goes via gcc when called with -s to call the assembler. Quick google isn't returning anything I can point at though :(

— Reply to this email directly, view it on GitHub https://github.com/gnuradio/volk/issues/601#issuecomment-1259677973, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADKKX2JLDDY3WTONK6LOCPTWAMHK7ANCNFSM6AAAAAAQJ6NWPQ. You are receiving this because you authored the thread.Message ID: @.***>

#this file is generated by volk_profile. #the function name is followed by the preferred architecture.

volk_16ic_deinterleave_real_8i u_orc u_orc volk_16ic_deinterleave_16i_x2 u_orc u_orc volk_16ic_s32f_deinterleave_32f_x2 u_orc u_orc

volk_16i_s32f_convert_32f a_generic generic volk_16i_convert_8i generic generic

volk_32f_x2_add_32f u_orc u_orc

volk_32fc_32f_multiply_32fc u_orc u_orc

volk_32f_log2_32f u_generic u_generic

volk_32f_cos_32f generic generic

volk_32fc_x2_conjugate_dot_prod_32fc block block

volk_32fc_deinterleave_64f_x2 a_generic generic

volk_32fc_x2_dot_prod_32fc generic generic

volk_32fc_magnitude_32f generic generic volk_32fc_magnitude_squared_32f generic generic

volk_32fc_x2_multiply_32fc generic generic volk_32fc_x2_multiply_conjugate_32fc generic generic

volk_32fc_conjugate_32fc a_generic generic volk_32f_s32f_convert_16i a_generic generic volk_32f_s32f_convert_32i a_generic generic volk_32f_convert_64f generic generic volk_32f_s32f_convert_8i a_generic generic

volk_32f_x2_divide_32f u_orc u_orc volk_32f_x2_dot_prod_32f generic generic

volk_32f_x2_max_32f u_orc u_orc volk_32f_x2_min_32f u_orc u_orc volk_32f_x2_multiply_32f u_orc u_orc

volk_32f_s32f_normalize u_orc u_orc

volk_32f_sqrt_32f u_orc u_orc

volk_32f_x2_subtract_32f u_orc u_orc

volk_32i_x2_and_32i u_orc u_orc volk_32i_s32f_convert_32f a_generic generic volk_32i_x2_or_32i u_orc u_orc

volk_64f_convert_32f generic generic

volk_8i_convert_16i u_orc u_orc volk_8i_s32f_convert_32f u_orc u_orc volk_32fc_s32fc_multiply_32fc a_generic generic volk_32f_s32f_multiply_32f u_orc u_orc

volk_32f_binary_slicer_32i generic_branchless generic_branchless volk_32f_binary_slicer_8i generic_branchless generic_branchless volk_32u_reverse_32u lut lut volk_32f_tanh_32f series series

cinaeds avatar Oct 03 '22 00:10 cinaeds