From ad334b51696beb8fe749cca68aa082622743cebb Mon Sep 17 00:00:00 2001 From: Jan Hubicka Date: Fri, 15 Dec 2000 15:33:32 +0100 Subject: [PATCH] combine.c (cant_combine_insn_p): Get around SUBREGs when determining hardreg<->reg moves. * combine.c (cant_combine_insn_p): Get around SUBREGs when determining hardreg<->reg moves. From-SVN: r38285 --- gcc/ChangeLog | 5 +++++ gcc/combine.c | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ec345e56031..bf665e470a8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Fri Dec 15 15:32:16 MET 2000 Jan Hubicka + + * combine.c (cant_combine_insn_p): Get around SUBREGs when determining + hardreg<->reg moves. + Fri Dec 15 14:48:37 MET 2000 Jan Hubicka * genrecog.c (add_to_sequence): Remove special case for diff --git a/gcc/combine.c b/gcc/combine.c index 7fa23793cbd..5240e88ed9b 100644 --- a/gcc/combine.c +++ b/gcc/combine.c @@ -1465,6 +1465,10 @@ cant_combine_insn_p (insn) return 0; src = SET_SRC (set); dest = SET_DEST (set); + if (GET_CODE (src) == SUBREG) + src = SUBREG_REG (src); + if (GET_CODE (dest) == SUBREG) + dest = SUBREG_REG (dest); if (REG_P (src) && REG_P (dest) && ((REGNO (src) < FIRST_PSEUDO_REGISTER && ! fixed_regs[REGNO (src)]) -- 2.30.2