Issue for gcc for SuperH
John Klos <[email protected]> Thu, 5 Mar 2015 02:43:08 +0000 (UTC)
| Newsgroups | gmane.os.netbsd.ports.sh3 |
|---|---|
| Message-ID | <[email protected]> |
Hi, I see that the fix was never committed to current: chi# diff /usr/src/external/gpl3/gcc/dist/gcc/rtlanal.c /usr/current/src/external/gpl3/gcc/dist/gcc/rtlanal.c 889c889,897 < if (INSN_P (insn) && FIND_REG_INC_NOTE (insn, reg)) --- > if (INSN_P (insn) > && (FIND_REG_INC_NOTE (insn, reg) > || (CALL_P (insn) > && ((REG_P (reg) > && REGNO (reg) < FIRST_PSEUDO_REGISTER > && overlaps_hard_reg_set_p (regs_invalidated_by_call, > GET_MODE (reg), REGNO (reg))) > || MEM_P (reg) > || find_reg_fusage (insn, CLOBBER, reg))))) 891,905d898 < < /* After delay slot handling, call and branch insns might be in a < sequence. Check all the elements there. */ < if (INSN_P (insn) && GET_CODE (PATTERN (insn)) == SEQUENCE) < for (int i = 0; i < XVECLEN (PATTERN (insn), 0); ++i) < if (reg_set_p (reg, XVECEXP (PATTERN (insn), 0, i))) < return true; < < if (CALL_P (insn) < && ((REG_P (reg) && REGNO (reg) < FIRST_PSEUDO_REGISTER < && overlaps_hard_reg_set_p (regs_invalidated_by_call, < GET_MODE (reg), REGNO (reg))) < || MEM_P (reg) < || find_reg_fusage (insn, CLOBBER, reg))) < return true; Did another patch, perhaps the one disabling the optimization get committed instead? Should this be committed? Thanks, John