Hi Jeevitha, on 2023/6/7 13:44, P Jeevitha via Gcc-patches wrote: > PR106907 has few warnings spotted from cppcheck. In that addressing > redundant initialization issue. Here the initialized value of 'new_addr' > was overwritten before it was read. Updated the source by removing the > unnecessary initialization of 'new_addr'.
This is okay for trunk (no backports needed btw), this fix can even be taken as obvious, thanks! > > 2023-06-07 Jeevitha Palanisamy <jeevi...@linux.ibm.com> > > gcc/ > PR target/106907 One curious question is that this PR106907 seemed not to report this issue, is there another PR reporting this? Or do I miss something? BR, Kewen > * gcc/config/rs6000/rs6000.cc (rs6000_expand_vector_extract): Remove > redundant > initialization of new_addr. > > > diff --git a/gcc/config/rs6000/rs6000.cc b/gcc/config/rs6000/rs6000.cc > index 42f49e4a56b..d994e004bd3 100644 > --- a/gcc/config/rs6000/rs6000.cc > +++ b/gcc/config/rs6000/rs6000.cc > @@ -7660,12 +7660,11 @@ rs6000_expand_vector_extract (rtx target, rtx vec, > rtx elt) > { > unsigned int ele_size = GET_MODE_SIZE (inner_mode); > rtx num_ele_m1 = GEN_INT (GET_MODE_NUNITS (mode) - 1); > - rtx new_addr = gen_reg_rtx (Pmode); > > elt = gen_rtx_AND (Pmode, elt, num_ele_m1); > if (ele_size > 1) > elt = gen_rtx_MULT (Pmode, elt, GEN_INT (ele_size)); > - new_addr = gen_rtx_PLUS (Pmode, XEXP (mem, 0), elt); > + rtx new_addr = gen_rtx_PLUS (Pmode, XEXP (mem, 0), elt); > new_addr = change_address (mem, inner_mode, new_addr); > emit_move_insn (target, new_addr); > } >