rs6000.c (split_stack_arg_pointer_used_p): Scan correct block for use of r12.
* config/rs6000/rs6000.c (split_stack_arg_pointer_used_p): Scan correct block for use of r12. (rs6000_expand_split_stack_prologue): Error on r29 asm global reg. From-SVN: r223878
This commit is contained in:
parent
adad2a7d90
commit
43f7e3fec5
2 changed files with 14 additions and 1 deletions
|
@ -1,3 +1,9 @@
|
|||
2015-05-30 Alan Modra <amodra@gmail.com>
|
||||
|
||||
* config/rs6000/rs6000.c (split_stack_arg_pointer_used_p): Scan
|
||||
correct block for use of r12.
|
||||
(rs6000_expand_split_stack_prologue): Error on r29 asm global reg.
|
||||
|
||||
2015-05-29 Dominik Vogt <vogt@linux.vnet.ibm.com>
|
||||
|
||||
PR target/66215
|
||||
|
|
|
@ -23450,7 +23450,7 @@ split_stack_arg_pointer_used_p (void)
|
|||
/* Unfortunately we also need to do some code scanning, since
|
||||
r12 may have been substituted for the pseudo. */
|
||||
rtx_insn *insn;
|
||||
basic_block bb = ENTRY_BLOCK_PTR_FOR_FN (cfun);
|
||||
basic_block bb = ENTRY_BLOCK_PTR_FOR_FN (cfun)->next_bb;
|
||||
FOR_BB_INSNS (bb, insn)
|
||||
if (NONDEBUG_INSN_P (insn))
|
||||
{
|
||||
|
@ -25942,6 +25942,13 @@ rs6000_expand_split_stack_prologue (void)
|
|||
if (!info->push_p)
|
||||
return;
|
||||
|
||||
if (global_regs[29])
|
||||
{
|
||||
error ("-fsplit-stack uses register r29");
|
||||
inform (DECL_SOURCE_LOCATION (global_regs_decl[29]),
|
||||
"conflicts with %qD", global_regs_decl[29]);
|
||||
}
|
||||
|
||||
allocate = info->total_size;
|
||||
if (allocate > (unsigned HOST_WIDE_INT) 1 << 31)
|
||||
{
|
||||
|
|
Loading…
Add table
Reference in a new issue