Commit 24f77f59 by Alan Modra Committed by Alan Modra

[RS6000] Correct PIC_OFFSET_TABLE_REGNUM

Leaving this as r30 results in pic_offset_table_rtx of (reg 30)
for -m64, which is completely bogus.  Various rtl analysis predicate
functions treat pic_offset_table_rtx specially..

	* config/rs6000/rs6000.h (PIC_OFFSET_TABLE_REGNUM): Correct.

From-SVN: r235876
parent 967245d1
2016-05-04 Alan Modra <amodra@gmail.com>
* config/rs6000/rs6000.h (PIC_OFFSET_TABLE_REGNUM): Correct.
* config/rs6000/sysv4.h (TARGET_TOC): Simplify.
* config/rs6000/rs6000.c (rs6000_elf_output_toc_section_asm_op):
Align .toc.
......
......@@ -2058,7 +2058,10 @@ do { \
to allocate such a register (if necessary). */
#define RS6000_PIC_OFFSET_TABLE_REGNUM 30
#define PIC_OFFSET_TABLE_REGNUM (flag_pic ? RS6000_PIC_OFFSET_TABLE_REGNUM : INVALID_REGNUM)
#define PIC_OFFSET_TABLE_REGNUM \
(TARGET_TOC ? TOC_REGISTER \
: flag_pic ? RS6000_PIC_OFFSET_TABLE_REGNUM \
: INVALID_REGNUM)
#define TOC_REGISTER (TARGET_MINIMAL_TOC ? RS6000_PIC_OFFSET_TABLE_REGNUM : 2)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment