diff options
Diffstat (limited to 'gcc/config/ia64')
-rw-r--r-- | gcc/config/ia64/div.md | 2 | ||||
-rw-r--r-- | gcc/config/ia64/ia64-protos.h | 4 | ||||
-rw-r--r-- | gcc/config/ia64/ia64.c | 51 | ||||
-rw-r--r-- | gcc/config/ia64/ia64.md | 4 | ||||
-rw-r--r-- | gcc/config/ia64/sync.md | 8 | ||||
-rw-r--r-- | gcc/config/ia64/vect.md | 6 |
6 files changed, 39 insertions, 36 deletions
diff --git a/gcc/config/ia64/div.md b/gcc/config/ia64/div.md index d26954b9a1e..a6547a680ff 100644 --- a/gcc/config/ia64/div.md +++ b/gcc/config/ia64/div.md @@ -158,7 +158,7 @@ ;; to be written for RFmode only and to not have to handle multiple ;; modes or to have to handle a register in more than one mode. -(define_mode_macro SDX_F [SF DF XF]) +(define_mode_iterator SDX_F [SF DF XF]) (define_insn "extend<mode>rf2" [(set (match_operand:RF 0 "fr_register_operand" "=f") diff --git a/gcc/config/ia64/ia64-protos.h b/gcc/config/ia64/ia64-protos.h index eb230b65f36..e3b78641eb8 100644 --- a/gcc/config/ia64/ia64-protos.h +++ b/gcc/config/ia64/ia64-protos.h @@ -77,7 +77,7 @@ extern rtx ia64_function_arg (CUMULATIVE_ARGS *, enum machine_mode, tree, int, int); extern rtx ia64_expand_builtin (tree, rtx, rtx, enum machine_mode, int); extern rtx ia64_va_arg (tree, tree); -extern rtx ia64_function_value (tree, tree); +extern rtx ia64_function_value (const_tree, const_tree); #endif /* RTX_CODE */ extern void ia64_function_arg_advance (CUMULATIVE_ARGS *, enum machine_mode, @@ -100,7 +100,7 @@ extern void ia64_split_return_addr_rtx (rtx); #ifdef ARGS_SIZE_RTX /* expr.h defines ARGS_SIZE_RTX and `enum direction'. */ -extern enum direction ia64_hpux_function_arg_padding (enum machine_mode, tree); +extern enum direction ia64_hpux_function_arg_padding (enum machine_mode, const_tree); #endif /* ARGS_SIZE_RTX */ extern void ia64_hpux_handle_builtin_pragma (struct cpp_reader *); diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c index bb5515169a3..46f75c5a205 100644 --- a/gcc/config/ia64/ia64.c +++ b/gcc/config/ia64/ia64.c @@ -169,14 +169,14 @@ static void ia64_dependencies_evaluation_hook (rtx, rtx); static void ia64_init_dfa_pre_cycle_insn (void); static rtx ia64_dfa_pre_cycle_insn (void); static int ia64_first_cycle_multipass_dfa_lookahead_guard (rtx); -static bool ia64_first_cycle_multipass_dfa_lookahead_guard_spec (rtx); +static bool ia64_first_cycle_multipass_dfa_lookahead_guard_spec (const_rtx); static int ia64_dfa_new_cycle (FILE *, int, rtx, int, int, int *); static void ia64_h_i_d_extended (void); static int ia64_mode_to_int (enum machine_mode); static void ia64_set_sched_flags (spec_info_t); static int ia64_speculate_insn (rtx, ds_t, rtx *); static rtx ia64_gen_spec_insn (rtx, ds_t, int, bool, bool); -static bool ia64_needs_block_p (rtx); +static bool ia64_needs_block_p (const_rtx); static rtx ia64_gen_check (rtx, rtx, bool); static int ia64_spec_check_p (rtx); static int ia64_spec_check_src_p (rtx); @@ -195,13 +195,13 @@ static rtx gen_movdi_x (rtx, rtx, rtx); static rtx gen_fr_spill_x (rtx, rtx, rtx); static rtx gen_fr_restore_x (rtx, rtx, rtx); -static enum machine_mode hfa_element_mode (tree, bool); +static enum machine_mode hfa_element_mode (const_tree, bool); static void ia64_setup_incoming_varargs (CUMULATIVE_ARGS *, enum machine_mode, tree, int *, int); static int ia64_arg_partial_bytes (CUMULATIVE_ARGS *, enum machine_mode, tree, bool); static bool ia64_function_ok_for_sibcall (tree, tree); -static bool ia64_return_in_memory (tree, tree); +static bool ia64_return_in_memory (const_tree, const_tree); static bool ia64_rtx_costs (rtx, int, int, int *); static void fix_range (const char *); static bool ia64_handle_option (size_t, const char *, int); @@ -211,7 +211,7 @@ static void emit_all_insn_group_barriers (FILE *); static void final_emit_insn_group_barriers (FILE *); static void emit_predicate_relation_info (void); static void ia64_reorg (void); -static bool ia64_in_small_data_p (tree); +static bool ia64_in_small_data_p (const_tree); static void process_epilogue (FILE *, rtx, bool, bool); static int process_set (FILE *, rtx, rtx, bool, bool); @@ -278,10 +278,10 @@ static tree ia64_gimplify_va_arg (tree, tree, tree *, tree *); static bool ia64_scalar_mode_supported_p (enum machine_mode mode); static bool ia64_vector_mode_supported_p (enum machine_mode mode); static bool ia64_cannot_force_const_mem (rtx); -static const char *ia64_mangle_type (tree); -static const char *ia64_invalid_conversion (tree, tree); -static const char *ia64_invalid_unary_op (int, tree); -static const char *ia64_invalid_binary_op (int, tree, tree); +static const char *ia64_mangle_type (const_tree); +static const char *ia64_invalid_conversion (const_tree, const_tree); +static const char *ia64_invalid_unary_op (int, const_tree); +static const char *ia64_invalid_binary_op (int, const_tree, const_tree); static enum machine_mode ia64_c_mode_for_suffix (char); /* Table of valid machine attributes. */ @@ -396,7 +396,7 @@ static const struct attribute_spec ia64_attribute_table[] = #undef TARGET_ASM_OUTPUT_MI_THUNK #define TARGET_ASM_OUTPUT_MI_THUNK ia64_output_mi_thunk #undef TARGET_ASM_CAN_OUTPUT_MI_THUNK -#define TARGET_ASM_CAN_OUTPUT_MI_THUNK hook_bool_tree_hwi_hwi_tree_true +#define TARGET_ASM_CAN_OUTPUT_MI_THUNK hook_bool_const_tree_hwi_hwi_const_tree_true #undef TARGET_ASM_FILE_START #define TARGET_ASM_FILE_START ia64_file_start @@ -3870,7 +3870,7 @@ ia64_setup_incoming_varargs (CUMULATIVE_ARGS *cum, enum machine_mode mode, aggregates are excluded because our parallels crash the middle-end. */ static enum machine_mode -hfa_element_mode (tree type, bool nested) +hfa_element_mode (const_tree type, bool nested) { enum machine_mode element_mode = VOIDmode; enum machine_mode mode; @@ -4346,7 +4346,7 @@ ia64_gimplify_va_arg (tree valist, tree type, tree *pre_p, tree *post_p) in a register. */ static bool -ia64_return_in_memory (tree valtype, tree fntype ATTRIBUTE_UNUSED) +ia64_return_in_memory (const_tree valtype, const_tree fntype ATTRIBUTE_UNUSED) { enum machine_mode mode; enum machine_mode hfa_mode; @@ -4382,7 +4382,7 @@ ia64_return_in_memory (tree valtype, tree fntype ATTRIBUTE_UNUSED) /* Return rtx for register that holds the function return value. */ rtx -ia64_function_value (tree valtype, tree func ATTRIBUTE_UNUSED) +ia64_function_value (const_tree valtype, const_tree func ATTRIBUTE_UNUSED) { enum machine_mode mode; enum machine_mode hfa_mode; @@ -6578,7 +6578,7 @@ ia64_first_cycle_multipass_dfa_lookahead_guard (rtx insn) can be chosen. */ static bool -ia64_first_cycle_multipass_dfa_lookahead_guard_spec (rtx insn) +ia64_first_cycle_multipass_dfa_lookahead_guard_spec (const_rtx insn) { gcc_assert (insn && INSN_P (insn)); /* Size of ALAT is 32. As far as we perform conservative data speculation, @@ -7039,7 +7039,7 @@ enum { SPEC_GEN_CHECK_MUTATION_OFFSET = 5 * SPEC_N }; /* Return nonzero, if INSN needs branchy recovery check. */ static bool -ia64_needs_block_p (rtx insn) +ia64_needs_block_p (const_rtx insn) { int check_no; @@ -7376,7 +7376,8 @@ static htab_t bundle_state_table; static unsigned bundle_state_hash (const void *bundle_state) { - const struct bundle_state *state = (struct bundle_state *) bundle_state; + const struct bundle_state *const state + = (const struct bundle_state *) bundle_state; unsigned result, i; for (result = i = 0; i < dfa_state_size; i++) @@ -7390,8 +7391,10 @@ bundle_state_hash (const void *bundle_state) static int bundle_state_eq_p (const void *bundle_state_1, const void *bundle_state_2) { - const struct bundle_state * state1 = (struct bundle_state *) bundle_state_1; - const struct bundle_state * state2 = (struct bundle_state *) bundle_state_2; + const struct bundle_state *const state1 + = (const struct bundle_state *) bundle_state_1; + const struct bundle_state *const state2 + = (const struct bundle_state *) bundle_state_2; return (state1->insn_num == state2->insn_num && memcmp (state1->dfa_state, state2->dfa_state, @@ -8711,7 +8714,7 @@ ia64_eh_uses (int regno) types which can't go in sdata/sbss. */ static bool -ia64_in_small_data_p (tree exp) +ia64_in_small_data_p (const_tree exp) { if (TARGET_NO_SDATA) return false; @@ -9235,7 +9238,7 @@ ia64_expand_builtin (tree exp, rtx target, rtx subtarget ATTRIBUTE_UNUSED, most significant bits of the stack slot. */ enum direction -ia64_hpux_function_arg_padding (enum machine_mode mode, tree type) +ia64_hpux_function_arg_padding (enum machine_mode mode, const_tree type) { /* Exception to normal case for structures/unions/etc. */ @@ -9765,7 +9768,7 @@ ia64_profile_hook (int labelno) /* Return the mangling of TYPE if it is an extended fundamental type. */ static const char * -ia64_mangle_type (tree type) +ia64_mangle_type (const_tree type) { type = TYPE_MAIN_VARIANT (type); @@ -9790,7 +9793,7 @@ ia64_mangle_type (tree type) /* Return the diagnostic message string if conversion from FROMTYPE to TOTYPE is not allowed, NULL otherwise. */ static const char * -ia64_invalid_conversion (tree fromtype, tree totype) +ia64_invalid_conversion (const_tree fromtype, const_tree totype) { /* Reject nontrivial conversion to or from __fpreg. */ if (TYPE_MODE (fromtype) == RFmode @@ -9806,7 +9809,7 @@ ia64_invalid_conversion (tree fromtype, tree totype) /* Return the diagnostic message string if the unary operation OP is not permitted on TYPE, NULL otherwise. */ static const char * -ia64_invalid_unary_op (int op, tree type) +ia64_invalid_unary_op (int op, const_tree type) { /* Reject operations on __fpreg other than unary + or &. */ if (TYPE_MODE (type) == RFmode @@ -9819,7 +9822,7 @@ ia64_invalid_unary_op (int op, tree type) /* Return the diagnostic message string if the binary operation OP is not permitted on TYPE1 and TYPE2, NULL otherwise. */ static const char * -ia64_invalid_binary_op (int op ATTRIBUTE_UNUSED, tree type1, tree type2) +ia64_invalid_binary_op (int op ATTRIBUTE_UNUSED, const_tree type1, const_tree type2) { /* Reject operations on __fpreg. */ if (TYPE_MODE (type1) == RFmode || TYPE_MODE (type2) == RFmode) diff --git a/gcc/config/ia64/ia64.md b/gcc/config/ia64/ia64.md index 2cbec722e03..52f26aa84ab 100644 --- a/gcc/config/ia64/ia64.md +++ b/gcc/config/ia64/ia64.md @@ -385,8 +385,8 @@ } [(set_attr "itanium_class" "ialu,ialu,long_i,ld,st,frfr,tofr,fmisc,fld,stf,frbr,tobr,frar_i,toar_i,frar_m,toar_m,frpr,topr")]) -(define_mode_macro MODE [BI QI HI SI DI SF DF XF TI]) -(define_mode_macro MODE_FOR_EXTEND [QI HI SI]) +(define_mode_iterator MODE [BI QI HI SI DI SF DF XF TI]) +(define_mode_iterator MODE_FOR_EXTEND [QI HI SI]) (define_mode_attr output_a [ (BI "ld1.a %0 = %1%P1") diff --git a/gcc/config/ia64/sync.md b/gcc/config/ia64/sync.md index 9d9957762a6..c467b0db097 100644 --- a/gcc/config/ia64/sync.md +++ b/gcc/config/ia64/sync.md @@ -18,12 +18,12 @@ ;; along with GCC; see the file COPYING3. If not see ;; <http://www.gnu.org/licenses/>. -(define_mode_macro IMODE [QI HI SI DI]) -(define_mode_macro I124MODE [QI HI SI]) -(define_mode_macro I48MODE [SI DI]) +(define_mode_iterator IMODE [QI HI SI DI]) +(define_mode_iterator I124MODE [QI HI SI]) +(define_mode_iterator I48MODE [SI DI]) (define_mode_attr modesuffix [(QI "1") (HI "2") (SI "4") (DI "8")]) -(define_code_macro FETCHOP [plus minus ior xor and]) +(define_code_iterator FETCHOP [plus minus ior xor and]) (define_code_attr fetchop_name [(plus "add") (minus "sub") (ior "ior") (xor "xor") (and "and")]) diff --git a/gcc/config/ia64/vect.md b/gcc/config/ia64/vect.md index bca5d8c857d..994ec90b2eb 100644 --- a/gcc/config/ia64/vect.md +++ b/gcc/config/ia64/vect.md @@ -20,9 +20,9 @@ ;; Integer vector operations -(define_mode_macro VECINT [V8QI V4HI V2SI]) -(define_mode_macro VECINT12 [V8QI V4HI]) -(define_mode_macro VECINT24 [V4HI V2SI]) +(define_mode_iterator VECINT [V8QI V4HI V2SI]) +(define_mode_iterator VECINT12 [V8QI V4HI]) +(define_mode_iterator VECINT24 [V4HI V2SI]) (define_mode_attr vecsize [(V8QI "1") (V4HI "2") (V2SI "4")]) (define_expand "mov<mode>" |