diff options
author | jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-05-19 16:27:59 +0000 |
---|---|---|
committer | jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-05-19 16:27:59 +0000 |
commit | bcbb3950721ebd3a78a429fe6109065297fb48d4 (patch) | |
tree | d00d0264dfa526f521248b5d943af0d2149389f8 /gcc/config/arm/arm-fpus.def | |
parent | 11091b4d06907a117524c3ac2b2a221d18cbb8dc (diff) | |
download | gcc-bcbb3950721ebd3a78a429fe6109065297fb48d4.tar.gz |
contrib:
* gcc_update (gcc/config/arm/arm-tables.opt): Also depend on
gcc/config/arm/arm-fpus.def.
gcc:
* config/arm/arm-fpus.def: New.
* config/arm/genopt.sh: Generate Enum and EnumValue entries from
arm-fpus.def.
* config/arm/arm-tables.opt: Regenerate.
* config/arm/arm.c (all_fpus): Move contents to arm-fpus.def.
(arm_option_override): Don't decode FPU name to string here.
* config/arm/arm.opt (mfpu=): Use Enum.
* config/arm/t-arm ($(srcdir)/config/arm/arm-tables.opt, arm.o):
Update dependencies.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@173916 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/arm/arm-fpus.def')
-rw-r--r-- | gcc/config/arm/arm-fpus.def | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/gcc/config/arm/arm-fpus.def b/gcc/config/arm/arm-fpus.def new file mode 100644 index 00000000000..9f7e62acc4b --- /dev/null +++ b/gcc/config/arm/arm-fpus.def @@ -0,0 +1,48 @@ +/* ARM FPU variants. + Copyright (C) 1991, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, + 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 + 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/>. */ + +/* Before using #include to read this file, define a macro: + + ARM_FPU(NAME, MODEL, REV, VFP_REGS, NEON, FP16) + + The arguments are the fields of struct arm_fpu_desc. + + genopt.sh assumes no whitespace up to the first "," in each entry. */ + +ARM_FPU("fpa", ARM_FP_MODEL_FPA, 0, VFP_NONE, false, false) +ARM_FPU("fpe2", ARM_FP_MODEL_FPA, 2, VFP_NONE, false, false) +ARM_FPU("fpe3", ARM_FP_MODEL_FPA, 3, VFP_NONE, false, false) +ARM_FPU("maverick", ARM_FP_MODEL_MAVERICK, 0, VFP_NONE, false, false) +ARM_FPU("vfp", ARM_FP_MODEL_VFP, 2, VFP_REG_D16, false, false) +ARM_FPU("vfpv3", ARM_FP_MODEL_VFP, 3, VFP_REG_D32, false, false) +ARM_FPU("vfpv3-fp16", ARM_FP_MODEL_VFP, 3, VFP_REG_D32, false, true) +ARM_FPU("vfpv3-d16", ARM_FP_MODEL_VFP, 3, VFP_REG_D16, false, false) +ARM_FPU("vfpv3-d16-fp16", ARM_FP_MODEL_VFP, 3, VFP_REG_D16, false, true) +ARM_FPU("vfpv3xd", ARM_FP_MODEL_VFP, 3, VFP_REG_SINGLE, false, false) +ARM_FPU("vfpv3xd-fp16", ARM_FP_MODEL_VFP, 3, VFP_REG_SINGLE, false, true) +ARM_FPU("neon", ARM_FP_MODEL_VFP, 3, VFP_REG_D32, true , false) +ARM_FPU("neon-fp16", ARM_FP_MODEL_VFP, 3, VFP_REG_D32, true, true) +ARM_FPU("vfpv4", ARM_FP_MODEL_VFP, 4, VFP_REG_D32, false, true) +ARM_FPU("vfpv4-d16", ARM_FP_MODEL_VFP, 4, VFP_REG_D16, false, true) +ARM_FPU("fpv4-sp-d16", ARM_FP_MODEL_VFP, 4, VFP_REG_SINGLE, false, true) +ARM_FPU("neon-vfpv4", ARM_FP_MODEL_VFP, 4, VFP_REG_D32, true, true) +/* Compatibility aliases. */ +ARM_FPU("vfp3", ARM_FP_MODEL_VFP, 3, VFP_REG_D32, false, false) |