poly_int: instantiate_virtual_regs
commit2c012cd7f0184482a047c32d9a842098bf562e15
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 21 Dec 2017 07:00:52 +0000 (21 07:00 +0000)
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 21 Dec 2017 07:00:52 +0000 (21 07:00 +0000)
tree2eff5af01ca6c65c6232ba9e366ab22902ec09a7
parentf6a1fc98f0827afe45a9fc648bc9ffa1a93f19b2
poly_int: instantiate_virtual_regs

This patch makes the instantiate virtual regs pass track offsets
as poly_ints.

2017-12-21  Richard Sandiford  <richard.sandiford@linaro.org>
    Alan Hayward  <alan.hayward@arm.com>
    David Sherwood  <david.sherwood@arm.com>

gcc/
* function.c (in_arg_offset, var_offset, dynamic_offset)
(out_arg_offset, cfa_offset): Change from int to poly_int64.
(instantiate_new_reg): Return the new offset as a poly_int64_pod
rather than a HOST_WIDE_INT.
(instantiate_virtual_regs_in_rtx): Track polynomial offsets.
(instantiate_virtual_regs_in_insn): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@255920 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/function.c