mirror of
https://gcc.gnu.org/git/gcc.git
synced 2025-01-25 05:44:49 +08:00
fwprop.c (propagate_rtx): Also set PR_CAN_APPEAR for subregs.
* fwprop.c (propagate_rtx): Also set PR_CAN_APPEAR for subregs. Co-Authored-By: Richard Sandiford <rdsandiford@googlemail.com> From-SVN: r186278
This commit is contained in:
parent
e30459d52b
commit
ca18edc55f
@ -1,3 +1,8 @@
|
||||
2012-04-10 Ulrich Weigand <ulrich.weigand@linaro.org>
|
||||
Richard Sandiford <rdsandiford@googlemail.com>
|
||||
|
||||
* fwprop.c (propagate_rtx): Also set PR_CAN_APPEAR for subregs.
|
||||
|
||||
2012-04-10 Richard Guenther <rguenther@suse.de>
|
||||
|
||||
PR middle-end/52888
|
||||
|
@ -664,7 +664,12 @@ propagate_rtx (rtx x, enum machine_mode mode, rtx old_rtx, rtx new_rtx,
|
||||
return NULL_RTX;
|
||||
|
||||
flags = 0;
|
||||
if (REG_P (new_rtx) || CONSTANT_P (new_rtx))
|
||||
if (REG_P (new_rtx)
|
||||
|| CONSTANT_P (new_rtx)
|
||||
|| (GET_CODE (new_rtx) == SUBREG
|
||||
&& REG_P (SUBREG_REG (new_rtx))
|
||||
&& (GET_MODE_SIZE (mode)
|
||||
<= GET_MODE_SIZE (GET_MODE (SUBREG_REG (new_rtx))))))
|
||||
flags |= PR_CAN_APPEAR;
|
||||
if (!for_each_rtx (&new_rtx, varying_mem_p, NULL))
|
||||
flags |= PR_HANDLE_MEM;
|
||||
|
Loading…
Reference in New Issue
Block a user