diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a49e02492362fe0caafd25f5702c253a9495b962..fe32d0f7d3129ea018b731eeba20ef307dc1d393 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2016-11-16 Richard Sandiford <richard.sandiford@arm.com> + Alan Hayward <alan.hayward@arm.com> + David Sherwood <david.sherwood@arm.com> + + * cprop.c (local_cprop_find_used_regs): Use df_read_modify_subreg_p. + 2016-11-16 Richard Biener <rguenther@suse.de> PR middle-end/78333 diff --git a/gcc/cprop.c b/gcc/cprop.c index 6b4c0b8fa389f3f2ab065f4dbc7044c72fcd0338..31868a5c6bb4f5110276eb285d0ace01a61fb820 100644 --- a/gcc/cprop.c +++ b/gcc/cprop.c @@ -1161,9 +1161,7 @@ local_cprop_find_used_regs (rtx *xptr, void *data) return; case SUBREG: - /* Setting a subreg of a register larger than word_mode leaves - the non-written words unchanged. */ - if (GET_MODE_BITSIZE (GET_MODE (SUBREG_REG (x))) > BITS_PER_WORD) + if (df_read_modify_subreg_p (x)) return; break;