Hi All, The recent commits for MVE on Saturday have broken armhf bootstrap due to a -Werror false positive:
inlined from 'virtual rtx_def* {anonymous}::vstrq_scatter_base_impl::expand(arm_mve::function_expander&) const' at /gcc/config/arm/arm-mve-builtins-base.cc:352:17: ./genrtl.h:38:16: error: 'new_base' may be used uninitialized [-Werror=maybe-uninitialized] 38 | XEXP (rt, 1) = arg1; /gcc/config/arm/arm-mve-builtins-base.cc: In member function 'virtual rtx_def* {anonymous}::vstrq_scatter_base_impl::expand(arm_mve::function_expander&) const': /gcc/config/arm/arm-mve-builtins-base.cc:311:26: note: 'new_base' was declared here 311 | rtx insns, base_ptr, new_base; | ^~~~~~~~ In function 'rtx_def* init_rtx_fmt_ee(rtx, machine_mode, rtx, rtx)', inlined from 'rtx_def* gen_rtx_fmt_ee_stat(rtx_code, machine_mode, rtx, rtx)' at ./genrtl.h:50:26, inlined from 'virtual rtx_def* {anonymous}::vldrq_gather_base_impl::expand(arm_mve::function_expander&) const' at /gcc/config/arm/arm-mve-builtins-base.cc:527:17: ./genrtl.h:38:16: error: 'new_base' may be used uninitialized [-Werror=maybe-uninitialized] 38 | XEXP (rt, 1) = arg1; /gcc/config/arm/arm-mve-builtins-base.cc: In member function 'virtual rtx_def* {anonymous}::vldrq_gather_base_impl::expand(arm_mve::function_expander&) const': /gcc/config/arm/arm-mve-builtins-base.cc:486:26: note: 'new_base' was declared here 486 | rtx insns, base_ptr, new_base; To fix it I just initialize the value. Bootstrapped Regtested on m-none-linux-gnueabihf and no issues. committed as obvious. Thanks, Tamar gcc/ChangeLog: * config/arm/arm-mve-builtins-base.cc (expand): Initialize new_base. --- diff --git a/gcc/config/arm/arm-mve-builtins-base.cc b/gcc/config/arm/arm-mve-builtins-base.cc index 723004b53d7baf8a1a8ffe9b5f58fe0636228704..ef3c504b1b304674ff93b9b0d7c7a5ea2fc501d2 100644 --- a/gcc/config/arm/arm-mve-builtins-base.cc +++ b/gcc/config/arm/arm-mve-builtins-base.cc @@ -308,7 +308,7 @@ public: rtx expand (function_expander &e) const override { insn_code icode; - rtx insns, base_ptr, new_base; + rtx insns, base_ptr, new_base = NULL_RTX; machine_mode base_mode; if ((e.mode_suffix_id != MODE_none) @@ -483,7 +483,7 @@ public: rtx expand (function_expander &e) const override { insn_code icode; - rtx insns, base_ptr, new_base; + rtx insns, base_ptr, new_base = NULL_RTX; machine_mode base_mode; if ((e.mode_suffix_id != MODE_none) --
diff --git a/gcc/config/arm/arm-mve-builtins-base.cc b/gcc/config/arm/arm-mve-builtins-base.cc index 723004b53d7baf8a1a8ffe9b5f58fe0636228704..ef3c504b1b304674ff93b9b0d7c7a5ea2fc501d2 100644 --- a/gcc/config/arm/arm-mve-builtins-base.cc +++ b/gcc/config/arm/arm-mve-builtins-base.cc @@ -308,7 +308,7 @@ public: rtx expand (function_expander &e) const override { insn_code icode; - rtx insns, base_ptr, new_base; + rtx insns, base_ptr, new_base = NULL_RTX; machine_mode base_mode; if ((e.mode_suffix_id != MODE_none) @@ -483,7 +483,7 @@ public: rtx expand (function_expander &e) const override { insn_code icode; - rtx insns, base_ptr, new_base; + rtx insns, base_ptr, new_base = NULL_RTX; machine_mode base_mode; if ((e.mode_suffix_id != MODE_none)