1/* Definitions of prototypes for MIPS built-in functions. -*- C -*- 2 Copyright (C) 2007-2015 Free Software Foundation, Inc. 3 4This file is part of GCC. 5 6GCC is free software; you can redistribute it and/or modify 7it under the terms of the GNU General Public License as published by 8the Free Software Foundation; either version 3, or (at your option) 9any later version. 10 11GCC is distributed in the hope that it will be useful, 12but WITHOUT ANY WARRANTY; without even the implied warranty of 13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14GNU General Public License for more details. 15 16You should have received a copy of the GNU General Public License 17along with GCC; see the file COPYING3. If not see 18<http://www.gnu.org/licenses/>. */ 19 20/* Invoke DEF_MIPS_FTYPE (NARGS, LIST) for each prototype used by 21 MIPS built-in functions, where: 22 23 NARGS is the number of arguments. 24 LIST contains the return-type code followed by the codes for each 25 argument type. 26 27 Argument- and return-type codes are either modes or one of the following: 28 29 VOID for void_type_node 30 INT for integer_type_node 31 POINTER for ptr_type_node 32 33 (we don't use PTR because that's a ANSI-compatibillity macro). 34 35 Please keep this list lexicographically sorted by the LIST argument. */ 36DEF_MIPS_FTYPE (1, (DF, DF)) 37DEF_MIPS_FTYPE (2, (DF, DF, DF)) 38 39DEF_MIPS_FTYPE (2, (DI, DI, DI)) 40DEF_MIPS_FTYPE (2, (DI, DI, SI)) 41DEF_MIPS_FTYPE (3, (DI, DI, SI, SI)) 42DEF_MIPS_FTYPE (3, (DI, DI, USI, USI)) 43DEF_MIPS_FTYPE (3, (DI, DI, V2HI, V2HI)) 44DEF_MIPS_FTYPE (3, (DI, DI, V4QI, V4QI)) 45DEF_MIPS_FTYPE (2, (DI, SI, SI)) 46DEF_MIPS_FTYPE (2, (DI, USI, USI)) 47 48DEF_MIPS_FTYPE (2, (INT, DF, DF)) 49DEF_MIPS_FTYPE (2, (INT, SF, SF)) 50DEF_MIPS_FTYPE (2, (INT, V2SF, V2SF)) 51DEF_MIPS_FTYPE (4, (INT, V2SF, V2SF, V2SF, V2SF)) 52 53DEF_MIPS_FTYPE (2, (SI, DI, SI)) 54DEF_MIPS_FTYPE (2, (SI, POINTER, SI)) 55DEF_MIPS_FTYPE (2, (DI, POINTER, SI)) 56DEF_MIPS_FTYPE (1, (SI, SI)) 57DEF_MIPS_FTYPE (2, (SI, SI, SI)) 58DEF_MIPS_FTYPE (3, (SI, SI, SI, SI)) 59DEF_MIPS_FTYPE (1, (SI, V2HI)) 60DEF_MIPS_FTYPE (2, (SI, V2HI, V2HI)) 61DEF_MIPS_FTYPE (1, (SI, V4QI)) 62DEF_MIPS_FTYPE (2, (SI, V4QI, V4QI)) 63DEF_MIPS_FTYPE (1, (SI, VOID)) 64 65DEF_MIPS_FTYPE (1, (SF, SF)) 66DEF_MIPS_FTYPE (2, (SF, SF, SF)) 67DEF_MIPS_FTYPE (1, (SF, V2SF)) 68 69DEF_MIPS_FTYPE (2, (UDI, UDI, UDI)) 70DEF_MIPS_FTYPE (2, (UDI, UV2SI, UV2SI)) 71 72DEF_MIPS_FTYPE (1, (USI, VOID)) 73 74DEF_MIPS_FTYPE (2, (UV2SI, UV2SI, UQI)) 75DEF_MIPS_FTYPE (2, (UV2SI, UV2SI, UV2SI)) 76 77DEF_MIPS_FTYPE (2, (UV4HI, UV4HI, UQI)) 78DEF_MIPS_FTYPE (2, (UV4HI, UV4HI, USI)) 79DEF_MIPS_FTYPE (3, (UV4HI, UV4HI, UV4HI, UQI)) 80DEF_MIPS_FTYPE (3, (UV4HI, UV4HI, UV4HI, USI)) 81DEF_MIPS_FTYPE (2, (UV4HI, UV4HI, UV4HI)) 82DEF_MIPS_FTYPE (1, (UV4HI, UV8QI)) 83DEF_MIPS_FTYPE (2, (UV4HI, UV8QI, UV8QI)) 84 85DEF_MIPS_FTYPE (2, (UV8QI, UV4HI, UV4HI)) 86DEF_MIPS_FTYPE (1, (UV8QI, UV8QI)) 87DEF_MIPS_FTYPE (2, (UV8QI, UV8QI, UV8QI)) 88 89DEF_MIPS_FTYPE (1, (V2HI, SI)) 90DEF_MIPS_FTYPE (2, (V2HI, SI, SI)) 91DEF_MIPS_FTYPE (3, (V2HI, SI, SI, SI)) 92DEF_MIPS_FTYPE (1, (V2HI, V2HI)) 93DEF_MIPS_FTYPE (2, (V2HI, V2HI, SI)) 94DEF_MIPS_FTYPE (2, (V2HI, V2HI, V2HI)) 95DEF_MIPS_FTYPE (1, (V2HI, V4QI)) 96DEF_MIPS_FTYPE (2, (V2HI, V4QI, V2HI)) 97 98DEF_MIPS_FTYPE (2, (V2SF, SF, SF)) 99DEF_MIPS_FTYPE (1, (V2SF, V2SF)) 100DEF_MIPS_FTYPE (2, (V2SF, V2SF, V2SF)) 101DEF_MIPS_FTYPE (3, (V2SF, V2SF, V2SF, INT)) 102DEF_MIPS_FTYPE (4, (V2SF, V2SF, V2SF, V2SF, V2SF)) 103 104DEF_MIPS_FTYPE (2, (V2SI, V2SI, UQI)) 105DEF_MIPS_FTYPE (2, (V2SI, V2SI, V2SI)) 106DEF_MIPS_FTYPE (2, (V2SI, V4HI, V4HI)) 107 108DEF_MIPS_FTYPE (2, (V4HI, V2SI, V2SI)) 109DEF_MIPS_FTYPE (2, (V4HI, V4HI, UQI)) 110DEF_MIPS_FTYPE (2, (V4HI, V4HI, USI)) 111DEF_MIPS_FTYPE (2, (V4HI, V4HI, V4HI)) 112DEF_MIPS_FTYPE (3, (V4HI, V4HI, V4HI, UQI)) 113DEF_MIPS_FTYPE (3, (V4HI, V4HI, V4HI, USI)) 114 115DEF_MIPS_FTYPE (1, (V4QI, SI)) 116DEF_MIPS_FTYPE (2, (V4QI, V2HI, V2HI)) 117DEF_MIPS_FTYPE (1, (V4QI, V4QI)) 118DEF_MIPS_FTYPE (2, (V4QI, V4QI, SI)) 119DEF_MIPS_FTYPE (2, (V4QI, V4QI, V4QI)) 120 121DEF_MIPS_FTYPE (2, (V8QI, V4HI, V4HI)) 122DEF_MIPS_FTYPE (1, (V8QI, V8QI)) 123DEF_MIPS_FTYPE (2, (V8QI, V8QI, V8QI)) 124 125DEF_MIPS_FTYPE (2, (VOID, SI, CVPOINTER)) 126DEF_MIPS_FTYPE (2, (VOID, SI, SI)) 127DEF_MIPS_FTYPE (1, (VOID, USI)) 128DEF_MIPS_FTYPE (2, (VOID, V2HI, V2HI)) 129DEF_MIPS_FTYPE (2, (VOID, V4QI, V4QI)) 130