Support using multiple registers to hold the frame pointer
authorKwok Cheung Yeung <kcy@codesourcery.com>
Thu, 7 Nov 2019 00:07:04 +0000 (00:07 +0000)
committerKwok Cheung Yeung <kcy@gcc.gnu.org>
Thu, 7 Nov 2019 00:07:04 +0000 (00:07 +0000)
commitff33d18785b1190441742b27fb89bb970c8b9258
tree550dfd60b511c26ceb38535232227e59225ef6c5
parent7b88f66de61f4533bbd7ae0124c4260c2959f1e0
Support using multiple registers to hold the frame pointer

When multiple hard registers are required to hold the frame pointer,
ensure that the registers after the first are marked as non-allocatable,
live and eliminable as well.

2019-11-07  Kwok Cheung Yeung  <kcy@codesourcery.com>

gcc/
* ira.c (setup_alloc_regs): Setup no_unit_alloc_regs for
frame pointer in multiple registers.
(ira_setup_eliminable_regset): Setup eliminable_regset,
ira_no_alloc_regs and regs_ever_live for frame pointer in
multiple registers.

From-SVN: r277895
gcc/ChangeLog
gcc/ira.c