r255881 - in /trunk/gcc: ChangeLog ira.c
rsandifo@gcc.gnu.org
rsandifo@gcc.gnu.org
Wed Dec 20 12:54:00 GMT 2017
Author: rsandifo
Date: Wed Dec 20 12:54:17 2017
New Revision: 255881
URL: https://gcc.gnu.org/viewcvs?rev=255881&root=gcc&view=rev
Log:
poly_int: ira subreg liveness tracking
Normmaly the IRA-reload interface tries to track the liveness of
individual bytes of an allocno if the allocno is sometimes written
to as a SUBREG. This isn't possible for variable-sized allocnos,
but it doesn't matter because targets with variable-sized registers
should use LRA instead.
This patch adds a get_subreg_tracking_sizes function for deciding
whether it is possible to model a partial read or write. Later
patches make it return false if anything is variable.
2017-12-20 Richard Sandiford <richard.sandiford@linaro.org>
Alan Hayward <alan.hayward@arm.com>
David Sherwood <david.sherwood@arm.com>
gcc/
* ira.c (get_subreg_tracking_sizes): New function.
(init_live_subregs): Take an integer size rather than a register.
(build_insn_chain): Use get_subreg_tracking_sizes. Update calls
to init_live_subregs.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/ira.c
More information about the Gcc-cvs
mailing list