From 9840b2fa87cc9657dca2b63dc66d37f94d2c9cb8 Mon Sep 17 00:00:00 2001 From: Richard Sandiford Date: Wed, 22 Oct 2014 12:02:11 +0000 Subject: md.texi: Document "preferred_for_size" and "preferred_for_speed" attributes. gcc/ * doc/md.texi: Document "preferred_for_size" and "preferred_for_speed" attributes. * genattr.c (main): Handle "preferred_for_size" and "preferred_for_speed" in the same way as "enabled". * recog.h (bool_attr): New enum. (target_recog): Replace x_enabled_alternatives with x_bool_attr_masks. (get_preferred_alternatives, check_bool_attrs): Declare. * recog.c (have_bool_attr, get_bool_attr, get_bool_attr_mask_uncached) (get_bool_attr_mask, get_preferred_alternatives, check_bool_attrs): New functions. (get_enabled_alternatives): Use get_bool_attr_mask. * ira-costs.c (record_reg_classes): Use get_preferred_alternatives instead of recog_data.enabled_alternatives. * ira.c (ira_setup_alts): Likewise. * postreload.c (reload_cse_simplify_operands): Likewise. * config/i386/i386.c (ix86_legitimate_combined_insn): Likewise. * ira-lives.c (preferred_alternatives): New variable. (process_bb_node_lives): Set it. (check_and_make_def_conflict, make_early_clobber_and_input_conflicts) (single_reg_class, ira_implicitly_set_insn_hard_regs): Use it instead of recog_data.enabled_alternatives. * lra-int.h (lra_insn_recog_data): Replace enabled_alternatives to preferred_alternatives. * lra-constraints.c (process_alt_operands): Update accordingly. * lra.c (lra_set_insn_recog_data): Likewise. (lra_update_insn_recog_data): Assert check_bool_attrs. From-SVN: r216554 --- gcc/lra-int.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gcc/lra-int.h') diff --git a/gcc/lra-int.h b/gcc/lra-int.h index 1337aca..8bd45b2 100644 --- a/gcc/lra-int.h +++ b/gcc/lra-int.h @@ -233,8 +233,8 @@ struct lra_insn_recog_data value can be NULL or points to array of the hard register numbers ending with a negative value. */ int *arg_hard_regs; - /* Alternative enabled for the insn. NULL for debug insns. */ - alternative_mask enabled_alternatives; + /* Cached value of get_preferred_alternatives. */ + alternative_mask preferred_alternatives; /* The following member value is always NULL for a debug insn. */ struct lra_insn_reg *regs; }; -- cgit v1.1