On Thu, 13 Jun 2024, Li, Pan2 wrote: > Could you please help to update the upstream for another try ? > > Should be fixed by this commit > https://github.com/gcc-mirror/gcc/commit/d03ff3fd3e2da1352a404e3c53fe61314569345c. > > Feel free to ping me if any questions or concerns.
Upstream master (as at 609764a42f0c) doesn't build: In file included from .../gcc/gcc/coretypes.h:487, from .../gcc/gcc/tree-vect-stmts.cc:24: In member function 'bool poly_int<N, T>::is_constant() const [with unsigned int N = 2; C = long unsigned int]', inlined from 'C poly_int<N, T>::to_constant() const [with unsigned int N = 2; C = long unsigned int]' at .../gcc/gcc/poly-int.h:588:3, inlined from 'bool get_group_load_store_type(vec_info*, stmt_vec_info, tree, slp_tree, bool, vec_load_store_type, vect_memory_access_type*, poly_int64*, dr_alignment_support*, int*, gather_scatter_info*, internal_fn*)' at .../gcc/gcc/tree-vect-stmts.cc:2155:39, inlined from 'bool get_load_store_type(vec_info*, stmt_vec_info, tree, slp_tree, bool, vec_load_store_type, unsigned int, vect_memory_access_type*, poly_int64*, dr_alignment_support*, int*, gather_scatter_info*, internal_fn*)' at .../gcc/gcc/tree-vect-stmts.cc:2387:38: .../gcc/gcc/poly-int.h:557:7: error: 'remain.poly_int<2, long unsigned int>::coeffs[1]' may be used uninitialized [-Werror=maybe-uninitialized] 557 | if (this->coeffs[i] != 0) | ^~ .../gcc/gcc/tree-vect-stmts.cc: In function 'bool get_load_store_type(vec_info*, stmt_vec_info, tree, slp_tree, bool, vec_load_store_type, unsigned int, vect_memory_access_type*, poly_int64*, dr_alignment_support*, int*, gather_scatter_info*, internal_fn*)': .../gcc/gcc/tree-vect-stmts.cc:2115:23: note: 'remain.poly_int<2, long unsigned int>::coeffs[1]' was declared here 2115 | poly_uint64 remain; | ^~~~~~ In file included from .../gcc/gcc/system.h:1250, from .../gcc/gcc/tree-vect-stmts.cc:23: In function 'int ceil_log2(long unsigned int)', inlined from 'bool get_group_load_store_type(vec_info*, stmt_vec_info, tree, slp_tree, bool, vec_load_store_type, vect_memory_access_type*, poly_int64*, dr_alignment_support*, int*, gather_scatter_info*, internal_fn*)' at .../gcc/gcc/tree-vect-stmts.cc:2156:43, inlined from 'bool get_load_store_type(vec_info*, stmt_vec_info, tree, slp_tree, bool, vec_load_store_type, unsigned int, vect_memory_access_type*, poly_int64*, dr_alignment_support*, int*, gather_scatter_info*, internal_fn*)' at .../gcc/gcc/tree-vect-stmts.cc:2387:38: .../gcc/gcc/hwint.h:266:17: error: 'remain.poly_int<2, long unsigned int>::coeffs[0]' may be used uninitialized [-Werror=maybe-uninitialized] 266 | return x == 0 ? 0 : floor_log2 (x - 1) + 1; | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ .../gcc/gcc/tree-vect-stmts.cc: In function 'bool get_load_store_type(vec_info*, stmt_vec_info, tree, slp_tree, bool, vec_load_store_type, unsigned int, vect_memory_access_type*, poly_int64*, dr_alignment_support*, int*, gather_scatter_info*, internal_fn*)': .../gcc/gcc/tree-vect-stmts.cc:2115:23: note: 'remain.poly_int<2, long unsigned int>::coeffs[0]' was declared here 2115 | poly_uint64 remain; | ^~~~~~ cc1plus: all warnings being treated as errors make[2]: *** [Makefile:1198: tree-vect-stmts.o] Error 1 and actually e14afbe2d1c6^ doesn't build either (I guess it's just slipped through bisection as the file didn't have to be rebuild or something): In file included from .../gcc/gcc/rtl.h:3973, from .../gcc/gcc/config/riscv/riscv.cc:31: 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 'void riscv_move_integer(rtx, rtx, long int, machine_mode)' at .../gcc/gcc/config/riscv/riscv.cc:2786:10: ./genrtl.h:37:16: error: 'x' may be used uninitialized [-Werror=maybe-uninitialized] 37 | XEXP (rt, 0) = arg0; .../gcc/gcc/config/riscv/riscv.cc: In function 'void riscv_move_integer(rtx, rtx, long int, machine_mode)': .../gcc/gcc/config/riscv/riscv.cc:2723:7: note: 'x' was declared here 2723 | rtx x; | ^ cc1plus: all warnings being treated as errors make[2]: *** [Makefile:2563: riscv.o] Error 1 I hope you'll find this all useful. As it happens I don't need to verify my needs with a RISC-V target anymore, so I'm leaving it all up to you now as I need to switch back to Alpha, which has been my actual objective, and these rebuilds have taken a lot of my attention already. Thank you for your input. Maciej