Commit 41030557 by Richard Sandiford Committed by Richard Sandiford

mips-ftypes.def: New file.

gcc/
	* config/mips/mips-ftypes.def: New file.
	* config/mips/mips.c (MIPS_FTYPE_NAME1, MIPS_FTYPE_NAME2)
	(MIPS_FTYPE_NAME3, MIPS_FTYPE_NAME4): New macros.
	(mips_function_type): Redefine using mips-ftypes.def.
	(dsp_bdesc): Use POINTER rather than PTR in the MIPS_*_FTYPE_* names.
	(mips_builtin_vector_type): New function.
	(MIPS_ATYPE_VOID, MIPS_ATYPE_INT, MIPS_ATYPE_POINTER, MIPS_ATYPE_SI)
	(MIPS_ATYPE_USI, MIPS_ATYPE_DI, MIPS_ATYPE_SF, MIPS_ATYPE_DF)
	(MIPS_ATYPE_V2SF, MIPS_ATYPE_V2HI, MIPS_ATYPE_V4QI, MIPS_FTYPE_ATYPES1)
	(MIPS_FTYPE_ATYPES2, MIPS_FTYPE_ATYPES3, MIPS_FTYPE_ATYPES4): New
	macros.
	(mips_build_function_type): New function.
	(mips_init_builtins): Use it to create types lazily.

From-SVN: r129455
parent 07045266
2007-10-18 Richard Sandiford <rsandifo@nildram.co.uk>
* config/mips/mips-ftypes.def: New file.
* config/mips/mips.c (MIPS_FTYPE_NAME1, MIPS_FTYPE_NAME2)
(MIPS_FTYPE_NAME3, MIPS_FTYPE_NAME4): New macros.
(mips_function_type): Redefine using mips-ftypes.def.
(dsp_bdesc): Use POINTER rather than PTR in the MIPS_*_FTYPE_* names.
(mips_builtin_vector_type): New function.
(MIPS_ATYPE_VOID, MIPS_ATYPE_INT, MIPS_ATYPE_POINTER, MIPS_ATYPE_SI)
(MIPS_ATYPE_USI, MIPS_ATYPE_DI, MIPS_ATYPE_SF, MIPS_ATYPE_DF)
(MIPS_ATYPE_V2SF, MIPS_ATYPE_V2HI, MIPS_ATYPE_V4QI, MIPS_FTYPE_ATYPES1)
(MIPS_FTYPE_ATYPES2, MIPS_FTYPE_ATYPES3, MIPS_FTYPE_ATYPES4): New
macros.
(mips_build_function_type): New function.
(mips_init_builtins): Use it to create types lazily.
2007-10-18 Richard Sandiford <rsandifo@nildram.co.uk>
* config/mips/mips.h (set_volatile): Delete.
* config/mips/mips.c (set_volatile): Delete.
(mips_print_operand_punctuation): New function, split out from
/* Definitions of prototypes for MIPS built-in functions. -*- C -*-
Copyright (C) 2007
Free Software Foundation, Inc.
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3, or (at your option)
any later version.
GCC is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
/* Invoke DEF_MIPS_FTYPE (NARGS, LIST) for each prototype used by
MIPS built-in functions, where:
NARGS is the number of arguments.
LIST contains the return-type code followed by the codes for each
argument type.
Argument- and return-type codes are either modes or one of the following:
VOID for void_type_node
INT for integer_type_node
POINTER for ptr_type_node
(we don't use PTR because that's a ANSI-compatibillity macro).
Please keep this list lexicographically sorted by the LIST argument. */
DEF_MIPS_FTYPE (1, (DF, DF))
DEF_MIPS_FTYPE (2, (DF, DF, DF))
DEF_MIPS_FTYPE (2, (DI, DI, DI))
DEF_MIPS_FTYPE (2, (DI, DI, SI))
DEF_MIPS_FTYPE (3, (DI, DI, SI, SI))
DEF_MIPS_FTYPE (3, (DI, DI, USI, USI))
DEF_MIPS_FTYPE (3, (DI, DI, V2HI, V2HI))
DEF_MIPS_FTYPE (3, (DI, DI, V4QI, V4QI))
DEF_MIPS_FTYPE (2, (DI, SI, SI))
DEF_MIPS_FTYPE (2, (DI, USI, USI))
DEF_MIPS_FTYPE (2, (INT, DF, DF))
DEF_MIPS_FTYPE (2, (INT, SF, SF))
DEF_MIPS_FTYPE (2, (INT, V2SF, V2SF))
DEF_MIPS_FTYPE (4, (INT, V2SF, V2SF, V2SF, V2SF))
DEF_MIPS_FTYPE (2, (SI, DI, SI))
DEF_MIPS_FTYPE (2, (SI, POINTER, SI))
DEF_MIPS_FTYPE (1, (SI, SI))
DEF_MIPS_FTYPE (2, (SI, SI, SI))
DEF_MIPS_FTYPE (3, (SI, SI, SI, SI))
DEF_MIPS_FTYPE (1, (SI, V2HI))
DEF_MIPS_FTYPE (2, (SI, V2HI, V2HI))
DEF_MIPS_FTYPE (1, (SI, V4QI))
DEF_MIPS_FTYPE (2, (SI, V4QI, V4QI))
DEF_MIPS_FTYPE (1, (SI, VOID))
DEF_MIPS_FTYPE (1, (SF, SF))
DEF_MIPS_FTYPE (2, (SF, SF, SF))
DEF_MIPS_FTYPE (1, (SF, V2SF))
DEF_MIPS_FTYPE (1, (V2HI, SI))
DEF_MIPS_FTYPE (2, (V2HI, SI, SI))
DEF_MIPS_FTYPE (3, (V2HI, SI, SI, SI))
DEF_MIPS_FTYPE (1, (V2HI, V2HI))
DEF_MIPS_FTYPE (2, (V2HI, V2HI, SI))
DEF_MIPS_FTYPE (2, (V2HI, V2HI, V2HI))
DEF_MIPS_FTYPE (1, (V2HI, V4QI))
DEF_MIPS_FTYPE (2, (V2HI, V4QI, V2HI))
DEF_MIPS_FTYPE (2, (V2SF, SF, SF))
DEF_MIPS_FTYPE (1, (V2SF, V2SF))
DEF_MIPS_FTYPE (2, (V2SF, V2SF, V2SF))
DEF_MIPS_FTYPE (3, (V2SF, V2SF, V2SF, INT))
DEF_MIPS_FTYPE (4, (V2SF, V2SF, V2SF, V2SF, V2SF))
DEF_MIPS_FTYPE (1, (V4QI, SI))
DEF_MIPS_FTYPE (2, (V4QI, V2HI, V2HI))
DEF_MIPS_FTYPE (1, (V4QI, V4QI))
DEF_MIPS_FTYPE (2, (V4QI, V4QI, SI))
DEF_MIPS_FTYPE (2, (V4QI, V4QI, V4QI))
DEF_MIPS_FTYPE (2, (VOID, SI, SI))
DEF_MIPS_FTYPE (2, (VOID, V2HI, V2HI))
DEF_MIPS_FTYPE (2, (VOID, V4QI, V4QI))
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment