This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [15/77] Add 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 12:22:28 -0600
- Subject: Re: [15/77] Add scalar_int_mode
- Authentication-results: sourceware.org; auth=none
- Authentication-results: ext-mx07.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com
- Authentication-results: ext-mx07.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 CBB9EC070E1C
- References: <8760ewohsv.fsf@linaro.org> <87d194loa8.fsf@linaro.org>
On 07/13/2017 02:43 AM, Richard Sandiford wrote:
> Similar to the previous scalar_float_mode patch, but for modes that
> satisfy SCALAR_INT_MODE_P. There are very many uses of scalar integers,
> so this patch only makes a token change to the types of byte_mode,
> word_mode, ptr_mode and rs6000_pmode. The next patches in the series
> gradually replace more uses.
>
> The patch also removes and adds casts to some target-specific code
> due to the new types of SImode, DImode and Pmode.
>
> The as_a <scalar_int_mode> goes away in a later patch.
>
> 2017-07-13 Richard Sandiford <richard.sandiford@linaro.org>
> Alan Hayward <alan.hayward@arm.com>
> David Sherwood <david.sherwood@arm.com>
>
> gcc/
> * config/powerpcspe/powerpcspe.h (rs6000_pmode): Change type from
> machine_mode to scalar_int_mode.
> * config/powerpcspe/powerpcspe.c (rs6000_pmode): Likewise.
> (rs6000_option_override_internal): Remove cast to int.
> * config/rs6000/rs6000.h (rs6000_pmode): Change type from
> machine_mode to scalar_int_mode.
> * config/rs6000/rs6000.c (rs6000_pmode): Likewise.
> (rs6000_option_override_internal): Remove cast to int.
> * config/s390/s390.h (Pmode): Remove cast to machine_mode.
> * config/epiphany/epiphany.h (RTX_OK_FOR_OFFSET_P): Add cast
> to machine_mode.
> * config/s390/s390.c (s390_expand_builtin): Likewise.
> * coretypes.h (scalar_int_mode): New type.
> (opt_scalar_int_mode): New typedef.
> * machmode.h (scalar_int_mode): New class.
> (scalar_int_mode::includes_p): New function.
> (byte_mode): Change type to scalar_int_mode.
> (word_mode): Likewise.
> (ptr_mode): Likewise.
> * emit-rtl.c (byte_mode): Likewise.
> (word_mode): Likewise.
> (ptr_mode): Likewise.
> (init_derived_machine_modes): Update accordingly.
> * genmodes.c (get_mode_class): Return scalar_int_mode for MODE_INT
> and MODE_PARTIAL_INT.
> * gdbhooks.py (build_pretty_printer): Handle scalar_int_mode and
> opt_scalar_int_mode.
OK.
jeff