This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [4/9] Remove AND_HARD_REG_SET


On 9/9/19 9:59 AM, Richard Sandiford wrote:
> Use "x &= y" instead of "AND_HARD_REG_SET (x, y)" (or just "x & y"
> if the result is a temporary).
> 
> 
> 2019-09-09  Richard Sandiford  <richard.sandiford@arm.com>
> 
> gcc/
> 	* hard-reg-set.h (HARD_REG_SET::operator&): New function.
> 	(HARD_REG_SET::operator&): Likewise.
> 	(AND_HARD_REG_SET): Delete.
> 	* caller-save.c (setup_save_areas): Use "&" instead of
> 	AND_HARD_REG_SET.
> 	(save_call_clobbered_regs): Likewise.
> 	* config/gcn/gcn.c (gcn_md_reorg): Likewise.
> 	* config/m32c/m32c.c (reduce_class): Likewise.
> 	* config/rs6000/rs6000.c (rs6000_register_move_cost): Likewise.
> 	* final.c (get_call_reg_set_usage): Likewise.
> 	* ira-color.c (add_allocno_hard_regs_to_forest): Likewise.
> 	(setup_left_conflict_sizes_p): Likewise.
> 	* ira-conflicts.c (print_allocno_conflicts): Likewise.
> 	(ira_build_conflicts): Likewise.
> 	* ira-costs.c (restrict_cost_classes): Likewise.
> 	* ira.c (setup_stack_reg_pressure_class, setup_class_translate_array)
> 	(setup_reg_class_relations): Likewise.
> 	* reginfo.c (init_reg_sets_1, record_subregs_of_mode): Likewise.
> 	* reload1.c (maybe_fix_stack_asms, finish_spills): Likewise.
> 	* resource.c (find_dead_or_set_registers): Likewise.
> 	* sel-sched.c (mark_unavailable_hard_regs): Likewise.
> 
OK.

FWIW, in case anyone is wondering, yes I see the operator overloads and
these patches seem like precisely the way we want to be using them.


jeff


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]