1 1.1.1.3 mrg /* Copyright (C) 2016-2022 Free Software Foundation, Inc. 2 1.1 mrg 3 1.1 mrg This file is free software; you can redistribute it and/or modify it under 4 1.1 mrg the terms of the GNU General Public License as published by the Free 5 1.1 mrg Software Foundation; either version 3 of the License, or (at your option) 6 1.1 mrg any later version. 7 1.1 mrg 8 1.1 mrg This file is distributed in the hope that it will be useful, but WITHOUT 9 1.1 mrg ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 10 1.1 mrg FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 11 1.1 mrg for more details. 12 1.1 mrg 13 1.1 mrg You should have received a copy of the GNU General Public License 14 1.1 mrg along with GCC; see the file COPYING3. If not see 15 1.1 mrg <http://www.gnu.org/licenses/>. */ 16 1.1 mrg 17 1.1 mrg /* Half-precision floating point */ 18 1.1 mrg FLOAT_MODE (HF, 2, 0); 19 1.1 mrg /* FIXME: No idea what format it is. */ 20 1.1 mrg ADJUST_FLOAT_FORMAT (HF, &ieee_half_format); 21 1.1 mrg 22 1.1 mrg /* Native vector modes. */ 23 1.1 mrg VECTOR_MODE (INT, QI, 64); /* V64QI */ 24 1.1 mrg VECTOR_MODE (INT, HI, 64); /* V64HI */ 25 1.1 mrg VECTOR_MODE (INT, SI, 64); /* V64SI */ 26 1.1 mrg VECTOR_MODE (INT, DI, 64); /* V64DI */ 27 1.1 mrg VECTOR_MODE (INT, TI, 64); /* V64TI */ 28 1.1 mrg VECTOR_MODE (FLOAT, HF, 64); /* V64HF */ 29 1.1 mrg VECTOR_MODE (FLOAT, SF, 64); /* V64SF */ 30 1.1 mrg VECTOR_MODE (FLOAT, DF, 64); /* V64DF */ 31 1.1 mrg 32 1.1 mrg /* Vector units handle reads independently and thus no large alignment 33 1.1 mrg needed. */ 34 1.1 mrg ADJUST_ALIGNMENT (V64QI, 1); 35 1.1 mrg ADJUST_ALIGNMENT (V64HI, 2); 36 1.1 mrg ADJUST_ALIGNMENT (V64SI, 4); 37 1.1 mrg ADJUST_ALIGNMENT (V64DI, 8); 38 1.1 mrg ADJUST_ALIGNMENT (V64TI, 16); 39 1.1 mrg ADJUST_ALIGNMENT (V64HF, 2); 40 1.1 mrg ADJUST_ALIGNMENT (V64SF, 4); 41 1.1 mrg ADJUST_ALIGNMENT (V64DF, 8); 42