Skip to content

In function ‘xnn_qs8_vlrelu_ukernel__neon_u32’ error: passing argument 1 of ‘vld1q_dup_s16’ from incompatible pointer type #7726

@jameshilliard

Description

@jameshilliard

I'm seeing a bunch of errors like this when trying to cross compile for arm:

/home/buildroot/buildroot/output/build/xnnpack-custom/src/qs8-vlrelu/gen/qs8-vlrelu-neon-u32.c: In functionxnn_qs8_vlrelu_ukernel__neon_u32’:
/home/buildroot/buildroot/output/build/xnnpack-custom/src/qs8-vlrelu/gen/qs8-vlrelu-neon-u32.c:29:53: error: passing argument 1 ofvld1q_dup_s16from incompatible pointer type [-Wincompatible-pointer-types]
   29 |   const int16x8_t vinput_zero_point = vld1q_dup_s16(&params->scalar.input_zero_point);
      |                                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                                     |
      |                                                     const int32_t * {aka const int *}
In file included from /home/buildroot/buildroot/output/build/xnnpack-custom/src/qs8-vlrelu/gen/qs8-vlrelu-neon-u32.c:12:
/home/buildroot/buildroot/output/per-package/xnnpack/host/lib/gcc/arm-buildroot-linux-gnueabihf/14.2.0/include/arm_neon.h:11505:32: note: expectedconst int16_t *’ {akaconst short int *’} but argument is of typeconst int32_t *’ {akaconst int *’}
11505 | vld1q_dup_s16 (const int16_t * __a)
      |                ~~~~~~~~~~~~~~~~^~~
/home/buildroot/buildroot/output/build/xnnpack-custom/src/qs8-vlrelu/gen/qs8-vlrelu-neon-u32.c:32:54: error: passing argument 1 ofvld1q_dup_s16from incompatible pointer type [-Wincompatible-pointer-types]
   32 |   const int16x8_t voutput_zero_point = vld1q_dup_s16(&params->scalar.output_zero_point);
      |                                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                                      |
      |                                                      const int32_t * {aka const int *}
/home/buildroot/buildroot/output/per-package/xnnpack/host/lib/gcc/arm-buildroot-linux-gnueabihf/14.2.0/include/arm_neon.h:11505:32: note: expectedconst int16_t *’ {akaconst short int *’} but argument is of typeconst int32_t *’ {akaconst int *’}
11505 | vld1q_dup_s16 (const int16_t * __a)
      |                ~~~~~~~~~~~~~~~~^~~
make[4]: *** [CMakeFiles/microkernels-prod.dir/build.make:5125: CMakeFiles/microkernels-prod.dir/src/qs8-vlrelu/gen/qs8-vlrelu-neon-u32.c.o] Error 1
make[4]: *** Waiting for unfinished jobs....
[  4%] Building C object CMakeFiles/microkernels-prod.dir/src/x32-packw/gen/x32-packw-x8s4-gemm-goi-neon-ld4lane-u4-prfm.c.o
/home/buildroot/buildroot/output/build/xnnpack-custom/src/qu8-vlrelu/gen/qu8-vlrelu-neon-u32.c: In functionxnn_qu8_vlrelu_ukernel__neon_u32’:
/home/buildroot/buildroot/output/build/xnnpack-custom/src/qu8-vlrelu/gen/qu8-vlrelu-neon-u32.c:29:54: error: passing argument 1 ofvld1q_dup_u16from incompatible pointer type [-Wincompatible-pointer-types]
   29 |   const uint16x8_t vinput_zero_point = vld1q_dup_u16(&params->scalar.input_zero_point);
      |                                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                                      |
      |                                                      const int32_t * {aka const int *}
In file included from /home/buildroot/buildroot/output/build/xnnpack-custom/src/qu8-vlrelu/gen/qu8-vlrelu-neon-u32.c:12:
/home/buildroot/buildroot/output/per-package/xnnpack/host/lib/gcc/arm-buildroot-linux-gnueabihf/14.2.0/include/arm_neon.h:11543:33: note: expectedconst uint16_t *’ {akaconst short unsigned int *’} but argument is of typeconst int32_t *’ {akaconst int *’}
11543 | vld1q_dup_u16 (const uint16_t * __a)
      |                ~~~~~~~~~~~~~~~~~^~~
/home/buildroot/buildroot/output/build/xnnpack-custom/src/qu8-vlrelu/gen/qu8-vlrelu-neon-u32.c:32:54: error: passing argument 1 ofvld1q_dup_s16from incompatible pointer type [-Wincompatible-pointer-types]
   32 |   const int16x8_t voutput_zero_point = vld1q_dup_s16(&params->scalar.output_zero_point);
      |                                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                                      |
      |                                                      const int32_t * {aka const int *}
/home/buildroot/buildroot/output/per-package/xnnpack/host/lib/gcc/arm-buildroot-linux-gnueabihf/14.2.0/include/arm_neon.h:11505:32: note: expectedconst int16_t *’ {akaconst short int *’} but argument is of typeconst int32_t *’ {akaconst int *’}
11505 | vld1q_dup_s16 (const int16_t * __a)
      |                ~~~~~~~~~~~~~~~~^~~
make[4]: *** [CMakeFiles/microkernels-prod.dir/build.make:6201: CMakeFiles/microkernels-prod.dir/src/qu8-vlrelu/gen/qu8-vlrelu-neon-u32.c.o] Error 1
/home/buildroot/buildroot/output/build/xnnpack-custom/src/s8-maxpool/s8-maxpool-9p8x-minmax-neon-c16.c: In functionxnn_s8_maxpool_minmax_ukernel_9p8x__neon_c16’:
/home/buildroot/buildroot/output/build/xnnpack-custom/src/s8-maxpool/s8-maxpool-9p8x-minmax-neon-c16.c:28:46: error: passing argument 1 ofvld1q_dup_s8from incompatible pointer type [-Wincompatible-pointer-types]
   28 |   const int8x16_t voutput_max = vld1q_dup_s8(&params->scalar.max);
      |                                              ^~~~~~~~~~~~~~~~~~~
      |                                              |
      |                                              const int32_t * {aka const int *}
In file included from /home/buildroot/buildroot/output/build/xnnpack-custom/src/s8-maxpool/s8-maxpool-9p8x-minmax-neon-c16.c:8:
/home/buildroot/buildroot/output/per-package/xnnpack/host/lib/gcc/arm-buildroot-linux-gnueabihf/14.2.0/include/arm_neon.h:11498:30: note: expectedconst int8_t *’ {akaconst signed char *’} but argument is of typeconst int32_t *’ {akaconst int *’}
11498 | vld1q_dup_s8 (const int8_t * __a)
      |               ~~~~~~~~~~~~~~~^~~
/home/buildroot/buildroot/output/build/xnnpack-custom/src/s8-maxpool/s8-maxpool-9p8x-minmax-neon-c16.c:29:46: error: passing argument 1 ofvld1q_dup_s8from incompatible pointer type [-Wincompatible-pointer-types]
   29 |   const int8x16_t voutput_min = vld1q_dup_s8(&params->scalar.min);
      |                                              ^~~~~~~~~~~~~~~~~~~
      |                                              |
      |                                              const int32_t * {aka const int *}
/home/buildroot/buildroot/output/per-package/xnnpack/host/lib/gcc/arm-buildroot-linux-gnueabihf/14.2.0/include/arm_neon.h:11498:30: note: expectedconst int8_t *’ {akaconst signed char *’} but argument is of typeconst int32_t *’ {akaconst int *’}
11498 | vld1q_dup_s8 (const int8_t * __a)
      |               ~~~~~~~~~~~~~~~^~~
make[4]: *** [CMakeFiles/microkernels-prod.dir/build.make:6341: CMakeFiles/microkernels-prod.dir/src/s8-maxpool/s8-maxpool-9p8x-minmax-neon-c16.c.o] Error 1
/home/buildroot/buildroot/output/build/xnnpack-custom/src/u8-maxpool/u8-maxpool-9p8x-minmax-neon-c16.c: In functionxnn_u8_maxpool_minmax_ukernel_9p8x__neon_c16’:
/home/buildroot/buildroot/output/build/xnnpack-custom/src/u8-maxpool/u8-maxpool-9p8x-minmax-neon-c16.c:31:47: error: passing argument 1 ofvld1q_dup_u8from incompatible pointer type [-Wincompatible-pointer-types]
   31 |   const uint8x16_t voutput_max = vld1q_dup_u8(&params->scalar.max);
      |                                               ^~~~~~~~~~~~~~~~~~~
      |                                               |
      |                                               const uint32_t * {aka const unsigned int *}
In file included from /home/buildroot/buildroot/output/build/xnnpack-custom/src/u8-maxpool/u8-maxpool-9p8x-minmax-neon-c16.c:11:
/home/buildroot/buildroot/output/per-package/xnnpack/host/lib/gcc/arm-buildroot-linux-gnueabihf/14.2.0/include/arm_neon.h:11536:31: note: expectedconst uint8_t *’ {akaconst unsigned char *’} but argument is of typeconst uint32_t *’ {akaconst unsigned int *’}
11536 | vld1q_dup_u8 (const uint8_t * __a)
      |               ~~~~~~~~~~~~~~~~^~~
/home/buildroot/buildroot/output/build/xnnpack-custom/src/u8-maxpool/u8-maxpool-9p8x-minmax-neon-c16.c:32:47: error: passing argument 1 ofvld1q_dup_u8from incompatible pointer type [-Wincompatible-pointer-types]
   32 |   const uint8x16_t voutput_min = vld1q_dup_u8(&params->scalar.min);
      |                                               ^~~~~~~~~~~~~~~~~~~
      |                                               |
      |                                               const uint32_t * {aka const unsigned int *}
/home/buildroot/buildroot/output/per-package/xnnpack/host/lib/gcc/arm-buildroot-linux-gnueabihf/14.2.0/include/arm_neon.h:11536:31: note: expectedconst uint8_t *’ {akaconst unsigned char *’} but argument is of typeconst uint32_t *’ {akaconst unsigned int *’}
11536 | vld1q_dup_u8 (const uint8_t * __a)
      |               ~~~~~~~~~~~~~~~~^~~
make[4]: *** [CMakeFiles/microkernels-prod.dir/build.make:6453: CMakeFiles/microkernels-prod.dir/src/u8-maxpool/u8-maxpool-9p8x-minmax-neon-c16.c.o] Error 1
/home/buildroot/buildroot/output/build/xnnpack-custom/src/s8-vclamp/s8-vclamp-neon-u64.c: In functionxnn_s8_vclamp_ukernel__neon_u64’:
/home/buildroot/buildroot/output/build/xnnpack-custom/src/s8-vclamp/s8-vclamp-neon-u64.c:24:46: error: passing argument 1 ofvld1q_dup_s8from incompatible pointer type [-Wincompatible-pointer-types]
   24 |   const int8x16_t voutput_max = vld1q_dup_s8(&params->scalar.max);
      |                                              ^~~~~~~~~~~~~~~~~~~
      |                                              |
      |                                              const int32_t * {aka const int *}
In file included from /home/buildroot/buildroot/output/build/xnnpack-custom/src/s8-vclamp/s8-vclamp-neon-u64.c:8:
/home/buildroot/buildroot/output/per-package/xnnpack/host/lib/gcc/arm-buildroot-linux-gnueabihf/14.2.0/include/arm_neon.h:11498:30: note: expectedconst int8_t *’ {akaconst signed char *’} but argument is of typeconst int32_t *’ {akaconst int *’}
11498 | vld1q_dup_s8 (const int8_t * __a)
      |               ~~~~~~~~~~~~~~~^~~
/home/buildroot/buildroot/output/build/xnnpack-custom/src/s8-vclamp/s8-vclamp-neon-u64.c:25:46: error: passing argument 1 ofvld1q_dup_s8from incompatible pointer type [-Wincompatible-pointer-types]
   25 |   const int8x16_t voutput_min = vld1q_dup_s8(&params->scalar.min);
      |                                              ^~~~~~~~~~~~~~~~~~~
      |                                              |
      |                                              const int32_t * {aka const int *}
/home/buildroot/buildroot/output/per-package/xnnpack/host/lib/gcc/arm-buildroot-linux-gnueabihf/14.2.0/include/arm_neon.h:11498:30: note: expectedconst int8_t *’ {akaconst signed char *’} but argument is of typeconst int32_t *’ {akaconst int *’}
11498 | vld1q_dup_s8 (const int8_t * __a)
      |               ~~~~~~~~~~~~~~~^~~
make[4]: *** [CMakeFiles/microkernels-prod.dir/build.make:6369: CMakeFiles/microkernels-prod.dir/src/s8-vclamp/s8-vclamp-neon-u64.c.o] Error 1
/home/buildroot/buildroot/output/build/xnnpack-custom/src/u8-vclamp/u8-vclamp-neon-u64.c: In functionxnn_u8_vclamp_ukernel__neon_u64’:
/home/buildroot/buildroot/output/build/xnnpack-custom/src/u8-vclamp/u8-vclamp-neon-u64.c:24:47: error: passing argument 1 ofvld1q_dup_u8from incompatible pointer type [-Wincompatible-pointer-types]
   24 |   const uint8x16_t voutput_max = vld1q_dup_u8(&params->scalar.max);
      |                                               ^~~~~~~~~~~~~~~~~~~
      |                                               |
      |                                               const uint32_t * {aka const unsigned int *}
In file included from /home/buildroot/buildroot/output/build/xnnpack-custom/src/u8-vclamp/u8-vclamp-neon-u64.c:8:
/home/buildroot/buildroot/output/per-package/xnnpack/host/lib/gcc/arm-buildroot-linux-gnueabihf/14.2.0/include/arm_neon.h:11536:31: note: expectedconst uint8_t *’ {akaconst unsigned char *’} but argument is of typeconst uint32_t *’ {akaconst unsigned int *’}
11536 | vld1q_dup_u8 (const uint8_t * __a)
      |               ~~~~~~~~~~~~~~~~^~~
/home/buildroot/buildroot/output/build/xnnpack-custom/src/u8-vclamp/u8-vclamp-neon-u64.c:25:47: error: passing argument 1 ofvld1q_dup_u8from incompatible pointer type [-Wincompatible-pointer-types]
   25 |   const uint8x16_t voutput_min = vld1q_dup_u8(&params->scalar.min);
      |                                               ^~~~~~~~~~~~~~~~~~~
      |                                               |
      |                                               const uint32_t * {aka const unsigned int *}
/home/buildroot/buildroot/output/per-package/xnnpack/host/lib/gcc/arm-buildroot-linux-gnueabihf/14.2.0/include/arm_neon.h:11536:31: note: expectedconst uint8_t *’ {akaconst unsigned char *’} but argument is of typeconst uint32_t *’ {akaconst unsigned int *’}
11536 | vld1q_dup_u8 (const uint8_t * __a)
      |               ~~~~~~~~~~~~~~~~^~~

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions