[Patch PR78561 PowerPC] Revert to old behaviour for counting constant pools

Segher Boessenkool segher@kernel.crashing.org
Wed Dec 7 11:56:00 GMT 2016


Hi James,

On Wed, Dec 07, 2016 at 10:31:14AM +0000, James Greenhalgh wrote:
> We always keep the entries in the constant pool after we first see them, and
> we figure out what gets used in the constant pool by sweeping through
> looking for referenced entries. That means we can always answer the
> question "has the constant pool ever had entries?" by checking if there
> is anything at all in there.
> 
> So that's what this patch does.
> 
> Bootstrapped on gcc110 (powerpc64-none-linux-gnu) configured with
> --enable-languages=all,ada,go,obj-c++ with no issues, Segher has also
> tested it with no issues, and I've tested an aarch64-none-elf cross
> compiler to ensure that the original fix still works on AArch64.
> 
> OK?

The rs6000 changes are okay for trunk.  The rest I cannot approve (but
it does look fine).  Thanks,


Segher


> 2016-12-07  James Greenhalgh  <james.greenhalgh@arm.com>
> 
> 	PR rtl-optimization/78561
> 	* config/rs6000/rs6000.c (rs6000_reg_live_or_pic_offset_p) Use

(Missing colon here)

> 	constant_pool_empty_p in place of get_pool_size_upper_bound.
> 	(rs6000_stack_info): Likewise.
> 	(rs6000_emit_prologue): Likewise.
> 	(rs6000_elf_declare_function_name): Likewise.
> 	(rs6000_set_up_by_prologue): Likewise.
> 	(rs6000_can_eliminate): Likewise.
> 	* output.h (get_pool_size_upper_bound): Delete.
> 	(constant_pool_empty_p): New.
> 	* varasm.c (get_pool_size_upper_bound): Delete
> 	(constant_pool_empty_p): New.



More information about the Gcc-patches mailing list