]> git.ipfire.org Git - thirdparty/gcc.git/commit
arm: Fix arm_simd_types and MVE scalar_types
authorChristophe Lyon <christophe.lyon@linaro.org>
Wed, 15 Nov 2023 07:50:57 +0000 (07:50 +0000)
committerChristophe Lyon <christophe.lyon@linaro.org>
Mon, 20 Nov 2023 11:23:56 +0000 (11:23 +0000)
commitb8592186611b671d6dc47332ecaf4a4b9c3802fb
treee74fdcec30cb855de58d7b002fff50f284f7d139
parenta63cbcc52e4490d365cb09d60ba32577b7134c75
arm: Fix arm_simd_types and MVE scalar_types

So far we define arm_simd_types and scalar_types using type
definitions like intSI_type_node, etc...

This is causing problems with later patches which re-implement
load/store MVE intrinsics, leading to error messages such as:
  error: passing argument 1 of 'vst1q_s32' from incompatible pointer type
  note: expected 'int *' but argument is of type 'int32_t *' {aka 'long int *'}

This patch uses get_typenode_from_name (INT32_TYPE) instead, which
defines the types as appropriate for the target/C library.

2023-11-16  Christophe Lyon  <christophe.lyon@linaro.org>

gcc/
* config/arm/arm-builtins.cc (arm_init_simd_builtin_types): Fix
initialization of arm_simd_types[].eltype.
* config/arm/arm-mve-builtins.def (DEF_MVE_TYPE): Fix scalar
types.
gcc/config/arm/arm-builtins.cc
gcc/config/arm/arm-mve-builtins.def