This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [21/77] Replace SCALAR_INT_MODE_P checks with is_a <scalar_int_mode>
- From: Jeff Law <law at redhat dot com>
- To: gcc-patches at gcc dot gnu dot org, richard dot sandiford at linaro dot org
- Date: Mon, 14 Aug 2017 13:50:03 -0600
- Subject: Re: [21/77] Replace SCALAR_INT_MODE_P checks with is_a <scalar_int_mode>
- Authentication-results: sourceware.org; auth=none
- Authentication-results: ext-mx10.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com
- Authentication-results: ext-mx10.extmail.prod.ext.phx2.redhat.com; spf=fail smtp.mailfrom=law at redhat dot com
- Dmarc-filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 9BC9661BB0
- References: <8760ewohsv.fsf@linaro.org> <87mv88k9lw.fsf@linaro.org>
On 07/13/2017 02:46 AM, Richard Sandiford wrote:
> This patch replaces checks of "SCALAR_INT_MODE_P (...)" with
> "is_a <scalar_int_mode> (..., &var)" in cases where it becomes
> useful to refer to the mode as a scalar_int_mode. It also
> replaces some checks for the two constituent classes (MODE_INT
> and MODE_PARTIAL_INT).
>
> The patch also introduces is_a <scalar_int_mode> checks for some
> uses of HWI_COMPUTABLE_MODE_P, which is a subcondition of
> SCALAR_INT_MODE_P.
>
> 2017-07-13 Richard Sandiford <richard.sandiford@linaro.org>
> Alan Hayward <alan.hayward@arm.com>
> David Sherwood <david.sherwood@arm.com>
>
> gcc/
> * wide-int.h (int_traits<unsigned char>) New class.
> (int_traits<unsigned short>) Likewise.
> * cfgexpand.c (expand_debug_expr): Use is_a <scalar_int_mode>.
> Use GET_MODE_UNIT_PRECISION and remove redundant test for
> SCALAR_INT_MODE_P.
> * combine.c (set_nonzero_bits_and_sign_copies): Use
> is_a <scalar_int_mode>.
> (find_split_point): Likewise.
> (combine_simplify_rtx): Likewise.
> (simplify_logical): Likewise.
> (expand_compound_operation): Likewise.
> (expand_field_assignment): Likewise.
> (make_compound_operation): Likewise.
> (extended_count): Likewise.
> (change_zero_ext): Likewise.
> (simplify_comparison): Likewise.
> * dwarf2out.c (scompare_loc_descriptor): Likewise.
> (ucompare_loc_descriptor): Likewise.
> (minmax_loc_descriptor): Likewise.
> (mem_loc_descriptor): Likewise.
> (loc_descriptor): Likewise.
> * expmed.c (init_expmed_one_mode): Likewise.
> * lra-constraints.c (lra_constraint_offset): Likewise.
> * optabs.c (prepare_libcall_arg): Likewise.
> * postreload.c (move2add_note_store): Likewise.
> * reload.c (operands_match_p): Likewise.
> * rtl.h (load_extend_op): Likewise.
> * rtlhooks.c (gen_lowpart_general): Likewise.
> * simplify-rtx.c (simplify_truncation): Likewise.
> (simplify_unary_operation_1): Likewise.
> (simplify_binary_operation_1): Likewise.
> (simplify_const_binary_operation): Likewise.
> (simplify_const_relational_operation): Likewise.
> (simplify_subreg): Likewise.
> * stor-layout.c (bitwise_mode_for_mode): Likewise.
> * var-tracking.c (adjust_mems): Likewise.
> (prepare_call_arguments): Likewise.
>
> gcc/ada/
> * gcc-interface/decl.c (check_ok_for_atomic_type): Use
> is_a <scalar_int_mode>.
> * gcc-interface/trans.c (Pragma_to_gnu): Likewise.
> * gcc-interface/utils.c (gnat_type_for_mode): Likewise.
>
> gcc/fortran/
> * trans-types.c (gfc_type_for_mode): Use is_a <scalar_int_mode>.
>
OK. That's probably all for today :-)
jeff