------- Comment #7 from hjl dot tools at gmail dot com  2008-05-16 21:54 -------
find_reloads in reload.c has

  /* Special case a simple move with an input reload and a
     destination of a hard reg, if the hard reg is ok, use it.  */
  for (i = 0; i < n_reloads; i++) 
    if (rld[i].when_needed == RELOAD_FOR_INPUT
        && GET_CODE (PATTERN (insn)) == SET
        && REG_P (SET_DEST (PATTERN (insn)))
        && (SET_SRC (PATTERN (insn)) == rld[i].in
            || SET_SRC (PATTERN (insn)) == rld[i].in_reg)
        && !elimination_target_reg_p (SET_DEST (PATTERN (insn))))
      {    
        rtx dest = SET_DEST (PATTERN (insn));
        unsigned int regno = REGNO (dest);

If it can be extended to handle vector instructions, it will help this
bug.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36222

Reply via email to