This is the mail archive of the gcc-cvs@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]

r251467 - in /trunk/gcc: ChangeLog config/epiph...


Author: rsandifo
Date: Wed Aug 30 11:10:11 2017
New Revision: 251467

URL: https://gcc.gnu.org/viewcvs?rev=251467&root=gcc&view=rev
Log:
[15/77] Add scalar_int_mode

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-08-30  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.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/epiphany/epiphany.h
    trunk/gcc/config/powerpcspe/powerpcspe.c
    trunk/gcc/config/powerpcspe/powerpcspe.h
    trunk/gcc/config/rs6000/rs6000.c
    trunk/gcc/config/rs6000/rs6000.h
    trunk/gcc/config/s390/s390.c
    trunk/gcc/config/s390/s390.h
    trunk/gcc/coretypes.h
    trunk/gcc/emit-rtl.c
    trunk/gcc/gdbhooks.py
    trunk/gcc/genmodes.c
    trunk/gcc/machmode.h


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