mirror of git://gcc.gnu.org/git/gcc.git
tm.texi.in (OVERRIDE_OPTIONS): Remove documentation.
* doc/tm.texi.in (OVERRIDE_OPTIONS): Remove documentation. (C_COMMON_OVERRIDE_OPTIONS): Don't refer to OVERRIDE_OPTIONS. * doc/tm.texi: Regenerate. * system.h (OVERRIDE_OPTIONS): Poison. * target.def (override): Default to hook_void_void. * targhooks.c (default_target_option_override): Remove. * genmodes.c, machmode.def: Update comments mentioning OVERRIDE_OPTIONS. * config/alpha/alpha-modes.def: Update comment mentioning alpha_override_options. * config/alpha/alpha-protos.h (override_options): Remove. * config/alpha/alpha.c (override_options): Rename to alpha_option_override. Call SUBTARGET_OVERRIDE_OPTIONS. Make static. (TARGET_OPTION_OVERRIDE): Define. * config/alpha/alpha.h (OVERRIDE_OPTIONS): Remove. * config/alpha/vms.h (SUBTARGET_OVERRIDE_OPTIONS): Define instead of OVERRIDE_OPTIONS. * config/arc/arc-protos.h (arc_init): Remove. * config/arc/arc.c (TARGET_OPTION_OVERRIDE): Define. (arc_init): Rename to arc_option_override. Make static. * config/arc/arc.h (ARC_EXTENSION_CPU): Correct comment. (OVERRIDE_OPTIONS): Remove. * config/arm/arm-protos.h (arm_override_options): Remove. * config/arm/arm.c (TARGET_OPTION_OVERRIDE): Define. (arm_override_options): Rename to arm_option_override. Make static. Call SUBTARGET_OVERRIDE_OPTIONS. * config/arm/arm.h (OVERRIDE_OPTIONS): Remove. * config/arm/arm.md: Update comment referring to arm_override_options. * config/arm/vxworks.h (SUBTARGET_OVERRIDE_OPTIONS): Define instead of OVERRIDE_OPTIONS. * config/avr/avr-protos.h (avr_override_options): Remove. * config/avr/avr.c (TARGET_OPTION_OVERRIDE): Define. (avr_override_options): Rename to avr_option_override. Make static. * config/avr/avr.h (OVERRIDE_OPTIONS): Remove. * config/bfin/bfin-protos.h (override_options): Remove (twice). * config/bfin/bfin.c (override_options): Rename to bfin_option_override. Make static. (TARGET_OPTION_OVERRIDE): Define. * config/bfin/bfin.h (OVERRIDE_OPTIONS): Remove. * config/cris/cris-protos.h (cris_override_options): Remove. * config/cris/cris.c (TARGET_OPTION_OVERRIDE): Define. (cris_override_options): Rename to cris_option_override. Make static. * config/cris/cris.h (OVERRIDE_OPTIONS): Remove. * config/frv/frv-protos.h (frv_override_options): Remove. * config/frv/frv.c (TARGET_OPTION_OVERRIDE): Define. (frv_override_options): Rename to frv_option_override. Make static. * config/frv/frv.h (OVERRIDE_OPTIONS): Remove. * config/h8300/h8300-protos.h (h8300_init_once): Remove. * config/h8300/h8300.c (h8300_init_once): Rename to h8300_option_override. Make static. (TARGET_OPTION_OVERRIDE): Define. * config/h8300/h8300.h (OVERRIDE_OPTIONS): Remove. * config/i386/i386-protos.h (override_options): Remove. * config/i386/i386.c (override_options): Rename to ix86_option_override_internal. Make static. Comments referring to this function and callers changed. (ix86_option_override): New. (TARGET_OPTION_OVERRIDE): Define. * config/i386/i386.h (OVERRIDE_OPTION): Remove. * config/i386/linux64.h (DEFAULT_PCC_STRUCT_RETURN): Update comment. * config/ia64/ia64.c (ia64_file_start): Update comment referring to ia64_override_options. * config/iq2000/iq2000-protos.h (override_options): Remove. * config/iq2000/iq2000.c (TARGET_OPTION_OVERRIDE): Define. (override_options): Rename to iq2000_option_override. Make static. * config/iq2000/iq2000.h (OVERRIDE_OPTIONS): Remove. * config/lm32/lm32-protos.h (lm32_override_options): Remove. * config/lm32/lm32.c (TARGET_OPTION_OVERRIDE): Define. (lm32_override_options): Rename to lm32_option_override. Make static. * config/lm32/lm32.h (OVERRIDE_OPTIONS): Remove. * config/m32r/m32r.c (TARGET_OPTION_OVERRIDE): Define. (m32r_option_override): New. (m32r_init): Update comment. * config/m32r/m32r.h (OVERRIDE_OPTIONS): Remove. * config/m68hc11/m68hc11-protos.h (m68hc11_override_options): Remove. * config/m68hc11/m68hc11.c (TARGET_OPTION_OVERRIDE): Define. (m68hc11_override_options): Rename to m68hc11_option_override. Make static. Return void. * config/m68hc11/m68hc11.h (OVERRIDE_OPTIONS): Remove. * config/m68k/m68k-protos.h (override_options): Remove. * config/m68k/m68k.c (TARGET_OPTION_OVERRIDE): Define. (override_options): Rename to m68k_option_override. Make static. * config/m68k/m68k.h (OVERRIDE_OPTIONS): Remove. * config/mcore/mcore-protos.h (mcore_override_options): Remove. * config/mcore/mcore.c (TARGET_OPTION_OVERRIDE): Define. (mcore_override_options): Rename to mcore_option_override. Make static. * config/mcore/mcore.h (OVERRIDE_OPTIONS): Remove. * config/mep/mep-protos.h (mep_override_options): Remove. * config/mep/mep.c (TARGET_OPTION_OVERRIDE): Define. (mep_override_options): Rename to mep_option_override. Make static. * config/mep/mep.h (OVERRIDE_OPTIONS): Remove. * config/mmix/mmix-protos.h (mmix_override_options): Remove. * config/mmix/mmix.c (TARGET_OPTION_OVERRIDE): Define. (mmix_override_options): Rename to mmix_option_override. Make static. * config/mmix/mmix.h (OVERRIDE_OPTIONS): Remove. * config/mn10300/mn10300-protos.h (mn10300_override_options): Remove. * config/mn10300/mn10300.c (TARGET_OPTION_OVERRIDE): Define. (mn10300_override_options): Rename to mn10300_option_override. Make static. * config/mn10300/mn10300.h (OVERRIDE_OPTIONS): Remove. * config/moxie/moxie-protos.h (moxie_override_options): Remove. * config/moxie/moxie.c (moxie_override_options): Rename to moxie_option_override. Make static. (TARGET_OPTION_OVERRIDE): Define. * config/moxie/moxie.h (OVERRIDE_OPTIONS): Remove. * config/picochip/picochip-protos.h (picochip_override_options): Remove. Update comment referring to picochip_override_options. * config/picochip/picochip.c (TARGET_OPTION_OVERRIDE): Define. (picochip_override_options): Rename to picochip_option_override. Make static. Update comment and definition of TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE. * config/picochip/picochip.h (OVERRIDE_OPTIONS): Remove. * config/rs6000/aix43.h (SUBTARGET_OVERRIDE_OPTIONS): Update comment. * config/rs6000/aix51.h (SUBTARGET_OVERRIDE_OPTIONS): Update comment. * config/rs6000/aix52.h (SUBTARGET_OVERRIDE_OPTIONS): Update comment. * config/rs6000/aix53.h (SUBTARGET_OVERRIDE_OPTIONS): Update comment. * config/rs6000/aix61.h (SUBTARGET_OVERRIDE_OPTIONS): Update comment. * config/rs6000/linux64.h (OPTION_TARGET_CPU_DEFAULT): Define instead of OVERRIDE_OPTIONS. * config/rs6000/rs6000-modes.def: Update comment referring to rs6000_override_options. * config/rs6000/rs6000-protos.h (rs6000_override_options): Remove. * config/rs6000/rs6000.c (TARGET_OPTION_OVERRIDE): Define. (rs6000_override_options): Rename to rs6000_option_override_internal. Make static. Commented referring to rs6000_override_options and OVERRIDE_OPTIONS updated. (rs6000_option_override): New. * config/rs6000/rs6000.h (OPTION_TARGET_CPU_DEFAULT): Define instead of OVERRIDE_OPTIONS. * config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Update comment. * config/s390/s390-protos.h (override_options): Remove. * config/s390/s390.c (override_options): Rename to s390_option_override. Make static. (TARGET_OPTION_OVERRIDE): Define. * config/s390/s390.h (OVERRIDE_OPTIONS): Remove. * config/score/score-protos.h (score_override_options): Remove. * config/score/score.c (TARGET_OPTION_OVERRIDE): Define. (score_override_options): Rename to score_option_override. Make static. * config/score/score.h (OVERRIDE_OPTIONS): Remove. Update comment referring to override_options. * config/score/score3.c (score3_override_options): Rename to score3_option_override. * config/score/score3.h (score3_override_options): Rename to score3_option_override. * config/score/score7.c (score7_override_options): Rename to score7_option_override. * config/score/score7.h (score7_override_options): Rename to score7_option_override. * config/sh/sh.c: Update comments referring to OVERRIDE_OPTIONS. * config/sparc/sparc.c (TARGET_OPTION_OVERRIDE): Define. (sparc_override_options): Rename to sparc_option_override. Make static. Call SUBTARGET_OVERRIDE_OPTIONS. * config/sparc/sparc.h (OVERRIDE_OPTIONS): Remove. * config/sparc/vxworks.h (SUBTARGET_OVERRIDE_OPTIONS): Define instead of OVERRIDE_OPTIONS. * config/spu/spu-protos.h (spu_override_options): Remove. * config/spu/spu.c (TARGET_OPTION_OVERRIDE): Define. (spu_override_options): Rename to spu_option_override. Make static. * config/spu/spu.h (OVERRIDE_OPTIONS): Remove. * config/vax/elf.h (SUBTARGET_OVERRIDE_OPTIONS): Define instead of OVERRIDE_OPTIONS. * config/vax/vax-protos.h (override_options): Remove. * config/vax/vax.c (TARGET_OPTION_OVERRIDE): Define. (override_options): Rename to vax_option_override. Make static. Call SUBTARGET_OVERRIDE_OPTIONS. * config/vax/vax.h (OVERRIDE_OPTIONS): Remove. * config/vxworks.c: Update comment referring to OVERRIDE_OPTIONS. * config/vxworks.h: Update comment referring to OVERRIDE_OPTIONS. * config/xtensa/xtensa-protos.h (override_options): Remove. * config/xtensa/xtensa.c (TARGET_OPTION_OVERRIDE): Define. (override_options): Rename to xtensa_option_override. Make static. * config/xtensa/xtensa.h (OVERRIDE_OPTIONS): Remove. From-SVN: r164334
This commit is contained in:
parent
ed6c4831a9
commit
c538766023
197
gcc/ChangeLog
197
gcc/ChangeLog
|
|
@ -1,3 +1,200 @@
|
||||||
|
2010-09-16 Joseph Myers <joseph@codesourcery.com>
|
||||||
|
|
||||||
|
* doc/tm.texi.in (OVERRIDE_OPTIONS): Remove documentation.
|
||||||
|
(C_COMMON_OVERRIDE_OPTIONS): Don't refer to OVERRIDE_OPTIONS.
|
||||||
|
* doc/tm.texi: Regenerate.
|
||||||
|
* system.h (OVERRIDE_OPTIONS): Poison.
|
||||||
|
* target.def (override): Default to hook_void_void.
|
||||||
|
* targhooks.c (default_target_option_override): Remove.
|
||||||
|
* genmodes.c, machmode.def: Update comments mentioning
|
||||||
|
OVERRIDE_OPTIONS.
|
||||||
|
* config/alpha/alpha-modes.def: Update comment mentioning
|
||||||
|
alpha_override_options.
|
||||||
|
* config/alpha/alpha-protos.h (override_options): Remove.
|
||||||
|
* config/alpha/alpha.c (override_options): Rename to
|
||||||
|
alpha_option_override. Call SUBTARGET_OVERRIDE_OPTIONS. Make
|
||||||
|
static.
|
||||||
|
(TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
* config/alpha/alpha.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/alpha/vms.h (SUBTARGET_OVERRIDE_OPTIONS): Define instead
|
||||||
|
of OVERRIDE_OPTIONS.
|
||||||
|
* config/arc/arc-protos.h (arc_init): Remove.
|
||||||
|
* config/arc/arc.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(arc_init): Rename to arc_option_override. Make static.
|
||||||
|
* config/arc/arc.h (ARC_EXTENSION_CPU): Correct comment.
|
||||||
|
(OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/arm/arm-protos.h (arm_override_options): Remove.
|
||||||
|
* config/arm/arm.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(arm_override_options): Rename to arm_option_override. Make
|
||||||
|
static. Call SUBTARGET_OVERRIDE_OPTIONS.
|
||||||
|
* config/arm/arm.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/arm/arm.md: Update comment referring to
|
||||||
|
arm_override_options.
|
||||||
|
* config/arm/vxworks.h (SUBTARGET_OVERRIDE_OPTIONS): Define
|
||||||
|
instead of OVERRIDE_OPTIONS.
|
||||||
|
* config/avr/avr-protos.h (avr_override_options): Remove.
|
||||||
|
* config/avr/avr.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(avr_override_options): Rename to avr_option_override. Make
|
||||||
|
static.
|
||||||
|
* config/avr/avr.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/bfin/bfin-protos.h (override_options): Remove (twice).
|
||||||
|
* config/bfin/bfin.c (override_options): Rename to
|
||||||
|
bfin_option_override. Make static.
|
||||||
|
(TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
* config/bfin/bfin.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/cris/cris-protos.h (cris_override_options): Remove.
|
||||||
|
* config/cris/cris.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(cris_override_options): Rename to cris_option_override. Make
|
||||||
|
static.
|
||||||
|
* config/cris/cris.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/frv/frv-protos.h (frv_override_options): Remove.
|
||||||
|
* config/frv/frv.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(frv_override_options): Rename to frv_option_override. Make
|
||||||
|
static.
|
||||||
|
* config/frv/frv.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/h8300/h8300-protos.h (h8300_init_once): Remove.
|
||||||
|
* config/h8300/h8300.c (h8300_init_once): Rename to
|
||||||
|
h8300_option_override. Make static.
|
||||||
|
(TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
* config/h8300/h8300.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/i386/i386-protos.h (override_options): Remove.
|
||||||
|
* config/i386/i386.c (override_options): Rename to
|
||||||
|
ix86_option_override_internal. Make static. Comments referring
|
||||||
|
to this function and callers changed.
|
||||||
|
(ix86_option_override): New.
|
||||||
|
(TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
* config/i386/i386.h (OVERRIDE_OPTION): Remove.
|
||||||
|
* config/i386/linux64.h (DEFAULT_PCC_STRUCT_RETURN): Update
|
||||||
|
comment.
|
||||||
|
* config/ia64/ia64.c (ia64_file_start): Update comment referring
|
||||||
|
to ia64_override_options.
|
||||||
|
* config/iq2000/iq2000-protos.h (override_options): Remove.
|
||||||
|
* config/iq2000/iq2000.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(override_options): Rename to iq2000_option_override. Make
|
||||||
|
static.
|
||||||
|
* config/iq2000/iq2000.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/lm32/lm32-protos.h (lm32_override_options): Remove.
|
||||||
|
* config/lm32/lm32.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(lm32_override_options): Rename to lm32_option_override. Make
|
||||||
|
static.
|
||||||
|
* config/lm32/lm32.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/m32r/m32r.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(m32r_option_override): New.
|
||||||
|
(m32r_init): Update comment.
|
||||||
|
* config/m32r/m32r.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/m68hc11/m68hc11-protos.h (m68hc11_override_options):
|
||||||
|
Remove.
|
||||||
|
* config/m68hc11/m68hc11.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(m68hc11_override_options): Rename to m68hc11_option_override.
|
||||||
|
Make static. Return void.
|
||||||
|
* config/m68hc11/m68hc11.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/m68k/m68k-protos.h (override_options): Remove.
|
||||||
|
* config/m68k/m68k.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(override_options): Rename to m68k_option_override. Make static.
|
||||||
|
* config/m68k/m68k.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/mcore/mcore-protos.h (mcore_override_options): Remove.
|
||||||
|
* config/mcore/mcore.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(mcore_override_options): Rename to mcore_option_override. Make
|
||||||
|
static.
|
||||||
|
* config/mcore/mcore.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/mep/mep-protos.h (mep_override_options): Remove.
|
||||||
|
* config/mep/mep.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(mep_override_options): Rename to mep_option_override. Make
|
||||||
|
static.
|
||||||
|
* config/mep/mep.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/mmix/mmix-protos.h (mmix_override_options): Remove.
|
||||||
|
* config/mmix/mmix.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(mmix_override_options): Rename to mmix_option_override. Make
|
||||||
|
static.
|
||||||
|
* config/mmix/mmix.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/mn10300/mn10300-protos.h (mn10300_override_options):
|
||||||
|
Remove.
|
||||||
|
* config/mn10300/mn10300.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(mn10300_override_options): Rename to mn10300_option_override.
|
||||||
|
Make static.
|
||||||
|
* config/mn10300/mn10300.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/moxie/moxie-protos.h (moxie_override_options): Remove.
|
||||||
|
* config/moxie/moxie.c (moxie_override_options): Rename to
|
||||||
|
moxie_option_override. Make static.
|
||||||
|
(TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
* config/moxie/moxie.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/picochip/picochip-protos.h (picochip_override_options):
|
||||||
|
Remove. Update comment referring to picochip_override_options.
|
||||||
|
* config/picochip/picochip.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(picochip_override_options): Rename to picochip_option_override.
|
||||||
|
Make static. Update comment and definition of
|
||||||
|
TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE.
|
||||||
|
* config/picochip/picochip.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/rs6000/aix43.h (SUBTARGET_OVERRIDE_OPTIONS): Update
|
||||||
|
comment.
|
||||||
|
* config/rs6000/aix51.h (SUBTARGET_OVERRIDE_OPTIONS): Update
|
||||||
|
comment.
|
||||||
|
* config/rs6000/aix52.h (SUBTARGET_OVERRIDE_OPTIONS): Update
|
||||||
|
comment.
|
||||||
|
* config/rs6000/aix53.h (SUBTARGET_OVERRIDE_OPTIONS): Update
|
||||||
|
comment.
|
||||||
|
* config/rs6000/aix61.h (SUBTARGET_OVERRIDE_OPTIONS): Update
|
||||||
|
comment.
|
||||||
|
* config/rs6000/linux64.h (OPTION_TARGET_CPU_DEFAULT): Define
|
||||||
|
instead of OVERRIDE_OPTIONS.
|
||||||
|
* config/rs6000/rs6000-modes.def: Update comment referring to
|
||||||
|
rs6000_override_options.
|
||||||
|
* config/rs6000/rs6000-protos.h (rs6000_override_options): Remove.
|
||||||
|
* config/rs6000/rs6000.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(rs6000_override_options): Rename to
|
||||||
|
rs6000_option_override_internal. Make static. Commented
|
||||||
|
referring to rs6000_override_options and OVERRIDE_OPTIONS updated.
|
||||||
|
(rs6000_option_override): New.
|
||||||
|
* config/rs6000/rs6000.h (OPTION_TARGET_CPU_DEFAULT): Define
|
||||||
|
instead of OVERRIDE_OPTIONS.
|
||||||
|
* config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Update
|
||||||
|
comment.
|
||||||
|
* config/s390/s390-protos.h (override_options): Remove.
|
||||||
|
* config/s390/s390.c (override_options): Rename to
|
||||||
|
s390_option_override. Make static.
|
||||||
|
(TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
* config/s390/s390.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/score/score-protos.h (score_override_options): Remove.
|
||||||
|
* config/score/score.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(score_override_options): Rename to score_option_override. Make
|
||||||
|
static.
|
||||||
|
* config/score/score.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
Update comment referring to override_options.
|
||||||
|
* config/score/score3.c (score3_override_options): Rename to
|
||||||
|
score3_option_override.
|
||||||
|
* config/score/score3.h (score3_override_options): Rename to
|
||||||
|
score3_option_override.
|
||||||
|
* config/score/score7.c (score7_override_options): Rename to
|
||||||
|
score7_option_override.
|
||||||
|
* config/score/score7.h (score7_override_options): Rename to
|
||||||
|
score7_option_override.
|
||||||
|
* config/sh/sh.c: Update comments referring to OVERRIDE_OPTIONS.
|
||||||
|
* config/sparc/sparc.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(sparc_override_options): Rename to sparc_option_override. Make
|
||||||
|
static. Call SUBTARGET_OVERRIDE_OPTIONS.
|
||||||
|
* config/sparc/sparc.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/sparc/vxworks.h (SUBTARGET_OVERRIDE_OPTIONS): Define
|
||||||
|
instead of OVERRIDE_OPTIONS.
|
||||||
|
* config/spu/spu-protos.h (spu_override_options): Remove.
|
||||||
|
* config/spu/spu.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(spu_override_options): Rename to spu_option_override. Make
|
||||||
|
static.
|
||||||
|
* config/spu/spu.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/vax/elf.h (SUBTARGET_OVERRIDE_OPTIONS): Define instead of
|
||||||
|
OVERRIDE_OPTIONS.
|
||||||
|
* config/vax/vax-protos.h (override_options): Remove.
|
||||||
|
* config/vax/vax.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(override_options): Rename to vax_option_override. Make static.
|
||||||
|
Call SUBTARGET_OVERRIDE_OPTIONS.
|
||||||
|
* config/vax/vax.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
* config/vxworks.c: Update comment referring to OVERRIDE_OPTIONS.
|
||||||
|
* config/vxworks.h: Update comment referring to OVERRIDE_OPTIONS.
|
||||||
|
* config/xtensa/xtensa-protos.h (override_options): Remove.
|
||||||
|
* config/xtensa/xtensa.c (TARGET_OPTION_OVERRIDE): Define.
|
||||||
|
(override_options): Rename to xtensa_option_override. Make
|
||||||
|
static.
|
||||||
|
* config/xtensa/xtensa.h (OVERRIDE_OPTIONS): Remove.
|
||||||
|
|
||||||
2010-09-16 Richard Guenther <rguenther@suse.de>
|
2010-09-16 Richard Guenther <rguenther@suse.de>
|
||||||
|
|
||||||
PR tree-optimization/45623
|
PR tree-optimization/45623
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* Alpha extra machine modes.
|
/* Alpha extra machine modes.
|
||||||
Copyright (C) 2003, 2004, 2007 Free Software Foundation, Inc.
|
Copyright (C) 2003, 2004, 2007, 2010 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
||||||
|
|
@ -17,7 +17,7 @@ You should have received a copy of the GNU General Public License
|
||||||
along with GCC; see the file COPYING3. If not see
|
along with GCC; see the file COPYING3. If not see
|
||||||
<http://www.gnu.org/licenses/>. */
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
/* 128-bit floating point. This gets reset in alpha_override_options
|
/* 128-bit floating point. This gets reset in alpha_option_override
|
||||||
if VAX float format is in use. */
|
if VAX float format is in use. */
|
||||||
FLOAT_MODE (TF, 16, ieee_quad_format);
|
FLOAT_MODE (TF, 16, ieee_quad_format);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* Prototypes for alpha.c functions used in the md file & elsewhere.
|
/* Prototypes for alpha.c functions used in the md file & elsewhere.
|
||||||
Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2009
|
Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2009, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
@ -21,7 +21,6 @@ along with GCC; see the file COPYING3. If not see
|
||||||
extern int alpha_next_sequence_number;
|
extern int alpha_next_sequence_number;
|
||||||
|
|
||||||
extern void literal_section (void);
|
extern void literal_section (void);
|
||||||
extern void override_options (void);
|
|
||||||
extern int zap_mask (HOST_WIDE_INT);
|
extern int zap_mask (HOST_WIDE_INT);
|
||||||
extern int direct_return (void);
|
extern int direct_return (void);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -256,8 +256,8 @@ alpha_mangle_type (const_tree type)
|
||||||
|
|
||||||
/* Parse target option strings. */
|
/* Parse target option strings. */
|
||||||
|
|
||||||
void
|
static void
|
||||||
override_options (void)
|
alpha_option_override (void)
|
||||||
{
|
{
|
||||||
static const struct cpu_table {
|
static const struct cpu_table {
|
||||||
const char *const name;
|
const char *const name;
|
||||||
|
|
@ -283,6 +283,10 @@ override_options (void)
|
||||||
int const ct_size = ARRAY_SIZE (cpu_table);
|
int const ct_size = ARRAY_SIZE (cpu_table);
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
#ifdef SUBTARGET_OVERRIDE_OPTIONS
|
||||||
|
SUBTARGET_OVERRIDE_OPTIONS;
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Unicos/Mk doesn't have shared libraries. */
|
/* Unicos/Mk doesn't have shared libraries. */
|
||||||
if (TARGET_ABI_UNICOSMK && flag_pic)
|
if (TARGET_ABI_UNICOSMK && flag_pic)
|
||||||
{
|
{
|
||||||
|
|
@ -11157,6 +11161,9 @@ alpha_init_libfuncs (void)
|
||||||
#undef TARGET_HANDLE_OPTION
|
#undef TARGET_HANDLE_OPTION
|
||||||
#define TARGET_HANDLE_OPTION alpha_handle_option
|
#define TARGET_HANDLE_OPTION alpha_handle_option
|
||||||
|
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE alpha_option_override
|
||||||
|
|
||||||
#ifdef TARGET_ALTERNATE_LONG_DOUBLE_MANGLING
|
#ifdef TARGET_ALTERNATE_LONG_DOUBLE_MANGLING
|
||||||
#undef TARGET_MANGLE_TYPE
|
#undef TARGET_MANGLE_TYPE
|
||||||
#define TARGET_MANGLE_TYPE alpha_mangle_type
|
#define TARGET_MANGLE_TYPE alpha_mangle_type
|
||||||
|
|
|
||||||
|
|
@ -212,17 +212,6 @@ extern enum alpha_fp_trap_mode alpha_fptm;
|
||||||
{"cpu", "%{!mcpu=*:-mcpu=%(VALUE)}" }, \
|
{"cpu", "%{!mcpu=*:-mcpu=%(VALUE)}" }, \
|
||||||
{"tune", "%{!mtune=*:-mtune=%(VALUE)}" }
|
{"tune", "%{!mtune=*:-mtune=%(VALUE)}" }
|
||||||
|
|
||||||
/* Sometimes certain combinations of command options do not make sense
|
|
||||||
on a particular target machine. You can define a macro
|
|
||||||
`OVERRIDE_OPTIONS' to take account of this. This macro, if
|
|
||||||
defined, is executed once just after all the command options have
|
|
||||||
been parsed.
|
|
||||||
|
|
||||||
On the Alpha, it is used to translate target-option strings into
|
|
||||||
numeric values. */
|
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS override_options ()
|
|
||||||
|
|
||||||
|
|
||||||
/* Define this macro to change register usage conditional on target flags.
|
/* Define this macro to change register usage conditional on target flags.
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Output variables, constants and external declarations, for GNU compiler.
|
/* Output variables, constants and external declarations, for GNU compiler.
|
||||||
Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002, 2004, 2005, 2007, 2008,
|
Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002, 2004, 2005, 2007, 2008,
|
||||||
2009
|
2009, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
@ -337,17 +337,16 @@ typedef struct crtl_name_spec
|
||||||
/* The VMS convention is to always provide minimal debug info
|
/* The VMS convention is to always provide minimal debug info
|
||||||
for a traceback unless specifically overridden. */
|
for a traceback unless specifically overridden. */
|
||||||
|
|
||||||
#undef OVERRIDE_OPTIONS
|
#undef SUBTARGET_OVERRIDE_OPTIONS
|
||||||
#define OVERRIDE_OPTIONS \
|
#define SUBTARGET_OVERRIDE_OPTIONS \
|
||||||
{ \
|
do { \
|
||||||
if (write_symbols == NO_DEBUG \
|
if (write_symbols == NO_DEBUG \
|
||||||
&& debug_info_level == DINFO_LEVEL_NONE) \
|
&& debug_info_level == DINFO_LEVEL_NONE) \
|
||||||
{ \
|
{ \
|
||||||
write_symbols = VMS_DEBUG; \
|
write_symbols = VMS_DEBUG; \
|
||||||
debug_info_level = DINFO_LEVEL_TERSE; \
|
debug_info_level = DINFO_LEVEL_TERSE; \
|
||||||
} \
|
} \
|
||||||
override_options (); \
|
} while (0)
|
||||||
}
|
|
||||||
|
|
||||||
/* Link with vms-dwarf2.o if -g (except -g0). This causes the
|
/* Link with vms-dwarf2.o if -g (except -g0). This causes the
|
||||||
VMS link to pull all the dwarf2 debug sections together. */
|
VMS link to pull all the dwarf2 debug sections together. */
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* Definitions of target machine for GNU compiler, Argonaut ARC cpu.
|
/* Definitions of target machine for GNU compiler, Argonaut ARC cpu.
|
||||||
Copyright (C) 2000, 2004, 2007 Free Software Foundation, Inc.
|
Copyright (C) 2000, 2004, 2007, 2010 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
||||||
|
|
@ -54,7 +54,6 @@ extern int shift_operator (rtx, enum machine_mode);
|
||||||
extern enum arc_function_type arc_compute_function_type (tree);
|
extern enum arc_function_type arc_compute_function_type (tree);
|
||||||
|
|
||||||
|
|
||||||
extern void arc_init (void);
|
|
||||||
extern unsigned int arc_compute_frame_size (int);
|
extern unsigned int arc_compute_frame_size (int);
|
||||||
extern void arc_save_restore (FILE *, const char *, unsigned int,
|
extern void arc_save_restore (FILE *, const char *, unsigned int,
|
||||||
unsigned int, const char *);
|
unsigned int, const char *);
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Subroutines used for code generation on the Argonaut ARC cpu.
|
/* Subroutines used for code generation on the Argonaut ARC cpu.
|
||||||
Copyright (C) 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
|
Copyright (C) 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003,
|
||||||
2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
|
2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
||||||
|
|
@ -95,6 +95,7 @@ static bool arc_return_in_memory (const_tree, const_tree);
|
||||||
static bool arc_pass_by_reference (CUMULATIVE_ARGS *, enum machine_mode,
|
static bool arc_pass_by_reference (CUMULATIVE_ARGS *, enum machine_mode,
|
||||||
const_tree, bool);
|
const_tree, bool);
|
||||||
static void arc_trampoline_init (rtx, tree, rtx);
|
static void arc_trampoline_init (rtx, tree, rtx);
|
||||||
|
static void arc_option_override (void);
|
||||||
|
|
||||||
|
|
||||||
/* ARC specific attributs. */
|
/* ARC specific attributs. */
|
||||||
|
|
@ -130,6 +131,9 @@ static const struct attribute_spec arc_attribute_table[] =
|
||||||
#undef TARGET_HANDLE_OPTION
|
#undef TARGET_HANDLE_OPTION
|
||||||
#define TARGET_HANDLE_OPTION arc_handle_option
|
#define TARGET_HANDLE_OPTION arc_handle_option
|
||||||
|
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE arc_option_override
|
||||||
|
|
||||||
#undef TARGET_RTX_COSTS
|
#undef TARGET_RTX_COSTS
|
||||||
#define TARGET_RTX_COSTS arc_rtx_costs
|
#define TARGET_RTX_COSTS arc_rtx_costs
|
||||||
#undef TARGET_ADDRESS_COST
|
#undef TARGET_ADDRESS_COST
|
||||||
|
|
@ -173,10 +177,11 @@ arc_handle_option (size_t code, const char *arg, int value ATTRIBUTE_UNUSED)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Called by OVERRIDE_OPTIONS to initialize various things. */
|
/* Implement TARGET_OPTION_OVERRIDE.
|
||||||
|
These need to be done at start up. It's convenient to do them here. */
|
||||||
|
|
||||||
void
|
static void
|
||||||
arc_init (void)
|
arc_option_override (void)
|
||||||
{
|
{
|
||||||
char *tmp;
|
char *tmp;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Definitions of target machine for GNU compiler, Argonaut ARC cpu.
|
/* Definitions of target machine for GNU compiler, Argonaut ARC cpu.
|
||||||
Copyright (C) 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2005,
|
Copyright (C) 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2004, 2005,
|
||||||
2007, 2008, 2009 Free Software Foundation, Inc.
|
2007, 2008, 2009, 2010 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
||||||
|
|
@ -82,24 +82,9 @@ extern int arc_cpu_type;
|
||||||
/* Check if CPU is an extension and set `arc_cpu_type' and `arc_mangle_cpu'
|
/* Check if CPU is an extension and set `arc_cpu_type' and `arc_mangle_cpu'
|
||||||
appropriately. The result should be nonzero if the cpu is recognized,
|
appropriately. The result should be nonzero if the cpu is recognized,
|
||||||
otherwise zero. This is intended to be redefined in a cover file.
|
otherwise zero. This is intended to be redefined in a cover file.
|
||||||
This is used by arc_init. */
|
This is used by arc_handle_option. */
|
||||||
#define ARC_EXTENSION_CPU(cpu) 0
|
#define ARC_EXTENSION_CPU(cpu) 0
|
||||||
|
|
||||||
/* Sometimes certain combinations of command options do not make
|
|
||||||
sense on a particular target machine. You can define a macro
|
|
||||||
`OVERRIDE_OPTIONS' to take account of this. This macro, if
|
|
||||||
defined, is executed once just after all the command options have
|
|
||||||
been parsed.
|
|
||||||
|
|
||||||
Don't use this macro to turn on various extra optimizations for
|
|
||||||
`-O'. That is what `OPTIMIZATION_OPTIONS' is for. */
|
|
||||||
|
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS \
|
|
||||||
do { \
|
|
||||||
/* These need to be done at start up. It's convenient to do them here. */ \
|
|
||||||
arc_init (); \
|
|
||||||
} while (0)
|
|
||||||
|
|
||||||
/* Target machine storage layout. */
|
/* Target machine storage layout. */
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Prototypes for exported functions defined in arm.c and pe.c
|
/* Prototypes for exported functions defined in arm.c and pe.c
|
||||||
Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
|
Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
|
||||||
2009 Free Software Foundation, Inc.
|
2009, 2010 Free Software Foundation, Inc.
|
||||||
Contributed by Richard Earnshaw (rearnsha@arm.com)
|
Contributed by Richard Earnshaw (rearnsha@arm.com)
|
||||||
Minor hacks by Nick Clifton (nickc@cygnus.com)
|
Minor hacks by Nick Clifton (nickc@cygnus.com)
|
||||||
|
|
||||||
|
|
@ -23,7 +23,6 @@
|
||||||
#ifndef GCC_ARM_PROTOS_H
|
#ifndef GCC_ARM_PROTOS_H
|
||||||
#define GCC_ARM_PROTOS_H
|
#define GCC_ARM_PROTOS_H
|
||||||
|
|
||||||
extern void arm_override_options (void);
|
|
||||||
extern void arm_optimization_options (int, int);
|
extern void arm_optimization_options (int, int);
|
||||||
extern int use_return_insn (int, rtx);
|
extern int use_return_insn (int, rtx);
|
||||||
extern enum reg_class arm_regno_class (int);
|
extern enum reg_class arm_regno_class (int);
|
||||||
|
|
|
||||||
|
|
@ -215,6 +215,7 @@ static void arm_init_libfuncs (void);
|
||||||
static tree arm_build_builtin_va_list (void);
|
static tree arm_build_builtin_va_list (void);
|
||||||
static void arm_expand_builtin_va_start (tree, rtx);
|
static void arm_expand_builtin_va_start (tree, rtx);
|
||||||
static tree arm_gimplify_va_arg_expr (tree, tree, gimple_seq *, gimple_seq *);
|
static tree arm_gimplify_va_arg_expr (tree, tree, gimple_seq *, gimple_seq *);
|
||||||
|
static void arm_option_override (void);
|
||||||
static bool arm_handle_option (size_t, const char *, int);
|
static bool arm_handle_option (size_t, const char *, int);
|
||||||
static void arm_target_help (void);
|
static void arm_target_help (void);
|
||||||
static unsigned HOST_WIDE_INT arm_shift_truncation_mask (enum machine_mode);
|
static unsigned HOST_WIDE_INT arm_shift_truncation_mask (enum machine_mode);
|
||||||
|
|
@ -318,6 +319,8 @@ static const struct attribute_spec arm_attribute_table[] =
|
||||||
#define TARGET_HANDLE_OPTION arm_handle_option
|
#define TARGET_HANDLE_OPTION arm_handle_option
|
||||||
#undef TARGET_HELP
|
#undef TARGET_HELP
|
||||||
#define TARGET_HELP arm_target_help
|
#define TARGET_HELP arm_target_help
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE arm_option_override
|
||||||
|
|
||||||
#undef TARGET_COMP_TYPE_ATTRIBUTES
|
#undef TARGET_COMP_TYPE_ATTRIBUTES
|
||||||
#define TARGET_COMP_TYPE_ATTRIBUTES arm_comp_type_attributes
|
#define TARGET_COMP_TYPE_ATTRIBUTES arm_comp_type_attributes
|
||||||
|
|
@ -1375,13 +1378,16 @@ arm_target_help (void)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Fix up any incompatible options that the user has specified.
|
/* Fix up any incompatible options that the user has specified. */
|
||||||
This has now turned into a maze. */
|
static void
|
||||||
void
|
arm_option_override (void)
|
||||||
arm_override_options (void)
|
|
||||||
{
|
{
|
||||||
unsigned i;
|
unsigned i;
|
||||||
|
|
||||||
|
#ifdef SUBTARGET_OVERRIDE_OPTIONS
|
||||||
|
SUBTARGET_OVERRIDE_OPTIONS;
|
||||||
|
#endif
|
||||||
|
|
||||||
if (arm_selected_arch)
|
if (arm_selected_arch)
|
||||||
{
|
{
|
||||||
if (arm_selected_cpu)
|
if (arm_selected_cpu)
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Definitions of target machine for GNU compiler, for ARM.
|
/* Definitions of target machine for GNU compiler, for ARM.
|
||||||
Copyright (C) 1991, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
|
Copyright (C) 1991, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
|
||||||
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
|
2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl)
|
Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl)
|
||||||
and Martin Simmons (@harleqn.co.uk).
|
and Martin Simmons (@harleqn.co.uk).
|
||||||
|
|
@ -498,8 +498,6 @@ extern int arm_arch_hwdiv;
|
||||||
that is controlled by the APCS-FRAME option. */
|
that is controlled by the APCS-FRAME option. */
|
||||||
#define CAN_DEBUG_WITHOUT_FP
|
#define CAN_DEBUG_WITHOUT_FP
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS arm_override_options ()
|
|
||||||
|
|
||||||
#define OPTIMIZATION_OPTIONS(LEVEL,SIZE) \
|
#define OPTIMIZATION_OPTIONS(LEVEL,SIZE) \
|
||||||
arm_optimization_options ((LEVEL), (SIZE))
|
arm_optimization_options ((LEVEL), (SIZE))
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -333,7 +333,7 @@
|
||||||
(const_string "alu")))
|
(const_string "alu")))
|
||||||
|
|
||||||
; Load scheduling, set from the arm_ld_sched variable
|
; Load scheduling, set from the arm_ld_sched variable
|
||||||
; initialized by arm_override_options()
|
; initialized by arm_option_override()
|
||||||
(define_attr "ldsched" "no,yes" (const (symbol_ref "arm_ld_sched")))
|
(define_attr "ldsched" "no,yes" (const (symbol_ref "arm_ld_sched")))
|
||||||
|
|
||||||
;; Classification of NEON instructions for scheduling purposes.
|
;; Classification of NEON instructions for scheduling purposes.
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Definitions of target machine for GCC,
|
/* Definitions of target machine for GCC,
|
||||||
for ARM with targetting the VXWorks run time environment.
|
for ARM with targetting the VXWorks run time environment.
|
||||||
Copyright (C) 1999, 2000, 2003, 2004, 2007, 2008
|
Copyright (C) 1999, 2000, 2003, 2004, 2007, 2008, 2009, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
Contributed by: Mike Stump <mrs@wrs.com>
|
Contributed by: Mike Stump <mrs@wrs.com>
|
||||||
|
|
@ -44,14 +44,8 @@ along with GCC; see the file COPYING3. If not see
|
||||||
VXWORKS_OS_CPP_BUILTINS (); \
|
VXWORKS_OS_CPP_BUILTINS (); \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
#undef OVERRIDE_OPTIONS
|
#undef SUBTARGET_OVERRIDE_OPTIONS
|
||||||
#define OVERRIDE_OPTIONS \
|
#define SUBTARGET_OVERRIDE_OPTIONS VXWORKS_OVERRIDE_OPTIONS
|
||||||
do \
|
|
||||||
{ \
|
|
||||||
VXWORKS_OVERRIDE_OPTIONS; \
|
|
||||||
arm_override_options (); \
|
|
||||||
} \
|
|
||||||
while (0)
|
|
||||||
|
|
||||||
/* Subsume the arm/elf.h definition, and add RTP hooks. */
|
/* Subsume the arm/elf.h definition, and add RTP hooks. */
|
||||||
#undef SUBTARGET_CPP_SPEC
|
#undef SUBTARGET_CPP_SPEC
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,6 @@
|
||||||
|
|
||||||
|
|
||||||
extern int function_arg_regno_p (int r);
|
extern int function_arg_regno_p (int r);
|
||||||
extern void avr_override_options (void);
|
|
||||||
extern void avr_cpu_cpp_builtins (struct cpp_reader * pfile);
|
extern void avr_cpu_cpp_builtins (struct cpp_reader * pfile);
|
||||||
extern int avr_ret_register (void);
|
extern int avr_ret_register (void);
|
||||||
extern bool class_likely_spilled_p (int c);
|
extern bool class_likely_spilled_p (int c);
|
||||||
|
|
|
||||||
|
|
@ -49,6 +49,7 @@
|
||||||
/* Maximal allowed offset for an address in the LD command */
|
/* Maximal allowed offset for an address in the LD command */
|
||||||
#define MAX_LD_OFFSET(MODE) (64 - (signed)GET_MODE_SIZE (MODE))
|
#define MAX_LD_OFFSET(MODE) (64 - (signed)GET_MODE_SIZE (MODE))
|
||||||
|
|
||||||
|
static void avr_option_override (void);
|
||||||
static int avr_naked_function_p (tree);
|
static int avr_naked_function_p (tree);
|
||||||
static int interrupt_function_p (tree);
|
static int interrupt_function_p (tree);
|
||||||
static int signal_function_p (tree);
|
static int signal_function_p (tree);
|
||||||
|
|
@ -192,10 +193,13 @@ static const struct attribute_spec avr_attribute_table[] =
|
||||||
#undef TARGET_CAN_ELIMINATE
|
#undef TARGET_CAN_ELIMINATE
|
||||||
#define TARGET_CAN_ELIMINATE avr_can_eliminate
|
#define TARGET_CAN_ELIMINATE avr_can_eliminate
|
||||||
|
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE avr_option_override
|
||||||
|
|
||||||
struct gcc_target targetm = TARGET_INITIALIZER;
|
struct gcc_target targetm = TARGET_INITIALIZER;
|
||||||
|
|
||||||
void
|
static void
|
||||||
avr_override_options (void)
|
avr_option_override (void)
|
||||||
{
|
{
|
||||||
const struct mcu_type_s *t;
|
const struct mcu_type_s *t;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -124,8 +124,6 @@ extern GTY(()) section *progmem_section;
|
||||||
|
|
||||||
#define TARGET_VERSION fprintf (stderr, " (GNU assembler syntax)");
|
#define TARGET_VERSION fprintf (stderr, " (GNU assembler syntax)");
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS avr_override_options ()
|
|
||||||
|
|
||||||
#define CAN_DEBUG_WITHOUT_FP
|
#define CAN_DEBUG_WITHOUT_FP
|
||||||
|
|
||||||
#define BITS_BIG_ENDIAN 0
|
#define BITS_BIG_ENDIAN 0
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* Prototypes for Blackfin functions used in the md file & elsewhere.
|
/* Prototypes for Blackfin functions used in the md file & elsewhere.
|
||||||
Copyright (C) 2005, 2007, 2008, 2009 Free Software Foundation, Inc.
|
Copyright (C) 2005, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GNU CC.
|
This file is part of GNU CC.
|
||||||
|
|
||||||
|
|
@ -99,13 +99,11 @@ extern enum reg_class secondary_output_reload_class (enum reg_class, Mmode,
|
||||||
rtx);
|
rtx);
|
||||||
extern char *section_asm_op_1 (SECT_ENUM_T);
|
extern char *section_asm_op_1 (SECT_ENUM_T);
|
||||||
extern char *section_asm_op (SECT_ENUM_T);
|
extern char *section_asm_op (SECT_ENUM_T);
|
||||||
extern void override_options (void);
|
|
||||||
extern void print_operand (FILE *, rtx, char);
|
extern void print_operand (FILE *, rtx, char);
|
||||||
extern void print_address_operand (FILE *, rtx);
|
extern void print_address_operand (FILE *, rtx);
|
||||||
extern void split_di (rtx [], int, rtx [], rtx []);
|
extern void split_di (rtx [], int, rtx [], rtx []);
|
||||||
extern int split_load_immediate (rtx []);
|
extern int split_load_immediate (rtx []);
|
||||||
extern void emit_pic_move (rtx *, Mmode);
|
extern void emit_pic_move (rtx *, Mmode);
|
||||||
extern void override_options (void);
|
|
||||||
extern void asm_conditional_branch (rtx, rtx *, int, int);
|
extern void asm_conditional_branch (rtx, rtx *, int, int);
|
||||||
extern rtx bfin_gen_compare (rtx, Mmode);
|
extern rtx bfin_gen_compare (rtx, Mmode);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -358,7 +358,7 @@ output_file_start (void)
|
||||||
|
|
||||||
/* Variable tracking should be run after all optimizations which change order
|
/* Variable tracking should be run after all optimizations which change order
|
||||||
of insns. It also needs a valid CFG. This can't be done in
|
of insns. It also needs a valid CFG. This can't be done in
|
||||||
override_options, because flag_var_tracking is finalized after
|
bfin_option_override, because flag_var_tracking is finalized after
|
||||||
that. */
|
that. */
|
||||||
bfin_flag_var_tracking = flag_var_tracking;
|
bfin_flag_var_tracking = flag_var_tracking;
|
||||||
flag_var_tracking = 0;
|
flag_var_tracking = 0;
|
||||||
|
|
@ -2639,10 +2639,10 @@ bfin_init_machine_status (void)
|
||||||
return ggc_alloc_cleared_machine_function ();
|
return ggc_alloc_cleared_machine_function ();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Implement the macro OVERRIDE_OPTIONS. */
|
/* Implement the TARGET_OPTION_OVERRIDE hook. */
|
||||||
|
|
||||||
void
|
static void
|
||||||
override_options (void)
|
bfin_option_override (void)
|
||||||
{
|
{
|
||||||
/* If processor type is not specified, enable all workarounds. */
|
/* If processor type is not specified, enable all workarounds. */
|
||||||
if (bfin_cpu_type == BFIN_CPU_UNKNOWN)
|
if (bfin_cpu_type == BFIN_CPU_UNKNOWN)
|
||||||
|
|
@ -6626,6 +6626,9 @@ bfin_expand_builtin (tree exp, rtx target ATTRIBUTE_UNUSED,
|
||||||
#undef TARGET_HANDLE_OPTION
|
#undef TARGET_HANDLE_OPTION
|
||||||
#define TARGET_HANDLE_OPTION bfin_handle_option
|
#define TARGET_HANDLE_OPTION bfin_handle_option
|
||||||
|
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE bfin_option_override
|
||||||
|
|
||||||
#undef TARGET_DEFAULT_TARGET_FLAGS
|
#undef TARGET_DEFAULT_TARGET_FLAGS
|
||||||
#define TARGET_DEFAULT_TARGET_FLAGS TARGET_DEFAULT
|
#define TARGET_DEFAULT_TARGET_FLAGS TARGET_DEFAULT
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -276,17 +276,6 @@ extern int target_flags;
|
||||||
|
|
||||||
extern const char *bfin_library_id_string;
|
extern const char *bfin_library_id_string;
|
||||||
|
|
||||||
/* Sometimes certain combinations of command options do not make
|
|
||||||
sense on a particular target machine. You can define a macro
|
|
||||||
`OVERRIDE_OPTIONS' to take account of this. This macro, if
|
|
||||||
defined, is executed once just after all the command options have
|
|
||||||
been parsed.
|
|
||||||
|
|
||||||
Don't use this macro to turn on various extra optimizations for
|
|
||||||
`-O'. That is what `OPTIMIZATION_OPTIONS' is for. */
|
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS override_options ()
|
|
||||||
|
|
||||||
#define FUNCTION_MODE SImode
|
#define FUNCTION_MODE SImode
|
||||||
#define Pmode SImode
|
#define Pmode SImode
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* Definitions for GCC. Part of the machine description for CRIS.
|
/* Definitions for GCC. Part of the machine description for CRIS.
|
||||||
Copyright (C) 1998, 1999, 2000, 2001, 2004, 2005, 2006, 2007
|
Copyright (C) 1998, 1999, 2000, 2001, 2004, 2005, 2006, 2007, 2009, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
Contributed by Axis Communications.
|
Contributed by Axis Communications.
|
||||||
|
|
||||||
|
|
@ -64,8 +64,6 @@ extern void cris_pragma_expand_mul (struct cpp_reader *);
|
||||||
/* Need one that returns an int; usable in expressions. */
|
/* Need one that returns an int; usable in expressions. */
|
||||||
extern int cris_fatal (char *);
|
extern int cris_fatal (char *);
|
||||||
|
|
||||||
extern void cris_override_options (void);
|
|
||||||
|
|
||||||
extern int cris_initial_elimination_offset (int, int);
|
extern int cris_initial_elimination_offset (int, int);
|
||||||
|
|
||||||
extern void cris_init_expanders (void);
|
extern void cris_init_expanders (void);
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Definitions for GCC. Part of the machine description for CRIS.
|
/* Definitions for GCC. Part of the machine description for CRIS.
|
||||||
Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
|
Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
|
||||||
2008, 2009 Free Software Foundation, Inc.
|
2008, 2009, 2010 Free Software Foundation, Inc.
|
||||||
Contributed by Axis Communications. Written by Hans-Peter Nilsson.
|
Contributed by Axis Communications. Written by Hans-Peter Nilsson.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
@ -130,6 +130,7 @@ static int cris_arg_partial_bytes (CUMULATIVE_ARGS *, enum machine_mode,
|
||||||
static tree cris_md_asm_clobbers (tree, tree, tree);
|
static tree cris_md_asm_clobbers (tree, tree, tree);
|
||||||
|
|
||||||
static bool cris_handle_option (size_t, const char *, int);
|
static bool cris_handle_option (size_t, const char *, int);
|
||||||
|
static void cris_option_override (void);
|
||||||
|
|
||||||
static bool cris_frame_pointer_required (void);
|
static bool cris_frame_pointer_required (void);
|
||||||
|
|
||||||
|
|
@ -208,6 +209,9 @@ int cris_cpu_version = CRIS_DEFAULT_CPU_VERSION;
|
||||||
#undef TARGET_FRAME_POINTER_REQUIRED
|
#undef TARGET_FRAME_POINTER_REQUIRED
|
||||||
#define TARGET_FRAME_POINTER_REQUIRED cris_frame_pointer_required
|
#define TARGET_FRAME_POINTER_REQUIRED cris_frame_pointer_required
|
||||||
|
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE cris_option_override
|
||||||
|
|
||||||
#undef TARGET_ASM_TRAMPOLINE_TEMPLATE
|
#undef TARGET_ASM_TRAMPOLINE_TEMPLATE
|
||||||
#define TARGET_ASM_TRAMPOLINE_TEMPLATE cris_asm_trampoline_template
|
#define TARGET_ASM_TRAMPOLINE_TEMPLATE cris_asm_trampoline_template
|
||||||
#undef TARGET_TRAMPOLINE_INIT
|
#undef TARGET_TRAMPOLINE_INIT
|
||||||
|
|
@ -2336,7 +2340,7 @@ cris_asm_output_case_end (FILE *stream, int num, rtx table)
|
||||||
|
|
||||||
/* TARGET_HANDLE_OPTION worker. We just store the values into local
|
/* TARGET_HANDLE_OPTION worker. We just store the values into local
|
||||||
variables here. Checks for correct semantics are in
|
variables here. Checks for correct semantics are in
|
||||||
cris_override_options. */
|
cris_option_override. */
|
||||||
|
|
||||||
static bool
|
static bool
|
||||||
cris_handle_option (size_t code, const char *arg ATTRIBUTE_UNUSED,
|
cris_handle_option (size_t code, const char *arg ATTRIBUTE_UNUSED,
|
||||||
|
|
@ -2392,11 +2396,11 @@ cris_handle_option (size_t code, const char *arg ATTRIBUTE_UNUSED,
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* The OVERRIDE_OPTIONS worker.
|
/* The TARGET_OPTION_OVERRIDE worker.
|
||||||
As is the norm, this also parses -mfoo=bar type parameters. */
|
As is the norm, this also parses -mfoo=bar type parameters. */
|
||||||
|
|
||||||
void
|
static void
|
||||||
cris_override_options (void)
|
cris_option_override (void)
|
||||||
{
|
{
|
||||||
if (cris_max_stackframe_str)
|
if (cris_max_stackframe_str)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Definitions for GCC. Part of the machine description for CRIS.
|
/* Definitions for GCC. Part of the machine description for CRIS.
|
||||||
Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008,
|
Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008,
|
||||||
2009 Free Software Foundation, Inc.
|
2009, 2010 Free Software Foundation, Inc.
|
||||||
Contributed by Axis Communications. Written by Hans-Peter Nilsson.
|
Contributed by Axis Communications. Written by Hans-Peter Nilsson.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
@ -328,8 +328,6 @@ extern int target_flags;
|
||||||
|
|
||||||
#define CRIS_SUBTARGET_HANDLE_OPTION(x, y, z)
|
#define CRIS_SUBTARGET_HANDLE_OPTION(x, y, z)
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS cris_override_options ()
|
|
||||||
|
|
||||||
#define OPTIMIZATION_OPTIONS(OPTIMIZE, SIZE) \
|
#define OPTIMIZATION_OPTIONS(OPTIMIZE, SIZE) \
|
||||||
do \
|
do \
|
||||||
{ \
|
{ \
|
||||||
|
|
|
||||||
|
|
@ -38,7 +38,6 @@ extern frv_cpu_t frv_cpu_type; /* value of -mcpu= */
|
||||||
/* Define functions defined in frv.c */
|
/* Define functions defined in frv.c */
|
||||||
extern void frv_expand_prologue (void);
|
extern void frv_expand_prologue (void);
|
||||||
extern void frv_expand_epilogue (bool);
|
extern void frv_expand_epilogue (bool);
|
||||||
extern void frv_override_options (void);
|
|
||||||
extern void frv_optimization_options (int, int);
|
extern void frv_optimization_options (int, int);
|
||||||
extern void frv_conditional_register_usage (void);
|
extern void frv_conditional_register_usage (void);
|
||||||
extern frv_stack_t *frv_stack_info (void);
|
extern frv_stack_t *frv_stack_info (void);
|
||||||
|
|
|
||||||
|
|
@ -264,6 +264,7 @@ frv_cpu_t frv_cpu_type = CPU_TYPE; /* value of -mcpu= */
|
||||||
/* Forward references */
|
/* Forward references */
|
||||||
|
|
||||||
static bool frv_handle_option (size_t, const char *, int);
|
static bool frv_handle_option (size_t, const char *, int);
|
||||||
|
static void frv_option_override (void);
|
||||||
static bool frv_legitimate_address_p (enum machine_mode, rtx, bool);
|
static bool frv_legitimate_address_p (enum machine_mode, rtx, bool);
|
||||||
static int frv_default_flags_for_cpu (void);
|
static int frv_default_flags_for_cpu (void);
|
||||||
static int frv_string_begins_with (const_tree, const char *);
|
static int frv_string_begins_with (const_tree, const char *);
|
||||||
|
|
@ -428,6 +429,8 @@ static bool frv_class_likely_spilled_p (reg_class_t);
|
||||||
| MASK_NESTED_CE)
|
| MASK_NESTED_CE)
|
||||||
#undef TARGET_HANDLE_OPTION
|
#undef TARGET_HANDLE_OPTION
|
||||||
#define TARGET_HANDLE_OPTION frv_handle_option
|
#define TARGET_HANDLE_OPTION frv_handle_option
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE frv_option_override
|
||||||
#undef TARGET_INIT_BUILTINS
|
#undef TARGET_INIT_BUILTINS
|
||||||
#define TARGET_INIT_BUILTINS frv_init_builtins
|
#define TARGET_INIT_BUILTINS frv_init_builtins
|
||||||
#undef TARGET_EXPAND_BUILTIN
|
#undef TARGET_EXPAND_BUILTIN
|
||||||
|
|
@ -669,17 +672,10 @@ frv_default_flags_for_cpu (void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Sometimes certain combinations of command options do not make
|
/* Implement TARGET_OPTION_OVERRIDE. */
|
||||||
sense on a particular target machine. You can define a macro
|
|
||||||
`OVERRIDE_OPTIONS' to take account of this. This macro, if
|
|
||||||
defined, is executed once just after all the command options have
|
|
||||||
been parsed.
|
|
||||||
|
|
||||||
Don't use this macro to turn on various extra optimizations for
|
static void
|
||||||
`-O'. That is what `OPTIMIZATION_OPTIONS' is for. */
|
frv_option_override (void)
|
||||||
|
|
||||||
void
|
|
||||||
frv_override_options (void)
|
|
||||||
{
|
{
|
||||||
int regno;
|
int regno;
|
||||||
unsigned int i;
|
unsigned int i;
|
||||||
|
|
|
||||||
|
|
@ -328,16 +328,6 @@
|
||||||
#endif */
|
#endif */
|
||||||
#define TARGET_VERSION fprintf (stderr, _(" (frv)"))
|
#define TARGET_VERSION fprintf (stderr, _(" (frv)"))
|
||||||
|
|
||||||
/* Sometimes certain combinations of command options do not make sense on a
|
|
||||||
particular target machine. You can define a macro `OVERRIDE_OPTIONS' to
|
|
||||||
take account of this. This macro, if defined, is executed once just after
|
|
||||||
all the command options have been parsed.
|
|
||||||
|
|
||||||
Don't use this macro to turn on various extra optimizations for `-O'. That
|
|
||||||
is what `OPTIMIZATION_OPTIONS' is for. */
|
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS frv_override_options ()
|
|
||||||
|
|
||||||
/* Some machines may desire to change what optimizations are performed for
|
/* Some machines may desire to change what optimizations are performed for
|
||||||
various optimization levels. This macro, if defined, is executed once just
|
various optimization levels. This macro, if defined, is executed once just
|
||||||
after the optimization level is determined and before the remainder of the
|
after the optimization level is determined and before the remainder of the
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
/* Definitions of target machine for GNU compiler.
|
/* Definitions of target machine for GNU compiler.
|
||||||
Renesas H8/300 version
|
Renesas H8/300 version
|
||||||
Copyright (C) 2000, 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
|
Copyright (C) 2000, 2002, 2003, 2004, 2005, 2007, 2009, 2010
|
||||||
|
Free Software Foundation, Inc.
|
||||||
Contributed by Steve Chamberlain (sac@cygnus.com),
|
Contributed by Steve Chamberlain (sac@cygnus.com),
|
||||||
Jim Wilson (wilson@cygnus.com), and Doug Evans (dje@cygnus.com).
|
Jim Wilson (wilson@cygnus.com), and Doug Evans (dje@cygnus.com).
|
||||||
|
|
||||||
|
|
@ -95,7 +96,6 @@ extern int h8300_eightbit_data_p (tree);
|
||||||
extern int h8300_tiny_data_p (tree);
|
extern int h8300_tiny_data_p (tree);
|
||||||
#endif /* TREE_CODE */
|
#endif /* TREE_CODE */
|
||||||
|
|
||||||
extern void h8300_init_once (void);
|
|
||||||
extern int h8300_can_use_return_insn_p (void);
|
extern int h8300_can_use_return_insn_p (void);
|
||||||
extern void h8300_expand_prologue (void);
|
extern void h8300_expand_prologue (void);
|
||||||
extern void h8300_expand_epilogue (void);
|
extern void h8300_expand_epilogue (void);
|
||||||
|
|
|
||||||
|
|
@ -305,8 +305,8 @@ enum h8_cpu
|
||||||
|
|
||||||
/* Initialize various cpu specific globals at start up. */
|
/* Initialize various cpu specific globals at start up. */
|
||||||
|
|
||||||
void
|
static void
|
||||||
h8300_init_once (void)
|
h8300_option_override (void)
|
||||||
{
|
{
|
||||||
static const char *const h8_push_ops[2] = { "push" , "push.l" };
|
static const char *const h8_push_ops[2] = { "push" , "push.l" };
|
||||||
static const char *const h8_pop_ops[2] = { "pop" , "pop.l" };
|
static const char *const h8_pop_ops[2] = { "pop" , "pop.l" };
|
||||||
|
|
@ -5922,4 +5922,7 @@ h8300_trampoline_init (rtx m_tramp, tree fndecl, rtx cxt)
|
||||||
#undef TARGET_TRAMPOLINE_INIT
|
#undef TARGET_TRAMPOLINE_INIT
|
||||||
#define TARGET_TRAMPOLINE_INIT h8300_trampoline_init
|
#define TARGET_TRAMPOLINE_INIT h8300_trampoline_init
|
||||||
|
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE h8300_option_override
|
||||||
|
|
||||||
struct gcc_target targetm = TARGET_INITIALIZER;
|
struct gcc_target targetm = TARGET_INITIALIZER;
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
/* Definitions of target machine for GNU compiler.
|
/* Definitions of target machine for GNU compiler.
|
||||||
Renesas H8/300 (generic)
|
Renesas H8/300 (generic)
|
||||||
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1996, 1997, 1998, 1999,
|
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1996, 1997, 1998, 1999,
|
||||||
2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009
|
2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
Contributed by Steve Chamberlain (sac@cygnus.com),
|
Contributed by Steve Chamberlain (sac@cygnus.com),
|
||||||
Jim Wilson (wilson@cygnus.com), and Doug Evans (dje@cygnus.com).
|
Jim Wilson (wilson@cygnus.com), and Doug Evans (dje@cygnus.com).
|
||||||
|
|
@ -129,15 +129,6 @@ extern const char * const *h8_reg_names;
|
||||||
#endif
|
#endif
|
||||||
#endif /* !IN_LIBGCC2 */
|
#endif /* !IN_LIBGCC2 */
|
||||||
|
|
||||||
/* Do things that must be done once at start up. */
|
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS \
|
|
||||||
do \
|
|
||||||
{ \
|
|
||||||
h8300_init_once (); \
|
|
||||||
} \
|
|
||||||
while (0)
|
|
||||||
|
|
||||||
/* Default target_flags if no switches specified. */
|
/* Default target_flags if no switches specified. */
|
||||||
|
|
||||||
#ifndef TARGET_DEFAULT
|
#ifndef TARGET_DEFAULT
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,6 @@ along with GCC; see the file COPYING3. If not see
|
||||||
<http://www.gnu.org/licenses/>. */
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
/* Functions in i386.c */
|
/* Functions in i386.c */
|
||||||
extern void override_options (bool);
|
|
||||||
extern void optimization_options (int, int);
|
extern void optimization_options (int, int);
|
||||||
extern void ix86_conditional_register_usage (void);
|
extern void ix86_conditional_register_usage (void);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2803,17 +2803,12 @@ ix86_debug_options (void)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Sometimes certain combinations of command options do not make
|
/* Override various settings based on options. If MAIN_ARGS_P, the
|
||||||
sense on a particular target machine. You can define a macro
|
options are from the command line, otherwise they are from
|
||||||
`OVERRIDE_OPTIONS' to take account of this. This macro, if
|
attributes. */
|
||||||
defined, is executed once just after all the command options have
|
|
||||||
been parsed.
|
|
||||||
|
|
||||||
Don't use this macro to turn on various extra optimizations for
|
static void
|
||||||
`-O'. That is what `OPTIMIZATION_OPTIONS' is for. */
|
ix86_option_override_internal (bool main_args_p)
|
||||||
|
|
||||||
void
|
|
||||||
override_options (bool main_args_p)
|
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
unsigned int ix86_arch_mask, ix86_tune_mask;
|
unsigned int ix86_arch_mask, ix86_tune_mask;
|
||||||
|
|
@ -3709,6 +3704,14 @@ override_options (bool main_args_p)
|
||||||
= build_target_option_node ();
|
= build_target_option_node ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Implement the TARGET_OPTION_OVERRIDE hook. */
|
||||||
|
|
||||||
|
static void
|
||||||
|
ix86_option_override (void)
|
||||||
|
{
|
||||||
|
ix86_option_override_internal (true);
|
||||||
|
}
|
||||||
|
|
||||||
/* Update register usage after having seen the compiler flags. */
|
/* Update register usage after having seen the compiler flags. */
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
@ -4105,9 +4108,10 @@ ix86_valid_target_attribute_tree (tree args)
|
||||||
if (! ix86_valid_target_attribute_inner_p (args, option_strings))
|
if (! ix86_valid_target_attribute_inner_p (args, option_strings))
|
||||||
return NULL_TREE;
|
return NULL_TREE;
|
||||||
|
|
||||||
/* If the changed options are different from the default, rerun override_options,
|
/* If the changed options are different from the default, rerun
|
||||||
and then save the options away. The string options are are attribute options,
|
ix86_option_override_internal, and then save the options away.
|
||||||
and will be undone when we copy the save structure. */
|
The string options are are attribute options, and will be undone
|
||||||
|
when we copy the save structure. */
|
||||||
if (ix86_isa_flags != def->ix86_isa_flags
|
if (ix86_isa_flags != def->ix86_isa_flags
|
||||||
|| target_flags != def->target_flags
|
|| target_flags != def->target_flags
|
||||||
|| option_strings[IX86_FUNCTION_SPECIFIC_ARCH]
|
|| option_strings[IX86_FUNCTION_SPECIFIC_ARCH]
|
||||||
|
|
@ -4133,7 +4137,7 @@ ix86_valid_target_attribute_tree (tree args)
|
||||||
ix86_fpmath_string = "sse,387";
|
ix86_fpmath_string = "sse,387";
|
||||||
|
|
||||||
/* Do any overrides, such as arch=xxx, or tune=xxx support. */
|
/* Do any overrides, such as arch=xxx, or tune=xxx support. */
|
||||||
override_options (false);
|
ix86_option_override_internal (false);
|
||||||
|
|
||||||
/* Add any builtin functions with the new isa if any. */
|
/* Add any builtin functions with the new isa if any. */
|
||||||
ix86_add_new_builtins (ix86_isa_flags);
|
ix86_add_new_builtins (ix86_isa_flags);
|
||||||
|
|
@ -4529,8 +4533,9 @@ optimization_options (int level, int size ATTRIBUTE_UNUSED)
|
||||||
|
|
||||||
/* The default values of these switches depend on the TARGET_64BIT
|
/* The default values of these switches depend on the TARGET_64BIT
|
||||||
that is not known at this moment. Mark these values with 2 and
|
that is not known at this moment. Mark these values with 2 and
|
||||||
let user the to override these. In case there is no command line option
|
let user the to override these. In case there is no command line
|
||||||
specifying them, we will set the defaults in override_options. */
|
option specifying them, we will set the defaults in
|
||||||
|
ix86_option_override_internal. */
|
||||||
if (optimize >= 1)
|
if (optimize >= 1)
|
||||||
flag_omit_frame_pointer = 2;
|
flag_omit_frame_pointer = 2;
|
||||||
|
|
||||||
|
|
@ -7901,9 +7906,9 @@ ix86_frame_pointer_required (void)
|
||||||
if (SUBTARGET_FRAME_POINTER_REQUIRED)
|
if (SUBTARGET_FRAME_POINTER_REQUIRED)
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
/* In override_options, TARGET_OMIT_LEAF_FRAME_POINTER turns off
|
/* In ix86_option_override_internal, TARGET_OMIT_LEAF_FRAME_POINTER
|
||||||
the frame pointer by default. Turn it back on now if we've not
|
turns off the frame pointer by default. Turn it back on now if
|
||||||
got a leaf function. */
|
we've not got a leaf function. */
|
||||||
if (TARGET_OMIT_LEAF_FRAME_POINTER
|
if (TARGET_OMIT_LEAF_FRAME_POINTER
|
||||||
&& (!current_function_is_leaf
|
&& (!current_function_is_leaf
|
||||||
|| ix86_current_function_calls_tls_descriptor))
|
|| ix86_current_function_calls_tls_descriptor))
|
||||||
|
|
@ -32497,6 +32502,9 @@ ix86_units_per_simd_word (enum machine_mode mode)
|
||||||
#undef TARGET_HANDLE_OPTION
|
#undef TARGET_HANDLE_OPTION
|
||||||
#define TARGET_HANDLE_OPTION ix86_handle_option
|
#define TARGET_HANDLE_OPTION ix86_handle_option
|
||||||
|
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE ix86_option_override
|
||||||
|
|
||||||
#undef TARGET_REGISTER_MOVE_COST
|
#undef TARGET_REGISTER_MOVE_COST
|
||||||
#define TARGET_REGISTER_MOVE_COST ix86_register_move_cost
|
#define TARGET_REGISTER_MOVE_COST ix86_register_move_cost
|
||||||
#undef TARGET_MEMORY_MOVE_COST
|
#undef TARGET_MEMORY_MOVE_COST
|
||||||
|
|
|
||||||
|
|
@ -506,17 +506,6 @@ extern enum calling_abi ix86_abi;
|
||||||
with the rounding mode forced to 53 bits. */
|
with the rounding mode forced to 53 bits. */
|
||||||
#define TARGET_96_ROUND_53_LONG_DOUBLE 0
|
#define TARGET_96_ROUND_53_LONG_DOUBLE 0
|
||||||
|
|
||||||
/* Sometimes certain combinations of command options do not make
|
|
||||||
sense on a particular target machine. You can define a macro
|
|
||||||
`OVERRIDE_OPTIONS' to take account of this. This macro, if
|
|
||||||
defined, is executed once just after all the command options have
|
|
||||||
been parsed.
|
|
||||||
|
|
||||||
Don't use this macro to turn on various extra optimizations for
|
|
||||||
`-O'. That is what `OPTIMIZATION_OPTIONS' is for. */
|
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS override_options (true)
|
|
||||||
|
|
||||||
/* Define this to change the optimizations performed by default. */
|
/* Define this to change the optimizations performed by default. */
|
||||||
#define OPTIMIZATION_OPTIONS(LEVEL, SIZE) \
|
#define OPTIMIZATION_OPTIONS(LEVEL, SIZE) \
|
||||||
optimization_options ((LEVEL), (SIZE))
|
optimization_options ((LEVEL), (SIZE))
|
||||||
|
|
|
||||||
|
|
@ -42,7 +42,8 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
||||||
|
|
||||||
/* The svr4 ABI for the i386 says that records and unions are returned
|
/* The svr4 ABI for the i386 says that records and unions are returned
|
||||||
in memory. In the 64bit compilation we will turn this flag off in
|
in memory. In the 64bit compilation we will turn this flag off in
|
||||||
override_options, as we never do pcc_struct_return scheme on this target. */
|
ix86_option_override_internal, as we never do pcc_struct_return
|
||||||
|
scheme on this target. */
|
||||||
#undef DEFAULT_PCC_STRUCT_RETURN
|
#undef DEFAULT_PCC_STRUCT_RETURN
|
||||||
#define DEFAULT_PCC_STRUCT_RETURN 1
|
#define DEFAULT_PCC_STRUCT_RETURN 1
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2314,7 +2314,7 @@ ia64_file_start (void)
|
||||||
{
|
{
|
||||||
/* Variable tracking should be run after all optimizations which change order
|
/* Variable tracking should be run after all optimizations which change order
|
||||||
of insns. It also needs a valid CFG. This can't be done in
|
of insns. It also needs a valid CFG. This can't be done in
|
||||||
ia64_override_options, because flag_var_tracking is finalized after
|
ia64_option_override, because flag_var_tracking is finalized after
|
||||||
that. */
|
that. */
|
||||||
ia64_flag_var_tracking = flag_var_tracking;
|
ia64_flag_var_tracking = flag_var_tracking;
|
||||||
flag_var_tracking = 0;
|
flag_var_tracking = 0;
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* Definitions of target machine for GNU compiler for iq2000.
|
/* Definitions of target machine for GNU compiler for iq2000.
|
||||||
Copyright (C) 2003, 2004, 2007 Free Software Foundation, Inc.
|
Copyright (C) 2003, 2004, 2007, 2009, 2010 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
||||||
|
|
@ -24,7 +24,6 @@ extern int iq2000_check_split (rtx, enum machine_mode);
|
||||||
extern int iq2000_reg_mode_ok_for_base_p (rtx, enum machine_mode, int);
|
extern int iq2000_reg_mode_ok_for_base_p (rtx, enum machine_mode, int);
|
||||||
extern const char * iq2000_fill_delay_slot (const char *, enum delay_type, rtx *, rtx);
|
extern const char * iq2000_fill_delay_slot (const char *, enum delay_type, rtx *, rtx);
|
||||||
extern const char * iq2000_move_1word (rtx *, rtx, int);
|
extern const char * iq2000_move_1word (rtx *, rtx, int);
|
||||||
extern void override_options (void);
|
|
||||||
extern HOST_WIDE_INT iq2000_debugger_offset (rtx, HOST_WIDE_INT);
|
extern HOST_WIDE_INT iq2000_debugger_offset (rtx, HOST_WIDE_INT);
|
||||||
extern void final_prescan_insn (rtx, rtx *, int);
|
extern void final_prescan_insn (rtx, rtx *, int);
|
||||||
extern HOST_WIDE_INT compute_frame_size (HOST_WIDE_INT);
|
extern HOST_WIDE_INT compute_frame_size (HOST_WIDE_INT);
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* Subroutines used for code generation on Vitesse IQ2000 processors
|
/* Subroutines used for code generation on Vitesse IQ2000 processors
|
||||||
Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009
|
Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
@ -147,6 +147,7 @@ static enum machine_mode gpr_mode;
|
||||||
/* Initialize the GCC target structure. */
|
/* Initialize the GCC target structure. */
|
||||||
static struct machine_function* iq2000_init_machine_status (void);
|
static struct machine_function* iq2000_init_machine_status (void);
|
||||||
static bool iq2000_handle_option (size_t, const char *, int);
|
static bool iq2000_handle_option (size_t, const char *, int);
|
||||||
|
static void iq2000_option_override (void);
|
||||||
static section *iq2000_select_rtx_section (enum machine_mode, rtx,
|
static section *iq2000_select_rtx_section (enum machine_mode, rtx,
|
||||||
unsigned HOST_WIDE_INT);
|
unsigned HOST_WIDE_INT);
|
||||||
static void iq2000_init_builtins (void);
|
static void iq2000_init_builtins (void);
|
||||||
|
|
@ -182,6 +183,8 @@ static bool iq2000_print_operand_punct_valid_p (unsigned char code);
|
||||||
#define TARGET_ASM_SELECT_RTX_SECTION iq2000_select_rtx_section
|
#define TARGET_ASM_SELECT_RTX_SECTION iq2000_select_rtx_section
|
||||||
#undef TARGET_HANDLE_OPTION
|
#undef TARGET_HANDLE_OPTION
|
||||||
#define TARGET_HANDLE_OPTION iq2000_handle_option
|
#define TARGET_HANDLE_OPTION iq2000_handle_option
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE iq2000_option_override
|
||||||
#undef TARGET_RTX_COSTS
|
#undef TARGET_RTX_COSTS
|
||||||
#define TARGET_RTX_COSTS iq2000_rtx_costs
|
#define TARGET_RTX_COSTS iq2000_rtx_costs
|
||||||
#undef TARGET_ADDRESS_COST
|
#undef TARGET_ADDRESS_COST
|
||||||
|
|
@ -1428,8 +1431,8 @@ iq2000_handle_option (size_t code, const char *arg, int value ATTRIBUTE_UNUSED)
|
||||||
|
|
||||||
/* Detect any conflicts in the switches. */
|
/* Detect any conflicts in the switches. */
|
||||||
|
|
||||||
void
|
static void
|
||||||
override_options (void)
|
iq2000_option_override (void)
|
||||||
{
|
{
|
||||||
target_flags &= ~MASK_GPOPT;
|
target_flags &= ~MASK_GPOPT;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -69,8 +69,6 @@
|
||||||
#define TARGET_VERSION TARGET_VERSION_INTERNAL (stderr)
|
#define TARGET_VERSION TARGET_VERSION_INTERNAL (stderr)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS override_options ()
|
|
||||||
|
|
||||||
#define CAN_DEBUG_WITHOUT_FP
|
#define CAN_DEBUG_WITHOUT_FP
|
||||||
|
|
||||||
/* Storage Layout. */
|
/* Storage Layout. */
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
/* Prototypes of target machine functions, Lattice Mico32 architecture.
|
/* Prototypes of target machine functions, Lattice Mico32 architecture.
|
||||||
Contributed by Jon Beniston <jon@beniston.com>
|
Contributed by Jon Beniston <jon@beniston.com>
|
||||||
|
|
||||||
Copyright (C) 2009 Free Software Foundation, Inc.
|
Copyright (C) 2009, 2010 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
||||||
|
|
@ -28,7 +28,6 @@ extern void lm32_print_operand (FILE *file, rtx op, int letter);
|
||||||
extern void lm32_print_operand_address (FILE *file, rtx addr);
|
extern void lm32_print_operand_address (FILE *file, rtx addr);
|
||||||
extern rtx lm32_function_arg (CUMULATIVE_ARGS cum, enum machine_mode mode,
|
extern rtx lm32_function_arg (CUMULATIVE_ARGS cum, enum machine_mode mode,
|
||||||
tree type, int named);
|
tree type, int named);
|
||||||
extern void lm32_override_options (void);
|
|
||||||
extern HOST_WIDE_INT lm32_compute_initial_elimination_offset (int from,
|
extern HOST_WIDE_INT lm32_compute_initial_elimination_offset (int from,
|
||||||
int to);
|
int to);
|
||||||
extern int lm32_can_use_return (void);
|
extern int lm32_can_use_return (void);
|
||||||
|
|
|
||||||
|
|
@ -76,9 +76,12 @@ static bool
|
||||||
lm32_legitimate_address_p (enum machine_mode mode, rtx x, bool strict);
|
lm32_legitimate_address_p (enum machine_mode mode, rtx x, bool strict);
|
||||||
static HOST_WIDE_INT lm32_compute_frame_size (int size);
|
static HOST_WIDE_INT lm32_compute_frame_size (int size);
|
||||||
static bool lm32_handle_option (size_t code, const char *arg, int value);
|
static bool lm32_handle_option (size_t code, const char *arg, int value);
|
||||||
|
static void lm32_option_override (void);
|
||||||
|
|
||||||
#undef TARGET_HANDLE_OPTION
|
#undef TARGET_HANDLE_OPTION
|
||||||
#define TARGET_HANDLE_OPTION lm32_handle_option
|
#define TARGET_HANDLE_OPTION lm32_handle_option
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE lm32_option_override
|
||||||
#undef TARGET_ADDRESS_COST
|
#undef TARGET_ADDRESS_COST
|
||||||
#define TARGET_ADDRESS_COST hook_int_rtx_bool_0
|
#define TARGET_ADDRESS_COST hook_int_rtx_bool_0
|
||||||
#undef TARGET_RTX_COSTS
|
#undef TARGET_RTX_COSTS
|
||||||
|
|
@ -713,8 +716,8 @@ lm32_handle_option (size_t code, const char *arg ATTRIBUTE_UNUSED, int value)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Override command line options. */
|
/* Override command line options. */
|
||||||
void
|
static void
|
||||||
lm32_override_options (void)
|
lm32_option_override (void)
|
||||||
{
|
{
|
||||||
/* We must have sign-extend enabled if barrel-shift isn't. */
|
/* We must have sign-extend enabled if barrel-shift isn't. */
|
||||||
if (!TARGET_BARREL_SHIFT_ENABLED && !TARGET_SIGN_EXTEND_ENABLED)
|
if (!TARGET_BARREL_SHIFT_ENABLED && !TARGET_SIGN_EXTEND_ENABLED)
|
||||||
|
|
|
||||||
|
|
@ -68,8 +68,6 @@
|
||||||
#undef LIB_SPEC
|
#undef LIB_SPEC
|
||||||
#define LIB_SPEC "%{!T*:-T sim.ld}"
|
#define LIB_SPEC "%{!T*:-T sim.ld}"
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS lm32_override_options()
|
|
||||||
|
|
||||||
extern int target_flags;
|
extern int target_flags;
|
||||||
|
|
||||||
/* Add -G xx support. */
|
/* Add -G xx support. */
|
||||||
|
|
|
||||||
|
|
@ -63,6 +63,7 @@ enum m32r_sdata m32r_sdata = M32R_SDATA_DEFAULT;
|
||||||
|
|
||||||
/* Forward declaration. */
|
/* Forward declaration. */
|
||||||
static bool m32r_handle_option (size_t, const char *, int);
|
static bool m32r_handle_option (size_t, const char *, int);
|
||||||
|
static void m32r_option_override (void);
|
||||||
static void init_reg_tables (void);
|
static void init_reg_tables (void);
|
||||||
static void block_move_call (rtx, rtx, rtx);
|
static void block_move_call (rtx, rtx, rtx);
|
||||||
static int m32r_is_insn (rtx);
|
static int m32r_is_insn (rtx);
|
||||||
|
|
@ -150,6 +151,8 @@ static const struct attribute_spec m32r_attribute_table[] =
|
||||||
#define TARGET_DEFAULT_TARGET_FLAGS TARGET_CPU_DEFAULT
|
#define TARGET_DEFAULT_TARGET_FLAGS TARGET_CPU_DEFAULT
|
||||||
#undef TARGET_HANDLE_OPTION
|
#undef TARGET_HANDLE_OPTION
|
||||||
#define TARGET_HANDLE_OPTION m32r_handle_option
|
#define TARGET_HANDLE_OPTION m32r_handle_option
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE m32r_option_override
|
||||||
|
|
||||||
#undef TARGET_ENCODE_SECTION_INFO
|
#undef TARGET_ENCODE_SECTION_INFO
|
||||||
#define TARGET_ENCODE_SECTION_INFO m32r_encode_section_info
|
#define TARGET_ENCODE_SECTION_INFO m32r_encode_section_info
|
||||||
|
|
@ -251,7 +254,7 @@ m32r_handle_option (size_t code, const char *arg, int value)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Called by OVERRIDE_OPTIONS to initialize various things. */
|
/* Called by m32r_option_override to initialize various things. */
|
||||||
|
|
||||||
void
|
void
|
||||||
m32r_init (void)
|
m32r_init (void)
|
||||||
|
|
@ -268,6 +271,15 @@ m32r_init (void)
|
||||||
g_switch_value = SDATA_DEFAULT_SIZE;
|
g_switch_value = SDATA_DEFAULT_SIZE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
m32r_option_override (void)
|
||||||
|
{
|
||||||
|
/* These need to be done at start up.
|
||||||
|
It's convenient to do them here. */
|
||||||
|
m32r_init ();
|
||||||
|
SUBTARGET_OVERRIDE_OPTIONS;
|
||||||
|
}
|
||||||
|
|
||||||
/* Vectors to keep interesting information about registers where it can easily
|
/* Vectors to keep interesting information about registers where it can easily
|
||||||
be got. We use to use the actual mode value as the bit number, but there
|
be got. We use to use the actual mode value as the bit number, but there
|
||||||
is (or may be) more than 32 modes now. Instead we use two tables: one
|
is (or may be) more than 32 modes now. Instead we use two tables: one
|
||||||
|
|
|
||||||
|
|
@ -302,29 +302,10 @@ extern enum m32r_sdata m32r_sdata;
|
||||||
#define MULTILIB_DEFAULTS { "mmodel=small" SUBTARGET_MULTILIB_DEFAULTS }
|
#define MULTILIB_DEFAULTS { "mmodel=small" SUBTARGET_MULTILIB_DEFAULTS }
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Sometimes certain combinations of command options do not make
|
|
||||||
sense on a particular target machine. You can define a macro
|
|
||||||
`OVERRIDE_OPTIONS' to take account of this. This macro, if
|
|
||||||
defined, is executed once just after all the command options have
|
|
||||||
been parsed.
|
|
||||||
|
|
||||||
Don't use this macro to turn on various extra optimizations for
|
|
||||||
`-O'. That is what `OPTIMIZATION_OPTIONS' is for. */
|
|
||||||
|
|
||||||
#ifndef SUBTARGET_OVERRIDE_OPTIONS
|
#ifndef SUBTARGET_OVERRIDE_OPTIONS
|
||||||
#define SUBTARGET_OVERRIDE_OPTIONS
|
#define SUBTARGET_OVERRIDE_OPTIONS
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS \
|
|
||||||
do \
|
|
||||||
{ \
|
|
||||||
/* These need to be done at start up. \
|
|
||||||
It's convenient to do them here. */ \
|
|
||||||
m32r_init (); \
|
|
||||||
SUBTARGET_OVERRIDE_OPTIONS \
|
|
||||||
} \
|
|
||||||
while (0)
|
|
||||||
|
|
||||||
#ifndef SUBTARGET_OPTIMIZATION_OPTIONS
|
#ifndef SUBTARGET_OPTIMIZATION_OPTIONS
|
||||||
#define SUBTARGET_OPTIMIZATION_OPTIONS
|
#define SUBTARGET_OPTIMIZATION_OPTIONS
|
||||||
#endif
|
#endif
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,6 @@ along with GCC; see the file COPYING3. If not see
|
||||||
<http://www.gnu.org/licenses/>. */
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
|
|
||||||
extern int m68hc11_override_options (void);
|
|
||||||
extern int m68hc11_optimization_options (int,int);
|
extern int m68hc11_optimization_options (int,int);
|
||||||
extern void m68hc11_conditional_register_usage (void);
|
extern void m68hc11_conditional_register_usage (void);
|
||||||
extern int hard_regno_mode_ok (int, enum machine_mode);
|
extern int hard_regno_mode_ok (int, enum machine_mode);
|
||||||
|
|
|
||||||
|
|
@ -61,6 +61,7 @@ Note:
|
||||||
#include "target-def.h"
|
#include "target-def.h"
|
||||||
#include "df.h"
|
#include "df.h"
|
||||||
|
|
||||||
|
static void m68hc11_option_override (void);
|
||||||
static void emit_move_after_reload (rtx, rtx, rtx);
|
static void emit_move_after_reload (rtx, rtx, rtx);
|
||||||
static rtx simplify_logical (enum machine_mode, int, rtx, rtx *);
|
static rtx simplify_logical (enum machine_mode, int, rtx, rtx *);
|
||||||
static void m68hc11_emit_logical (enum machine_mode, enum rtx_code, rtx *);
|
static void m68hc11_emit_logical (enum machine_mode, enum rtx_code, rtx *);
|
||||||
|
|
@ -293,10 +294,13 @@ static const struct attribute_spec m68hc11_attribute_table[] =
|
||||||
#undef TARGET_TRAMPOLINE_INIT
|
#undef TARGET_TRAMPOLINE_INIT
|
||||||
#define TARGET_TRAMPOLINE_INIT m68hc11_trampoline_init
|
#define TARGET_TRAMPOLINE_INIT m68hc11_trampoline_init
|
||||||
|
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE m68hc11_option_override
|
||||||
|
|
||||||
struct gcc_target targetm = TARGET_INITIALIZER;
|
struct gcc_target targetm = TARGET_INITIALIZER;
|
||||||
|
|
||||||
int
|
static void
|
||||||
m68hc11_override_options (void)
|
m68hc11_option_override (void)
|
||||||
{
|
{
|
||||||
memset (m68hc11_reg_valid_for_index, 0,
|
memset (m68hc11_reg_valid_for_index, 0,
|
||||||
sizeof (m68hc11_reg_valid_for_index));
|
sizeof (m68hc11_reg_valid_for_index));
|
||||||
|
|
@ -361,7 +365,6 @@ m68hc11_override_options (void)
|
||||||
if (TARGET_LONG_CALLS)
|
if (TARGET_LONG_CALLS)
|
||||||
current_function_far = 1;
|
current_function_far = 1;
|
||||||
}
|
}
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -142,17 +142,6 @@ extern short *reg_renumber; /* def in local_alloc.c */
|
||||||
/* Print subsidiary information on the compiler version in use. */
|
/* Print subsidiary information on the compiler version in use. */
|
||||||
#define TARGET_VERSION fprintf (stderr, " (MC68HC11/MC68HC12/MC68HCS12)")
|
#define TARGET_VERSION fprintf (stderr, " (MC68HC11/MC68HC12/MC68HCS12)")
|
||||||
|
|
||||||
/* Sometimes certain combinations of command options do not make
|
|
||||||
sense on a particular target machine. You can define a macro
|
|
||||||
`OVERRIDE_OPTIONS' to take account of this. This macro, if
|
|
||||||
defined, is executed once just after all the command options have
|
|
||||||
been parsed.
|
|
||||||
|
|
||||||
Don't use this macro to turn on various extra optimizations for
|
|
||||||
`-O'. That is what `OPTIMIZATION_OPTIONS' is for. */
|
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS m68hc11_override_options ()
|
|
||||||
|
|
||||||
|
|
||||||
/* Define cost parameters for a given processor variant. */
|
/* Define cost parameters for a given processor variant. */
|
||||||
struct processor_costs {
|
struct processor_costs {
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* Definitions of target machine for GNU compiler. Sun 68000/68020 version.
|
/* Definitions of target machine for GNU compiler. Sun 68000/68020 version.
|
||||||
Copyright (C) 2000, 2002, 2004, 2005, 2006, 2007, 2008
|
Copyright (C) 2000, 2002, 2004, 2005, 2006, 2007, 2008, 2009, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
@ -94,7 +94,6 @@ extern int flags_in_68881 (void);
|
||||||
extern void m68k_expand_prologue (void);
|
extern void m68k_expand_prologue (void);
|
||||||
extern bool m68k_use_return_insn (void);
|
extern bool m68k_use_return_insn (void);
|
||||||
extern void m68k_expand_epilogue (bool);
|
extern void m68k_expand_epilogue (bool);
|
||||||
extern void override_options (void);
|
|
||||||
extern const char *m68k_cpp_cpu_ident (const char *);
|
extern const char *m68k_cpp_cpu_ident (const char *);
|
||||||
extern const char *m68k_cpp_cpu_family (const char *);
|
extern const char *m68k_cpp_cpu_family (const char *);
|
||||||
extern void init_68881_table (void);
|
extern void init_68881_table (void);
|
||||||
|
|
|
||||||
|
|
@ -135,6 +135,7 @@ static int m68k_sched_first_cycle_multipass_dfa_lookahead (void);
|
||||||
static bool m68k_can_eliminate (const int, const int);
|
static bool m68k_can_eliminate (const int, const int);
|
||||||
static bool m68k_legitimate_address_p (enum machine_mode, rtx, bool);
|
static bool m68k_legitimate_address_p (enum machine_mode, rtx, bool);
|
||||||
static bool m68k_handle_option (size_t, const char *, int);
|
static bool m68k_handle_option (size_t, const char *, int);
|
||||||
|
static void m68k_option_override (void);
|
||||||
static rtx find_addr_reg (rtx);
|
static rtx find_addr_reg (rtx);
|
||||||
static const char *singlemove_string (rtx *);
|
static const char *singlemove_string (rtx *);
|
||||||
static void m68k_output_mi_thunk (FILE *, tree, HOST_WIDE_INT,
|
static void m68k_output_mi_thunk (FILE *, tree, HOST_WIDE_INT,
|
||||||
|
|
@ -233,6 +234,9 @@ const char *m68k_library_id_string = "_current_shared_library_a5_offset_";
|
||||||
#undef TARGET_HANDLE_OPTION
|
#undef TARGET_HANDLE_OPTION
|
||||||
#define TARGET_HANDLE_OPTION m68k_handle_option
|
#define TARGET_HANDLE_OPTION m68k_handle_option
|
||||||
|
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE m68k_option_override
|
||||||
|
|
||||||
#undef TARGET_RTX_COSTS
|
#undef TARGET_RTX_COSTS
|
||||||
#define TARGET_RTX_COSTS m68k_rtx_costs
|
#define TARGET_RTX_COSTS m68k_rtx_costs
|
||||||
|
|
||||||
|
|
@ -539,17 +543,10 @@ m68k_handle_option (size_t code, const char *arg, int value)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Sometimes certain combinations of command options do not make
|
/* Implement TARGET_OPTION_OVERRIDE. */
|
||||||
sense on a particular target machine. You can define a macro
|
|
||||||
`OVERRIDE_OPTIONS' to take account of this. This macro, if
|
|
||||||
defined, is executed once just after all the command options have
|
|
||||||
been parsed.
|
|
||||||
|
|
||||||
Don't use this macro to turn on various extra optimizations for
|
static void
|
||||||
`-O'. That is what `OPTIMIZATION_OPTIONS' is for. */
|
m68k_option_override (void)
|
||||||
|
|
||||||
void
|
|
||||||
override_options (void)
|
|
||||||
{
|
{
|
||||||
const struct m68k_target_selection *entry;
|
const struct m68k_target_selection *entry;
|
||||||
unsigned long target_mask;
|
unsigned long target_mask;
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Definitions of target machine for GCC for Motorola 680x0/ColdFire.
|
/* Definitions of target machine for GCC for Motorola 680x0/ColdFire.
|
||||||
Copyright (C) 1987, 1988, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
|
Copyright (C) 1987, 1988, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
|
||||||
2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
|
2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
@ -274,8 +274,6 @@ along with GCC; see the file COPYING3. If not see
|
||||||
#define TUNE_MAC ((m68k_tune_flags & FL_CF_MAC) != 0)
|
#define TUNE_MAC ((m68k_tune_flags & FL_CF_MAC) != 0)
|
||||||
#define TUNE_EMAC ((m68k_tune_flags & FL_CF_EMAC) != 0)
|
#define TUNE_EMAC ((m68k_tune_flags & FL_CF_EMAC) != 0)
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS override_options()
|
|
||||||
|
|
||||||
/* These are meant to be redefined in the host dependent files */
|
/* These are meant to be redefined in the host dependent files */
|
||||||
#define SUBTARGET_OVERRIDE_OPTIONS
|
#define SUBTARGET_OVERRIDE_OPTIONS
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* Prototypes for exported functions defined in mcore.c
|
/* Prototypes for exported functions defined in mcore.c
|
||||||
Copyright (C) 2000, 2002, 2003, 2004, 2005, 2007
|
Copyright (C) 2000, 2002, 2003, 2004, 2005, 2007, 2009, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
Contributed by Nick Clifton (nickc@redhat.com)
|
Contributed by Nick Clifton (nickc@redhat.com)
|
||||||
|
|
||||||
|
|
@ -29,7 +29,6 @@ extern int mcore_initial_elimination_offset (int, int);
|
||||||
extern int mcore_byte_offset (unsigned int);
|
extern int mcore_byte_offset (unsigned int);
|
||||||
extern int mcore_halfword_offset (unsigned int);
|
extern int mcore_halfword_offset (unsigned int);
|
||||||
extern int mcore_const_trick_uses_not (HOST_WIDE_INT);
|
extern int mcore_const_trick_uses_not (HOST_WIDE_INT);
|
||||||
extern void mcore_override_options (void);
|
|
||||||
extern int mcore_dllexport_name_p (const char *);
|
extern int mcore_dllexport_name_p (const char *);
|
||||||
extern int mcore_dllimport_name_p (const char *);
|
extern int mcore_dllimport_name_p (const char *);
|
||||||
extern int mcore_naked_function_p (void);
|
extern int mcore_naked_function_p (void);
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Output routines for Motorola MCore processor
|
/* Output routines for Motorola MCore processor
|
||||||
Copyright (C) 1993, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008,
|
Copyright (C) 1993, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008,
|
||||||
2009 Free Software Foundation, Inc.
|
2009, 2010 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
||||||
|
|
@ -149,6 +149,7 @@ static int mcore_arg_partial_bytes (CUMULATIVE_ARGS *,
|
||||||
tree, bool);
|
tree, bool);
|
||||||
static void mcore_asm_trampoline_template (FILE *);
|
static void mcore_asm_trampoline_template (FILE *);
|
||||||
static void mcore_trampoline_init (rtx, tree, rtx);
|
static void mcore_trampoline_init (rtx, tree, rtx);
|
||||||
|
static void mcore_option_override (void);
|
||||||
|
|
||||||
/* MCore specific attributes. */
|
/* MCore specific attributes. */
|
||||||
|
|
||||||
|
|
@ -225,6 +226,9 @@ static const struct attribute_spec mcore_attribute_table[] =
|
||||||
#undef TARGET_TRAMPOLINE_INIT
|
#undef TARGET_TRAMPOLINE_INIT
|
||||||
#define TARGET_TRAMPOLINE_INIT mcore_trampoline_init
|
#define TARGET_TRAMPOLINE_INIT mcore_trampoline_init
|
||||||
|
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE mcore_option_override
|
||||||
|
|
||||||
struct gcc_target targetm = TARGET_INITIALIZER;
|
struct gcc_target targetm = TARGET_INITIALIZER;
|
||||||
|
|
||||||
/* Adjust the stack and return the number of bytes taken to do it. */
|
/* Adjust the stack and return the number of bytes taken to do it. */
|
||||||
|
|
@ -2679,8 +2683,8 @@ mcore_is_same_reg (rtx x, rtx y)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
static void
|
||||||
mcore_override_options (void)
|
mcore_option_override (void)
|
||||||
{
|
{
|
||||||
/* Only the m340 supports little endian code. */
|
/* Only the m340 supports little endian code. */
|
||||||
if (TARGET_LITTLE_END && ! TARGET_M340)
|
if (TARGET_LITTLE_END && ! TARGET_M340)
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
/* Definitions of target machine for GNU compiler,
|
/* Definitions of target machine for GNU compiler,
|
||||||
for Motorola M*CORE Processor.
|
for Motorola M*CORE Processor.
|
||||||
Copyright (C) 1993, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007,
|
Copyright (C) 1993, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007,
|
||||||
2008, 2009 Free Software Foundation, Inc.
|
2008, 2009, 2010 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
||||||
|
|
@ -110,11 +110,6 @@ extern char * mcore_current_function_name;
|
||||||
} \
|
} \
|
||||||
}
|
}
|
||||||
|
|
||||||
/* What options are we going to force to specific settings,
|
|
||||||
regardless of what the user thought he wanted.
|
|
||||||
We also use this for some post-processing of options. */
|
|
||||||
#define OVERRIDE_OPTIONS mcore_override_options ()
|
|
||||||
|
|
||||||
/* Target machine storage Layout. */
|
/* Target machine storage Layout. */
|
||||||
|
|
||||||
#define PROMOTE_MODE(MODE,UNSIGNEDP,TYPE) \
|
#define PROMOTE_MODE(MODE,UNSIGNEDP,TYPE) \
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,6 @@ along with GCC; see the file COPYING3. If not see
|
||||||
|
|
||||||
extern void mep_conditional_register_usage (void);
|
extern void mep_conditional_register_usage (void);
|
||||||
extern void mep_optimization_options (void);
|
extern void mep_optimization_options (void);
|
||||||
extern void mep_override_options (void);
|
|
||||||
extern int mep_regno_reg_class (int);
|
extern int mep_regno_reg_class (int);
|
||||||
extern int mep_reg_class_from_constraint (int, const char *);
|
extern int mep_reg_class_from_constraint (int, const char *);
|
||||||
extern bool mep_const_ok_for_letter_p (HOST_WIDE_INT, int);
|
extern bool mep_const_ok_for_letter_p (HOST_WIDE_INT, int);
|
||||||
|
|
|
||||||
|
|
@ -302,8 +302,8 @@ mep_optimization_options (void)
|
||||||
flag_omit_frame_pointer = 1;
|
flag_omit_frame_pointer = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
static void
|
||||||
mep_override_options (void)
|
mep_option_override (void)
|
||||||
{
|
{
|
||||||
if (flag_pic == 1)
|
if (flag_pic == 1)
|
||||||
warning (OPT_fpic, "-fpic is not supported");
|
warning (OPT_fpic, "-fpic is not supported");
|
||||||
|
|
@ -7409,6 +7409,8 @@ mep_asm_init_sections (void)
|
||||||
#define TARGET_VECTOR_MODE_SUPPORTED_P mep_vector_mode_supported_p
|
#define TARGET_VECTOR_MODE_SUPPORTED_P mep_vector_mode_supported_p
|
||||||
#undef TARGET_HANDLE_OPTION
|
#undef TARGET_HANDLE_OPTION
|
||||||
#define TARGET_HANDLE_OPTION mep_handle_option
|
#define TARGET_HANDLE_OPTION mep_handle_option
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE mep_option_override
|
||||||
#undef TARGET_DEFAULT_TARGET_FLAGS
|
#undef TARGET_DEFAULT_TARGET_FLAGS
|
||||||
#define TARGET_DEFAULT_TARGET_FLAGS TARGET_DEFAULT
|
#define TARGET_DEFAULT_TARGET_FLAGS TARGET_DEFAULT
|
||||||
#undef TARGET_ALLOCATE_INITIAL_VALUE
|
#undef TARGET_ALLOCATE_INITIAL_VALUE
|
||||||
|
|
|
||||||
|
|
@ -134,8 +134,6 @@ extern int target_flags;
|
||||||
|
|
||||||
#define TARGET_VERSION fprintf (stderr, " (Toshiba Media Processor (MeP))");
|
#define TARGET_VERSION fprintf (stderr, " (Toshiba Media Processor (MeP))");
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS mep_override_options ();
|
|
||||||
|
|
||||||
/* The MeP config tool will add TARGET_OPTION_TRANSLATE_TABLE here. */
|
/* The MeP config tool will add TARGET_OPTION_TRANSLATE_TABLE here. */
|
||||||
#define TARGET_OPTION_TRANSLATE_TABLE \
|
#define TARGET_OPTION_TRANSLATE_TABLE \
|
||||||
{"-mall-opts", "-maverage -mmult -mdiv -mbitops -mleadz \
|
{"-mall-opts", "-maverage -mmult -mdiv -mbitops -mleadz \
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,6 @@ You should have received a copy of the GNU General Public License
|
||||||
along with GCC; see the file COPYING3. If not see
|
along with GCC; see the file COPYING3. If not see
|
||||||
<http://www.gnu.org/licenses/>. */
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
extern void mmix_override_options (void);
|
|
||||||
extern void mmix_init_expanders (void);
|
extern void mmix_init_expanders (void);
|
||||||
extern int mmix_eh_return_data_regno (int);
|
extern int mmix_eh_return_data_regno (int);
|
||||||
extern int mmix_initial_elimination_offset (int, int);
|
extern int mmix_initial_elimination_offset (int, int);
|
||||||
|
|
|
||||||
|
|
@ -113,6 +113,7 @@ rtx mmix_compare_op1;
|
||||||
/* Intermediate for insn output. */
|
/* Intermediate for insn output. */
|
||||||
static int mmix_output_destination_register;
|
static int mmix_output_destination_register;
|
||||||
|
|
||||||
|
static void mmix_option_override (void);
|
||||||
static void mmix_asm_output_source_filename (FILE *, const char *);
|
static void mmix_asm_output_source_filename (FILE *, const char *);
|
||||||
static void mmix_output_shiftvalue_op_from_str
|
static void mmix_output_shiftvalue_op_from_str
|
||||||
(FILE *, const char *, HOST_WIDEST_INT);
|
(FILE *, const char *, HOST_WIDEST_INT);
|
||||||
|
|
@ -233,15 +234,18 @@ static void mmix_trampoline_init (rtx, tree, rtx);
|
||||||
#undef TARGET_TRAMPOLINE_INIT
|
#undef TARGET_TRAMPOLINE_INIT
|
||||||
#define TARGET_TRAMPOLINE_INIT mmix_trampoline_init
|
#define TARGET_TRAMPOLINE_INIT mmix_trampoline_init
|
||||||
|
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE mmix_option_override
|
||||||
|
|
||||||
struct gcc_target targetm = TARGET_INITIALIZER;
|
struct gcc_target targetm = TARGET_INITIALIZER;
|
||||||
|
|
||||||
/* Functions that are expansions for target macros.
|
/* Functions that are expansions for target macros.
|
||||||
See Target Macros in `Using and Porting GCC'. */
|
See Target Macros in `Using and Porting GCC'. */
|
||||||
|
|
||||||
/* OVERRIDE_OPTIONS. */
|
/* TARGET_OPTION_OVERRIDE. */
|
||||||
|
|
||||||
void
|
static void
|
||||||
mmix_override_options (void)
|
mmix_option_override (void)
|
||||||
{
|
{
|
||||||
/* Should we err or should we warn? Hmm. At least we must neutralize
|
/* Should we err or should we warn? Hmm. At least we must neutralize
|
||||||
it. For example the wrong kind of case-tables will be generated with
|
it. For example the wrong kind of case-tables will be generated with
|
||||||
|
|
|
||||||
|
|
@ -149,8 +149,6 @@ extern int target_flags;
|
||||||
#define TARGET_VERSION \
|
#define TARGET_VERSION \
|
||||||
fprintf (stderr, " (MMIX)")
|
fprintf (stderr, " (MMIX)")
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS mmix_override_options ()
|
|
||||||
|
|
||||||
#define OPTIMIZATION_OPTIONS(LEVEL, SIZE) \
|
#define OPTIMIZATION_OPTIONS(LEVEL, SIZE) \
|
||||||
do \
|
do \
|
||||||
{ \
|
{ \
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
/* Definitions of target machine for GNU compiler. Matsushita MN10300 series
|
/* Definitions of target machine for GNU compiler. Matsushita MN10300 series
|
||||||
Copyright (C) 2000, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
|
Copyright (C) 2000, 2003, 2004, 2005, 2007, 2009, 2010
|
||||||
|
Free Software Foundation, Inc.
|
||||||
Contributed by Jeff Law (law@cygnus.com).
|
Contributed by Jeff Law (law@cygnus.com).
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
@ -20,7 +21,6 @@ along with GCC; see the file COPYING3. If not see
|
||||||
|
|
||||||
#ifdef RTX_CODE
|
#ifdef RTX_CODE
|
||||||
|
|
||||||
extern void mn10300_override_options (void);
|
|
||||||
extern rtx legitimize_pic_address (rtx, rtx);
|
extern rtx legitimize_pic_address (rtx, rtx);
|
||||||
extern int legitimate_pic_operand_p (rtx);
|
extern int legitimate_pic_operand_p (rtx);
|
||||||
extern void print_operand (FILE *, rtx, int);
|
extern void print_operand (FILE *, rtx, int);
|
||||||
|
|
|
||||||
|
|
@ -69,6 +69,7 @@ enum processor_type mn10300_processor = PROCESSOR_DEFAULT;
|
||||||
|
|
||||||
|
|
||||||
static bool mn10300_handle_option (size_t, const char *, int);
|
static bool mn10300_handle_option (size_t, const char *, int);
|
||||||
|
static void mn10300_option_override (void);
|
||||||
static bool mn10300_legitimate_address_p (enum machine_mode, rtx, bool);
|
static bool mn10300_legitimate_address_p (enum machine_mode, rtx, bool);
|
||||||
static int mn10300_address_cost_1 (rtx, int *);
|
static int mn10300_address_cost_1 (rtx, int *);
|
||||||
static int mn10300_address_cost (rtx, bool);
|
static int mn10300_address_cost (rtx, bool);
|
||||||
|
|
@ -112,6 +113,8 @@ static bool mn10300_can_output_mi_thunk (const_tree, HOST_WIDE_INT, HOST_WIDE_IN
|
||||||
#define TARGET_DEFAULT_TARGET_FLAGS MASK_MULT_BUG | MASK_PTR_A0D0
|
#define TARGET_DEFAULT_TARGET_FLAGS MASK_MULT_BUG | MASK_PTR_A0D0
|
||||||
#undef TARGET_HANDLE_OPTION
|
#undef TARGET_HANDLE_OPTION
|
||||||
#define TARGET_HANDLE_OPTION mn10300_handle_option
|
#define TARGET_HANDLE_OPTION mn10300_handle_option
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE mn10300_option_override
|
||||||
|
|
||||||
#undef TARGET_ENCODE_SECTION_INFO
|
#undef TARGET_ENCODE_SECTION_INFO
|
||||||
#define TARGET_ENCODE_SECTION_INFO mn10300_encode_section_info
|
#define TARGET_ENCODE_SECTION_INFO mn10300_encode_section_info
|
||||||
|
|
@ -177,10 +180,10 @@ mn10300_handle_option (size_t code,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Implement OVERRIDE_OPTIONS. */
|
/* Implement TARGET_OPTION_OVERRIDE. */
|
||||||
|
|
||||||
void
|
static void
|
||||||
mn10300_override_options (void)
|
mn10300_option_override (void)
|
||||||
{
|
{
|
||||||
if (TARGET_AM33)
|
if (TARGET_AM33)
|
||||||
target_flags &= ~MASK_MULT_BUG;
|
target_flags &= ~MASK_MULT_BUG;
|
||||||
|
|
|
||||||
|
|
@ -60,8 +60,6 @@ extern enum processor_type mn10300_processor;
|
||||||
#define PROCESSOR_DEFAULT PROCESSOR_MN10300
|
#define PROCESSOR_DEFAULT PROCESSOR_MN10300
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS mn10300_override_options ()
|
|
||||||
|
|
||||||
/* Print subsidiary information on the compiler version in use. */
|
/* Print subsidiary information on the compiler version in use. */
|
||||||
|
|
||||||
#define TARGET_VERSION fprintf (stderr, " (MN10300)");
|
#define TARGET_VERSION fprintf (stderr, " (MN10300)");
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,6 @@ You should have received a copy of the GNU General Public License
|
||||||
along with GCC; see the file COPYING3. If not see
|
along with GCC; see the file COPYING3. If not see
|
||||||
<http://www.gnu.org/licenses/>. */
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
extern void moxie_override_options (void);
|
|
||||||
extern void moxie_expand_prologue (void);
|
extern void moxie_expand_prologue (void);
|
||||||
extern void moxie_expand_epilogue (void);
|
extern void moxie_expand_epilogue (void);
|
||||||
extern int moxie_initial_elimination_offset (int, int);
|
extern int moxie_initial_elimination_offset (int, int);
|
||||||
|
|
|
||||||
|
|
@ -231,10 +231,10 @@ moxie_init_machine_status (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* The OVERRIDE_OPTIONS worker.
|
/* The TARGET_OPTION_OVERRIDE worker.
|
||||||
All this curently does is set init_machine_status. */
|
All this curently does is set init_machine_status. */
|
||||||
void
|
static void
|
||||||
moxie_override_options (void)
|
moxie_option_override (void)
|
||||||
{
|
{
|
||||||
/* Set the per-function-data initializer. */
|
/* Set the per-function-data initializer. */
|
||||||
init_machine_status = moxie_init_machine_status;
|
init_machine_status = moxie_init_machine_status;
|
||||||
|
|
@ -567,6 +567,9 @@ moxie_trampoline_init (rtx m_tramp, tree fndecl, rtx chain_value)
|
||||||
#undef TARGET_TRAMPOLINE_INIT
|
#undef TARGET_TRAMPOLINE_INIT
|
||||||
#define TARGET_TRAMPOLINE_INIT moxie_trampoline_init
|
#define TARGET_TRAMPOLINE_INIT moxie_trampoline_init
|
||||||
|
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE moxie_option_override
|
||||||
|
|
||||||
struct gcc_target targetm = TARGET_INITIALIZER;
|
struct gcc_target targetm = TARGET_INITIALIZER;
|
||||||
|
|
||||||
#include "gt-moxie.h"
|
#include "gt-moxie.h"
|
||||||
|
|
|
||||||
|
|
@ -303,8 +303,6 @@ enum reg_class
|
||||||
pointer registers are already assumed to be used as needed. */
|
pointer registers are already assumed to be used as needed. */
|
||||||
#define EPILOGUE_USES(R) (R == MOXIE_R5)
|
#define EPILOGUE_USES(R) (R == MOXIE_R5)
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS moxie_override_options ()
|
|
||||||
|
|
||||||
/* Storage Layout */
|
/* Storage Layout */
|
||||||
|
|
||||||
#define BITS_BIG_ENDIAN 0
|
#define BITS_BIG_ENDIAN 0
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Prototypes for exported functions defined in picochip.c
|
/* Prototypes for exported functions defined in picochip.c
|
||||||
|
|
||||||
Copyright (C) 2000, 2001, 2008 Free Software Foundation, Inc.
|
Copyright (C) 2000, 2001, 2008, 2009, 2010 Free Software Foundation, Inc.
|
||||||
Contributed by picoChip Designs Ltd. (http://www.picochip.com)
|
Contributed by picoChip Designs Ltd. (http://www.picochip.com)
|
||||||
Maintained by Daniel Towner (daniel.towner@picochip.com) and
|
Maintained by Daniel Towner (daniel.towner@picochip.com) and
|
||||||
Hariharan Sandanagobalane (hariharan@picochip.com).
|
Hariharan Sandanagobalane (hariharan@picochip.com).
|
||||||
|
|
@ -91,7 +91,6 @@ extern void picochip_expand_epilogue (int is_sibling_call);
|
||||||
|
|
||||||
extern void picochip_final_prescan_insn (rtx insn, rtx * operand, int num_operands);
|
extern void picochip_final_prescan_insn (rtx insn, rtx * operand, int num_operands);
|
||||||
extern const char *picochip_asm_output_opcode (FILE * f, const char *ptr);
|
extern const char *picochip_asm_output_opcode (FILE * f, const char *ptr);
|
||||||
extern void picochip_override_options (void);
|
|
||||||
|
|
||||||
extern int picochip_check_conditional_copy (rtx * operands);
|
extern int picochip_check_conditional_copy (rtx * operands);
|
||||||
|
|
||||||
|
|
@ -138,7 +137,7 @@ extern int picochip_flag_schedule_insns2;
|
||||||
extern void picochip_asm_output_anchor (rtx symbol);
|
extern void picochip_asm_output_anchor (rtx symbol);
|
||||||
|
|
||||||
/* Instruction set capability flags. These are initialised to the
|
/* Instruction set capability flags. These are initialised to the
|
||||||
appropriate values by picochip_override_options, once the user has
|
appropriate values by picochip_option_override, once the user has
|
||||||
selected a CPU type. */
|
selected a CPU type. */
|
||||||
extern bool picochip_has_mul_unit;
|
extern bool picochip_has_mul_unit;
|
||||||
extern bool picochip_has_mac_unit;
|
extern bool picochip_has_mac_unit;
|
||||||
|
|
|
||||||
|
|
@ -117,6 +117,8 @@ picochip_asm_named_section (const char *name,
|
||||||
|
|
||||||
static rtx picochip_static_chain (const_tree, bool);
|
static rtx picochip_static_chain (const_tree, bool);
|
||||||
|
|
||||||
|
static void picochip_option_override (void);
|
||||||
|
|
||||||
/* Lookup table mapping a register number to the earliest containing
|
/* Lookup table mapping a register number to the earliest containing
|
||||||
class. Used by REGNO_REG_CLASS. */
|
class. Used by REGNO_REG_CLASS. */
|
||||||
const enum reg_class picochip_regno_reg_class[FIRST_PSEUDO_REGISTER] =
|
const enum reg_class picochip_regno_reg_class[FIRST_PSEUDO_REGISTER] =
|
||||||
|
|
@ -301,8 +303,11 @@ static char picochip_get_vliw_alu_id (void);
|
||||||
#undef TARGET_STATIC_CHAIN
|
#undef TARGET_STATIC_CHAIN
|
||||||
#define TARGET_STATIC_CHAIN picochip_static_chain
|
#define TARGET_STATIC_CHAIN picochip_static_chain
|
||||||
|
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE picochip_option_override
|
||||||
|
|
||||||
#undef TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE
|
#undef TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE
|
||||||
#define TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE picochip_override_options
|
#define TARGET_OVERRIDE_OPTIONS_AFTER_CHANGE picochip_option_override
|
||||||
|
|
||||||
struct gcc_target targetm = TARGET_INITIALIZER;
|
struct gcc_target targetm = TARGET_INITIALIZER;
|
||||||
|
|
||||||
|
|
@ -317,9 +322,13 @@ picochip_return_in_memory(const_tree type, const_tree fntype ATTRIBUTE_UNUSED)
|
||||||
return ((unsigned HOST_WIDE_INT) int_size_in_bytes (type) > 4);
|
return ((unsigned HOST_WIDE_INT) int_size_in_bytes (type) > 4);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Allow certain command options to be overriden. */
|
/* Allow some options to be overriden. In particular, the 2nd
|
||||||
void
|
scheduling pass option is switched off, and a machine dependent
|
||||||
picochip_override_options (void)
|
reorganisation ensures that it is run later on, after the second
|
||||||
|
jump optimisation. */
|
||||||
|
|
||||||
|
static void
|
||||||
|
picochip_option_override (void)
|
||||||
{
|
{
|
||||||
/* If we are optimizing for stack, dont let inliner to inline functions
|
/* If we are optimizing for stack, dont let inliner to inline functions
|
||||||
that could potentially increase stack size.*/
|
that could potentially increase stack size.*/
|
||||||
|
|
@ -1760,7 +1769,7 @@ picochip_asm_file_start (void)
|
||||||
|
|
||||||
/* Variable tracking should be run after all optimizations which change order
|
/* Variable tracking should be run after all optimizations which change order
|
||||||
of insns. It also needs a valid CFG. This can't be done in
|
of insns. It also needs a valid CFG. This can't be done in
|
||||||
picochip_override_options, because flag_var_tracking is finalized after
|
picochip_option_override, because flag_var_tracking is finalized after
|
||||||
that. */
|
that. */
|
||||||
picochip_flag_var_tracking = flag_var_tracking;
|
picochip_flag_var_tracking = flag_var_tracking;
|
||||||
flag_var_tracking = 0;
|
flag_var_tracking = 0;
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* Definitions of target machine for GNU compiler for picoChip
|
/* Definitions of target machine for GNU compiler for picoChip
|
||||||
Copyright (C) 2001, 2008 Free Software Foundation, Inc.
|
Copyright (C) 2001, 2008, 2009, 2010 Free Software Foundation, Inc.
|
||||||
|
|
||||||
Contributed by picoChip Designs Ltd. (http://www.picochip.com)
|
Contributed by picoChip Designs Ltd. (http://www.picochip.com)
|
||||||
Maintained by Daniel Towner (daniel.towner@picochip.com) and
|
Maintained by Daniel Towner (daniel.towner@picochip.com) and
|
||||||
|
|
@ -84,12 +84,6 @@ extern enum picochip_dfa_type picochip_schedule_type;
|
||||||
#define TARGET_HAS_MAC_UNIT (picochip_has_mac_unit)
|
#define TARGET_HAS_MAC_UNIT (picochip_has_mac_unit)
|
||||||
#define TARGET_HAS_MULTIPLY (picochip_has_mac_unit || picochip_has_mul_unit)
|
#define TARGET_HAS_MULTIPLY (picochip_has_mac_unit || picochip_has_mul_unit)
|
||||||
|
|
||||||
/* Allow some options to be overriden. In particular, the 2nd
|
|
||||||
scheduling pass option is switched off, and a machine dependent
|
|
||||||
reorganisation ensures that it is run later on, after the second
|
|
||||||
jump optimisation. */
|
|
||||||
#define OVERRIDE_OPTIONS picochip_override_options()
|
|
||||||
|
|
||||||
#define CAN_DEBUG_WITHOUT_FP 1
|
#define CAN_DEBUG_WITHOUT_FP 1
|
||||||
|
|
||||||
#define TARGET_VERSION fprintf(stderr, "(picoChip)");
|
#define TARGET_VERSION fprintf(stderr, "(picoChip)");
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
/* Definitions of target machine for GNU compiler,
|
/* Definitions of target machine for GNU compiler,
|
||||||
for IBM RS/6000 POWER running AIX version 4.3.
|
for IBM RS/6000 POWER running AIX version 4.3.
|
||||||
Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006,
|
Copyright (C) 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006,
|
||||||
2007 Free Software Foundation, Inc.
|
2007, 2009, 2010 Free Software Foundation, Inc.
|
||||||
Contributed by David Edelsohn (edelsohn@gnu.org).
|
Contributed by David Edelsohn (edelsohn@gnu.org).
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
@ -20,14 +20,8 @@
|
||||||
along with GCC; see the file COPYING3. If not see
|
along with GCC; see the file COPYING3. If not see
|
||||||
<http://www.gnu.org/licenses/>. */
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
/* Sometimes certain combinations of command options do not make sense
|
/* The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to
|
||||||
on a particular target machine. You can define a macro
|
get control in TARGET_OPTION_OVERRIDE. */
|
||||||
`OVERRIDE_OPTIONS' to take account of this. This macro, if
|
|
||||||
defined, is executed once just after all the command options have
|
|
||||||
been parsed.
|
|
||||||
|
|
||||||
The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to
|
|
||||||
get control. */
|
|
||||||
|
|
||||||
#define NON_POWERPC_MASKS (MASK_POWER | MASK_POWER2)
|
#define NON_POWERPC_MASKS (MASK_POWER | MASK_POWER2)
|
||||||
#define SUBTARGET_OVERRIDE_OPTIONS \
|
#define SUBTARGET_OVERRIDE_OPTIONS \
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Definitions of target machine for GNU compiler,
|
/* Definitions of target machine for GNU compiler,
|
||||||
for IBM RS/6000 POWER running AIX V5.
|
for IBM RS/6000 POWER running AIX V5.
|
||||||
Copyright (C) 2001, 2003, 2004, 2005, 2007, 2008
|
Copyright (C) 2001, 2003, 2004, 2005, 2007, 2008, 2009, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
Contributed by David Edelsohn (edelsohn@gnu.org).
|
Contributed by David Edelsohn (edelsohn@gnu.org).
|
||||||
|
|
||||||
|
|
@ -20,14 +20,8 @@
|
||||||
along with GCC; see the file COPYING3. If not see
|
along with GCC; see the file COPYING3. If not see
|
||||||
<http://www.gnu.org/licenses/>. */
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
/* Sometimes certain combinations of command options do not make sense
|
/* The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to
|
||||||
on a particular target machine. You can define a macro
|
get control in TARGET_OPTION_OVERRIDE. */
|
||||||
`OVERRIDE_OPTIONS' to take account of this. This macro, if
|
|
||||||
defined, is executed once just after all the command options have
|
|
||||||
been parsed.
|
|
||||||
|
|
||||||
The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to
|
|
||||||
get control. */
|
|
||||||
|
|
||||||
#define NON_POWERPC_MASKS (MASK_POWER | MASK_POWER2)
|
#define NON_POWERPC_MASKS (MASK_POWER | MASK_POWER2)
|
||||||
#define SUBTARGET_OVERRIDE_OPTIONS \
|
#define SUBTARGET_OVERRIDE_OPTIONS \
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Definitions of target machine for GNU compiler,
|
/* Definitions of target machine for GNU compiler,
|
||||||
for IBM RS/6000 POWER running AIX V5.2.
|
for IBM RS/6000 POWER running AIX V5.2.
|
||||||
Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008
|
Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
Contributed by David Edelsohn (edelsohn@gnu.org).
|
Contributed by David Edelsohn (edelsohn@gnu.org).
|
||||||
|
|
||||||
|
|
@ -20,14 +20,8 @@
|
||||||
along with GCC; see the file COPYING3. If not see
|
along with GCC; see the file COPYING3. If not see
|
||||||
<http://www.gnu.org/licenses/>. */
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
/* Sometimes certain combinations of command options do not make sense
|
/* The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to
|
||||||
on a particular target machine. You can define a macro
|
get control in TARGET_OPTION_OVERRIDE. */
|
||||||
`OVERRIDE_OPTIONS' to take account of this. This macro, if
|
|
||||||
defined, is executed once just after all the command options have
|
|
||||||
been parsed.
|
|
||||||
|
|
||||||
The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to
|
|
||||||
get control. */
|
|
||||||
|
|
||||||
#define NON_POWERPC_MASKS (MASK_POWER | MASK_POWER2)
|
#define NON_POWERPC_MASKS (MASK_POWER | MASK_POWER2)
|
||||||
#define SUBTARGET_OVERRIDE_OPTIONS \
|
#define SUBTARGET_OVERRIDE_OPTIONS \
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Definitions of target machine for GNU compiler,
|
/* Definitions of target machine for GNU compiler,
|
||||||
for IBM RS/6000 POWER running AIX V5.3.
|
for IBM RS/6000 POWER running AIX V5.3.
|
||||||
Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
|
Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
Contributed by David Edelsohn (edelsohn@gnu.org).
|
Contributed by David Edelsohn (edelsohn@gnu.org).
|
||||||
|
|
||||||
|
|
@ -20,14 +20,8 @@
|
||||||
along with GCC; see the file COPYING3. If not see
|
along with GCC; see the file COPYING3. If not see
|
||||||
<http://www.gnu.org/licenses/>. */
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
/* Sometimes certain combinations of command options do not make sense
|
/* The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to
|
||||||
on a particular target machine. You can define a macro
|
get control in TARGET_OPTION_OVERRIDE. */
|
||||||
`OVERRIDE_OPTIONS' to take account of this. This macro, if
|
|
||||||
defined, is executed once just after all the command options have
|
|
||||||
been parsed.
|
|
||||||
|
|
||||||
The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to
|
|
||||||
get control. */
|
|
||||||
|
|
||||||
#define NON_POWERPC_MASKS (MASK_POWER | MASK_POWER2)
|
#define NON_POWERPC_MASKS (MASK_POWER | MASK_POWER2)
|
||||||
#define SUBTARGET_OVERRIDE_OPTIONS \
|
#define SUBTARGET_OVERRIDE_OPTIONS \
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Definitions of target machine for GNU compiler,
|
/* Definitions of target machine for GNU compiler,
|
||||||
for IBM RS/6000 POWER running AIX V6.1.
|
for IBM RS/6000 POWER running AIX V6.1.
|
||||||
Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
|
Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
Contributed by David Edelsohn (edelsohn@gnu.org).
|
Contributed by David Edelsohn (edelsohn@gnu.org).
|
||||||
|
|
||||||
|
|
@ -20,14 +20,8 @@
|
||||||
along with GCC; see the file COPYING3. If not see
|
along with GCC; see the file COPYING3. If not see
|
||||||
<http://www.gnu.org/licenses/>. */
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
/* Sometimes certain combinations of command options do not make sense
|
/* The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to
|
||||||
on a particular target machine. You can define a macro
|
get control in TARGET_OPTION_OVERRIDE. */
|
||||||
`OVERRIDE_OPTIONS' to take account of this. This macro, if
|
|
||||||
defined, is executed once just after all the command options have
|
|
||||||
been parsed.
|
|
||||||
|
|
||||||
The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to
|
|
||||||
get control. */
|
|
||||||
|
|
||||||
#define NON_POWERPC_MASKS (MASK_POWER | MASK_POWER2)
|
#define NON_POWERPC_MASKS (MASK_POWER | MASK_POWER2)
|
||||||
#define SUBTARGET_OVERRIDE_OPTIONS \
|
#define SUBTARGET_OVERRIDE_OPTIONS \
|
||||||
|
|
|
||||||
|
|
@ -162,10 +162,10 @@ extern enum rs6000_cmodel cmodel;
|
||||||
|
|
||||||
#ifdef RS6000_BI_ARCH
|
#ifdef RS6000_BI_ARCH
|
||||||
|
|
||||||
#undef OVERRIDE_OPTIONS
|
#undef OPTION_TARGET_CPU_DEFAULT
|
||||||
#define OVERRIDE_OPTIONS \
|
#define OPTION_TARGET_CPU_DEFAULT \
|
||||||
rs6000_override_options (((TARGET_DEFAULT ^ target_flags) & MASK_64BIT) \
|
(((TARGET_DEFAULT ^ target_flags) & MASK_64BIT) \
|
||||||
? (char *) 0 : TARGET_CPU_DEFAULT)
|
? (char *) 0 : TARGET_CPU_DEFAULT)
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* Definitions of target machine for GNU compiler, for IBM RS/6000.
|
/* Definitions of target machine for GNU compiler, for IBM RS/6000.
|
||||||
Copyright (C) 2002, 2003, 2004, 2007 Free Software Foundation, Inc.
|
Copyright (C) 2002, 2003, 2004, 2007, 2010 Free Software Foundation, Inc.
|
||||||
Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu)
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
@ -19,7 +19,7 @@
|
||||||
<http://www.gnu.org/licenses/>. */
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
/* 128-bit floating point. ABI_V4 uses IEEE quad, AIX/Darwin
|
/* 128-bit floating point. ABI_V4 uses IEEE quad, AIX/Darwin
|
||||||
adjust this in rs6000_override_options. */
|
adjust this in rs6000_option_override_internal. */
|
||||||
FLOAT_MODE (TF, 16, ieee_quad_format);
|
FLOAT_MODE (TF, 16, ieee_quad_format);
|
||||||
|
|
||||||
/* Add any extra modes needed to represent the condition code.
|
/* Add any extra modes needed to represent the condition code.
|
||||||
|
|
|
||||||
|
|
@ -154,7 +154,6 @@ extern enum direction function_arg_padding (enum machine_mode, const_tree);
|
||||||
#endif /* TREE_CODE */
|
#endif /* TREE_CODE */
|
||||||
|
|
||||||
extern void optimization_options (int, int);
|
extern void optimization_options (int, int);
|
||||||
extern void rs6000_override_options (const char *);
|
|
||||||
extern int direct_return (void);
|
extern int direct_return (void);
|
||||||
extern int first_reg_to_save (void);
|
extern int first_reg_to_save (void);
|
||||||
extern int first_fp_reg_to_save (void);
|
extern int first_fp_reg_to_save (void);
|
||||||
|
|
|
||||||
|
|
@ -1134,6 +1134,7 @@ static rtx altivec_expand_vec_init_builtin (tree, tree, rtx);
|
||||||
static rtx altivec_expand_vec_set_builtin (tree);
|
static rtx altivec_expand_vec_set_builtin (tree);
|
||||||
static rtx altivec_expand_vec_ext_builtin (tree, rtx);
|
static rtx altivec_expand_vec_ext_builtin (tree, rtx);
|
||||||
static int get_element_number (tree, tree);
|
static int get_element_number (tree, tree);
|
||||||
|
static void rs6000_option_override (void);
|
||||||
static bool rs6000_handle_option (size_t, const char *, int);
|
static bool rs6000_handle_option (size_t, const char *, int);
|
||||||
static void rs6000_parse_tls_size_option (void);
|
static void rs6000_parse_tls_size_option (void);
|
||||||
static void rs6000_parse_yes_no_option (const char *, const char *, int *);
|
static void rs6000_parse_yes_no_option (const char *, const char *, int *);
|
||||||
|
|
@ -1592,6 +1593,9 @@ static const struct attribute_spec rs6000_attribute_table[] =
|
||||||
#undef TARGET_HANDLE_OPTION
|
#undef TARGET_HANDLE_OPTION
|
||||||
#define TARGET_HANDLE_OPTION rs6000_handle_option
|
#define TARGET_HANDLE_OPTION rs6000_handle_option
|
||||||
|
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE rs6000_option_override
|
||||||
|
|
||||||
#undef TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION
|
#undef TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION
|
||||||
#define TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION \
|
#define TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION \
|
||||||
rs6000_builtin_vectorized_function
|
rs6000_builtin_vectorized_function
|
||||||
|
|
@ -2397,8 +2401,8 @@ darwin_rs6000_override_options (void)
|
||||||
/* Override command line options. Mostly we process the processor
|
/* Override command line options. Mostly we process the processor
|
||||||
type and sometimes adjust other TARGET_ options. */
|
type and sometimes adjust other TARGET_ options. */
|
||||||
|
|
||||||
void
|
static void
|
||||||
rs6000_override_options (const char *default_cpu)
|
rs6000_option_override_internal (const char *default_cpu)
|
||||||
{
|
{
|
||||||
size_t i, j;
|
size_t i, j;
|
||||||
struct rs6000_cpu_select *ptr;
|
struct rs6000_cpu_select *ptr;
|
||||||
|
|
@ -3230,6 +3234,15 @@ rs6000_override_options (const char *default_cpu)
|
||||||
rs6000_init_hard_regno_mode_ok ();
|
rs6000_init_hard_regno_mode_ok ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Implement TARGET_OPTION_OVERRIDE. On the RS/6000 this is used to
|
||||||
|
define the target cpu type. */
|
||||||
|
|
||||||
|
static void
|
||||||
|
rs6000_option_override (void)
|
||||||
|
{
|
||||||
|
rs6000_option_override_internal (OPTION_TARGET_CPU_DEFAULT);
|
||||||
|
}
|
||||||
|
|
||||||
/* Implement targetm.vectorize.builtin_mask_for_load. */
|
/* Implement targetm.vectorize.builtin_mask_for_load. */
|
||||||
static tree
|
static tree
|
||||||
rs6000_builtin_mask_for_load (void)
|
rs6000_builtin_mask_for_load (void)
|
||||||
|
|
@ -7558,7 +7571,7 @@ rs6000_emit_move (rtx dest, rtx source, enum machine_mode mode)
|
||||||
controls this instead of DEFAULT_ABI; V.4 targets needing backward
|
controls this instead of DEFAULT_ABI; V.4 targets needing backward
|
||||||
compatibility can change DRAFT_V4_STRUCT_RET to override the
|
compatibility can change DRAFT_V4_STRUCT_RET to override the
|
||||||
default, and -m switches get the final word. See
|
default, and -m switches get the final word. See
|
||||||
rs6000_override_options for more details.
|
rs6000_option_override_internal for more details.
|
||||||
|
|
||||||
The PPC32 SVR4 ABI uses IEEE double extended for long double, if 128-bit
|
The PPC32 SVR4 ABI uses IEEE double extended for long double, if 128-bit
|
||||||
long double support is enabled. These values are returned in memory.
|
long double support is enabled. These values are returned in memory.
|
||||||
|
|
@ -21969,7 +21982,7 @@ output_toc (FILE *file, rtx x, int labelno, enum machine_mode mode)
|
||||||
struct toc_hash_struct *h;
|
struct toc_hash_struct *h;
|
||||||
void * * found;
|
void * * found;
|
||||||
|
|
||||||
/* Create toc_hash_table. This can't be done at OVERRIDE_OPTIONS
|
/* Create toc_hash_table. This can't be done at TARGET_OPTION_OVERRIDE
|
||||||
time because GGC is not initialized at that point. */
|
time because GGC is not initialized at that point. */
|
||||||
if (toc_hash_table == NULL)
|
if (toc_hash_table == NULL)
|
||||||
toc_hash_table = htab_create_ggc (1021, toc_hash_function,
|
toc_hash_table = htab_create_ggc (1021, toc_hash_function,
|
||||||
|
|
|
||||||
|
|
@ -619,18 +619,8 @@ extern unsigned char rs6000_recip_bits[];
|
||||||
#define RS6000_RECIP_HIGH_PRECISION_P(MODE) \
|
#define RS6000_RECIP_HIGH_PRECISION_P(MODE) \
|
||||||
((MODE) == SFmode || (MODE) == V4SFmode || TARGET_RECIP_PRECISION)
|
((MODE) == SFmode || (MODE) == V4SFmode || TARGET_RECIP_PRECISION)
|
||||||
|
|
||||||
/* Sometimes certain combinations of command options do not make sense
|
/* The default CPU for TARGET_OPTION_OVERRIDE. */
|
||||||
on a particular target machine. You can define a macro
|
#define OPTION_TARGET_CPU_DEFAULT TARGET_CPU_DEFAULT
|
||||||
`OVERRIDE_OPTIONS' to take account of this. This macro, if
|
|
||||||
defined, is executed once just after all the command options have
|
|
||||||
been parsed.
|
|
||||||
|
|
||||||
Do not use this macro to turn on various extra optimizations for
|
|
||||||
`-O'. That is what `OPTIMIZATION_OPTIONS' is for.
|
|
||||||
|
|
||||||
On the RS/6000 this is used to define the target cpu type. */
|
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS rs6000_override_options (TARGET_CPU_DEFAULT)
|
|
||||||
|
|
||||||
/* Define this to change the optimizations performed by default. */
|
/* Define this to change the optimizations performed by default. */
|
||||||
#define OPTIMIZATION_OPTIONS(LEVEL,SIZE) optimization_options(LEVEL,SIZE)
|
#define OPTIMIZATION_OPTIONS(LEVEL,SIZE) optimization_options(LEVEL,SIZE)
|
||||||
|
|
|
||||||
|
|
@ -76,14 +76,8 @@ extern const char *rs6000_tls_size_string; /* For -mtls-size= */
|
||||||
|
|
||||||
#define SDATA_DEFAULT_SIZE 8
|
#define SDATA_DEFAULT_SIZE 8
|
||||||
|
|
||||||
/* Sometimes certain combinations of command options do not make sense
|
/* The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to
|
||||||
on a particular target machine. You can define a macro
|
get control in TARGET_OPTION_OVERRIDE. */
|
||||||
`OVERRIDE_OPTIONS' to take account of this. This macro, if
|
|
||||||
defined, is executed once just after all the command options have
|
|
||||||
been parsed.
|
|
||||||
|
|
||||||
The macro SUBTARGET_OVERRIDE_OPTIONS is provided for subtargets, to
|
|
||||||
get control. */
|
|
||||||
|
|
||||||
#define SUBTARGET_OVERRIDE_OPTIONS \
|
#define SUBTARGET_OVERRIDE_OPTIONS \
|
||||||
do { \
|
do { \
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* Definitions of target machine for GNU compiler, for IBM S/390.
|
/* Definitions of target machine for GNU compiler, for IBM S/390.
|
||||||
Copyright (C) 2000, 2002, 2003, 2004, 2005, 2007, 2008, 2009
|
Copyright (C) 2000, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
Contributed by Hartmut Penner (hpenner@de.ibm.com)
|
Contributed by Hartmut Penner (hpenner@de.ibm.com)
|
||||||
|
|
@ -35,7 +35,6 @@ extern bool s390_check_symref_alignment (rtx addr, HOST_WIDE_INT alignment);
|
||||||
/* Declare functions in s390.c. */
|
/* Declare functions in s390.c. */
|
||||||
|
|
||||||
extern void optimization_options (int, int);
|
extern void optimization_options (int, int);
|
||||||
extern void override_options (void);
|
|
||||||
extern HOST_WIDE_INT s390_initial_elimination_offset (int, int);
|
extern HOST_WIDE_INT s390_initial_elimination_offset (int, int);
|
||||||
extern void s390_emit_prologue (void);
|
extern void s390_emit_prologue (void);
|
||||||
extern void s390_emit_epilogue (bool);
|
extern void s390_emit_epilogue (bool);
|
||||||
|
|
|
||||||
|
|
@ -1555,8 +1555,8 @@ s390_handle_option (size_t code, const char *arg, int value ATTRIBUTE_UNUSED)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
static void
|
||||||
override_options (void)
|
s390_option_override (void)
|
||||||
{
|
{
|
||||||
/* Set up function hooks. */
|
/* Set up function hooks. */
|
||||||
init_machine_status = s390_init_machine_status;
|
init_machine_status = s390_init_machine_status;
|
||||||
|
|
@ -10423,6 +10423,9 @@ s390_loop_unroll_adjust (unsigned nunroll, struct loop *loop)
|
||||||
#undef TARGET_HANDLE_OPTION
|
#undef TARGET_HANDLE_OPTION
|
||||||
#define TARGET_HANDLE_OPTION s390_handle_option
|
#define TARGET_HANDLE_OPTION s390_handle_option
|
||||||
|
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE s390_option_override
|
||||||
|
|
||||||
#undef TARGET_ENCODE_SECTION_INFO
|
#undef TARGET_ENCODE_SECTION_INFO
|
||||||
#define TARGET_ENCODE_SECTION_INFO s390_encode_section_info
|
#define TARGET_ENCODE_SECTION_INFO s390_encode_section_info
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Definitions of target machine for GNU compiler, for IBM S/390
|
/* Definitions of target machine for GNU compiler, for IBM S/390
|
||||||
Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
|
Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
|
||||||
2007, 2008, 2009 Free Software Foundation, Inc.
|
2007, 2008, 2009, 2010 Free Software Foundation, Inc.
|
||||||
Contributed by Hartmut Penner (hpenner@de.ibm.com) and
|
Contributed by Hartmut Penner (hpenner@de.ibm.com) and
|
||||||
Ulrich Weigand (uweigand@de.ibm.com).
|
Ulrich Weigand (uweigand@de.ibm.com).
|
||||||
Andreas Krebbel (Andreas.Krebbel@de.ibm.com)
|
Andreas Krebbel (Andreas.Krebbel@de.ibm.com)
|
||||||
|
|
@ -149,9 +149,8 @@ extern int s390_arch_flags;
|
||||||
#define TARGET_VERSION fprintf (stderr, " (S/390)");
|
#define TARGET_VERSION fprintf (stderr, " (S/390)");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Hooks to override options. */
|
/* Hook to override options. */
|
||||||
#define OPTIMIZATION_OPTIONS(LEVEL, SIZE) optimization_options(LEVEL, SIZE)
|
#define OPTIMIZATION_OPTIONS(LEVEL, SIZE) optimization_options(LEVEL, SIZE)
|
||||||
#define OVERRIDE_OPTIONS override_options ()
|
|
||||||
|
|
||||||
/* Frame pointer is not used for debugging. */
|
/* Frame pointer is not used for debugging. */
|
||||||
#define CAN_DEBUG_WITHOUT_FP
|
#define CAN_DEBUG_WITHOUT_FP
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* score-protos.h for Sunplus S+CORE processor
|
/* score-protos.h for Sunplus S+CORE processor
|
||||||
Copyright (C) 2005, 2007, 2008 Free Software Foundation, Inc.
|
Copyright (C) 2005, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
||||||
|
|
@ -59,7 +59,6 @@ extern void score_init_cumulative_args (CUMULATIVE_ARGS *cum,
|
||||||
extern void score_declare_object (FILE *stream, const char *name,
|
extern void score_declare_object (FILE *stream, const char *name,
|
||||||
const char *directive, const char *fmt, ...);
|
const char *directive, const char *fmt, ...);
|
||||||
extern int score_output_external (FILE *file, tree decl, const char *name);
|
extern int score_output_external (FILE *file, tree decl, const char *name);
|
||||||
extern void score_override_options (void);
|
|
||||||
extern enum reg_class score_secondary_reload_class (enum reg_class rclass,
|
extern enum reg_class score_secondary_reload_class (enum reg_class rclass,
|
||||||
enum machine_mode mode,
|
enum machine_mode mode,
|
||||||
rtx x);
|
rtx x);
|
||||||
|
|
|
||||||
|
|
@ -51,6 +51,8 @@
|
||||||
#include "score3.h"
|
#include "score3.h"
|
||||||
#include "df.h"
|
#include "df.h"
|
||||||
|
|
||||||
|
static void score_option_override (void);
|
||||||
|
|
||||||
#undef TARGET_ASM_FILE_START
|
#undef TARGET_ASM_FILE_START
|
||||||
#define TARGET_ASM_FILE_START score_asm_file_start
|
#define TARGET_ASM_FILE_START score_asm_file_start
|
||||||
|
|
||||||
|
|
@ -67,6 +69,8 @@
|
||||||
#define TARGET_DEFAULT_TARGET_FLAGS TARGET_DEFAULT
|
#define TARGET_DEFAULT_TARGET_FLAGS TARGET_DEFAULT
|
||||||
#undef TARGET_HANDLE_OPTION
|
#undef TARGET_HANDLE_OPTION
|
||||||
#define TARGET_HANDLE_OPTION score_handle_option
|
#define TARGET_HANDLE_OPTION score_handle_option
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE score_option_override
|
||||||
|
|
||||||
#undef TARGET_LEGITIMIZE_ADDRESS
|
#undef TARGET_LEGITIMIZE_ADDRESS
|
||||||
#define TARGET_LEGITIMIZE_ADDRESS score_legitimize_address
|
#define TARGET_LEGITIMIZE_ADDRESS score_legitimize_address
|
||||||
|
|
@ -351,16 +355,16 @@ score_handle_option (size_t code, const char *arg, int value)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Implement OVERRIDE_OPTIONS macro. */
|
/* Implement TARGET_OPTION_OVERRIDE hook. */
|
||||||
void
|
static void
|
||||||
score_override_options (void)
|
score_option_override (void)
|
||||||
{
|
{
|
||||||
if (TARGET_SCORE5 || TARGET_SCORE5U || TARGET_SCORE7 || TARGET_SCORE7D)
|
if (TARGET_SCORE5 || TARGET_SCORE5U || TARGET_SCORE7 || TARGET_SCORE7D)
|
||||||
return score7_override_options ();
|
return score7_option_override ();
|
||||||
else if (TARGET_SCORE3)
|
else if (TARGET_SCORE3)
|
||||||
return score3_override_options ();
|
return score3_option_override ();
|
||||||
|
|
||||||
return score7_override_options ();
|
return score7_option_override ();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Implement REGNO_REG_CLASS macro. */
|
/* Implement REGNO_REG_CLASS macro. */
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* score.h for Sunplus S+CORE processor
|
/* score.h for Sunplus S+CORE processor
|
||||||
Copyright (C) 2005, 2007, 2008, 2009 Free Software Foundation, Inc.
|
Copyright (C) 2005, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
|
||||||
Contributed by Sunnorth.
|
Contributed by Sunnorth.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
@ -98,8 +98,6 @@
|
||||||
#define TARGET_VERSION \
|
#define TARGET_VERSION \
|
||||||
fprintf (stderr, "Sunplus S+core rev=%s", SCORE_GCC_VERSION);
|
fprintf (stderr, "Sunplus S+core rev=%s", SCORE_GCC_VERSION);
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS score_override_options ()
|
|
||||||
|
|
||||||
/* Show we can debug even without a frame pointer. */
|
/* Show we can debug even without a frame pointer. */
|
||||||
#define CAN_DEBUG_WITHOUT_FP
|
#define CAN_DEBUG_WITHOUT_FP
|
||||||
|
|
||||||
|
|
@ -235,7 +233,7 @@
|
||||||
|
|
||||||
Regarding coprocessor registers: without evidence to the contrary,
|
Regarding coprocessor registers: without evidence to the contrary,
|
||||||
it's best to assume that each coprocessor register has a unique
|
it's best to assume that each coprocessor register has a unique
|
||||||
use. This can be overridden, in, e.g., override_options() or
|
use. This can be overridden, in, e.g., TARGET_OPTION_OVERRIDE or
|
||||||
CONDITIONAL_REGISTER_USAGE should the assumption be inappropriate
|
CONDITIONAL_REGISTER_USAGE should the assumption be inappropriate
|
||||||
for a particular target. */
|
for a particular target. */
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* score3.c for Sunplus S+CORE processor
|
/* score3.c for Sunplus S+CORE processor
|
||||||
Copyright (C) 2005, 2007, 2008 Free Software Foundation, Inc.
|
Copyright (C) 2005, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
|
||||||
Contributed by Sunnorth
|
Contributed by Sunnorth
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
@ -635,9 +635,9 @@ score3_asm_file_end (void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Implement OVERRIDE_OPTIONS macro. */
|
/* Implement TARGET_OPTION_OVERRIDE hook. */
|
||||||
void
|
void
|
||||||
score3_override_options (void)
|
score3_option_override (void)
|
||||||
{
|
{
|
||||||
flag_pic = false;
|
flag_pic = false;
|
||||||
if (!flag_pic)
|
if (!flag_pic)
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* score3.h for Sunplus S+CORE processor
|
/* score3.h for Sunplus S+CORE processor
|
||||||
Copyright (C) 2005, 2007, 2008 Free Software Foundation, Inc.
|
Copyright (C) 2005, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
|
||||||
Contributed by Sunnorth
|
Contributed by Sunnorth
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
@ -90,7 +90,7 @@ extern section *score3_select_rtx_section (enum machine_mode mode, rtx x,
|
||||||
extern bool score3_in_small_data_p (tree decl);
|
extern bool score3_in_small_data_p (tree decl);
|
||||||
extern void score3_asm_file_start (void);
|
extern void score3_asm_file_start (void);
|
||||||
extern void score3_asm_file_end (void);
|
extern void score3_asm_file_end (void);
|
||||||
extern void score3_override_options (void);
|
extern void score3_option_override (void);
|
||||||
extern int score3_reg_class (int regno);
|
extern int score3_reg_class (int regno);
|
||||||
extern enum reg_class score3_preferred_reload_class (rtx x ATTRIBUTE_UNUSED,
|
extern enum reg_class score3_preferred_reload_class (rtx x ATTRIBUTE_UNUSED,
|
||||||
enum reg_class rclass);
|
enum reg_class rclass);
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* score7.c for Sunplus S+CORE processor
|
/* score7.c for Sunplus S+CORE processor
|
||||||
Copyright (C) 2005, 2007, 2008 Free Software Foundation, Inc.
|
Copyright (C) 2005, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
|
||||||
Contributed by Sunnorth
|
Contributed by Sunnorth
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
@ -634,9 +634,9 @@ score7_asm_file_end (void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Implement OVERRIDE_OPTIONS macro. */
|
/* Implement TARGET_OPTION_OVERRIDE hook. */
|
||||||
void
|
void
|
||||||
score7_override_options (void)
|
score7_option_override (void)
|
||||||
{
|
{
|
||||||
flag_pic = false;
|
flag_pic = false;
|
||||||
if (!flag_pic)
|
if (!flag_pic)
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* score7.h for Sunplus S+CORE processor
|
/* score7.h for Sunplus S+CORE processor
|
||||||
Copyright (C) 2005, 2007, 2008 Free Software Foundation, Inc.
|
Copyright (C) 2005, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
|
||||||
Contributed by Sunnorth
|
Contributed by Sunnorth
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
@ -90,7 +90,7 @@ extern section *score7_select_rtx_section (enum machine_mode mode, rtx x,
|
||||||
extern bool score7_in_small_data_p (tree decl);
|
extern bool score7_in_small_data_p (tree decl);
|
||||||
extern void score7_asm_file_start (void);
|
extern void score7_asm_file_start (void);
|
||||||
extern void score7_asm_file_end (void);
|
extern void score7_asm_file_end (void);
|
||||||
extern void score7_override_options (void);
|
extern void score7_option_override (void);
|
||||||
extern int score7_reg_class (int regno);
|
extern int score7_reg_class (int regno);
|
||||||
extern enum reg_class score7_preferred_reload_class (rtx x ATTRIBUTE_UNUSED,
|
extern enum reg_class score7_preferred_reload_class (rtx x ATTRIBUTE_UNUSED,
|
||||||
enum reg_class rclass);
|
enum reg_class rclass);
|
||||||
|
|
|
||||||
|
|
@ -331,7 +331,7 @@ static const struct attribute_spec sh_attribute_table[] =
|
||||||
#undef TARGET_ASM_UNALIGNED_SI_OP
|
#undef TARGET_ASM_UNALIGNED_SI_OP
|
||||||
#define TARGET_ASM_UNALIGNED_SI_OP "\t.ualong\t"
|
#define TARGET_ASM_UNALIGNED_SI_OP "\t.ualong\t"
|
||||||
|
|
||||||
/* These are NULLed out on non-SH5 in OVERRIDE_OPTIONS. */
|
/* These are NULLed out on non-SH5 in TARGET_OPTION_OVERRIDE. */
|
||||||
#undef TARGET_ASM_UNALIGNED_DI_OP
|
#undef TARGET_ASM_UNALIGNED_DI_OP
|
||||||
#define TARGET_ASM_UNALIGNED_DI_OP "\t.uaquad\t"
|
#define TARGET_ASM_UNALIGNED_DI_OP "\t.uaquad\t"
|
||||||
#undef TARGET_ASM_ALIGNED_DI_OP
|
#undef TARGET_ASM_ALIGNED_DI_OP
|
||||||
|
|
@ -720,7 +720,7 @@ sh_optimization_options (int level ATTRIBUTE_UNUSED, int size ATTRIBUTE_UNUSED)
|
||||||
target_flags |= MASK_SAVE_ALL_TARGET_REGS;
|
target_flags |= MASK_SAVE_ALL_TARGET_REGS;
|
||||||
}
|
}
|
||||||
/* Likewise, we can't meaningfully test TARGET_SH2E / TARGET_IEEE
|
/* Likewise, we can't meaningfully test TARGET_SH2E / TARGET_IEEE
|
||||||
here, so leave it to OVERRIDE_OPTIONS to set
|
here, so leave it to TARGET_OPTION_OVERRIDE to set
|
||||||
flag_finite_math_only. We set it to 2 here so we know if the user
|
flag_finite_math_only. We set it to 2 here so we know if the user
|
||||||
explicitly requested this to be on or off. */
|
explicitly requested this to be on or off. */
|
||||||
flag_finite_math_only = 2;
|
flag_finite_math_only = 2;
|
||||||
|
|
|
||||||
|
|
@ -349,6 +349,7 @@ static HOST_WIDE_INT frame_base_offset;
|
||||||
int sparc_indent_opcode = 0;
|
int sparc_indent_opcode = 0;
|
||||||
|
|
||||||
static bool sparc_handle_option (size_t, const char *, int);
|
static bool sparc_handle_option (size_t, const char *, int);
|
||||||
|
static void sparc_option_override (void);
|
||||||
static void sparc_init_modes (void);
|
static void sparc_init_modes (void);
|
||||||
static void scan_record_type (tree, int *, int *, int *);
|
static void scan_record_type (tree, int *, int *, int *);
|
||||||
static int function_arg_slotno (const CUMULATIVE_ARGS *, enum machine_mode,
|
static int function_arg_slotno (const CUMULATIVE_ARGS *, enum machine_mode,
|
||||||
|
|
@ -595,6 +596,8 @@ static bool fpu_option_set = false;
|
||||||
#define TARGET_DEFAULT_TARGET_FLAGS TARGET_DEFAULT
|
#define TARGET_DEFAULT_TARGET_FLAGS TARGET_DEFAULT
|
||||||
#undef TARGET_HANDLE_OPTION
|
#undef TARGET_HANDLE_OPTION
|
||||||
#define TARGET_HANDLE_OPTION sparc_handle_option
|
#define TARGET_HANDLE_OPTION sparc_handle_option
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE sparc_option_override
|
||||||
|
|
||||||
#if TARGET_GNU_TLS && defined(HAVE_AS_SPARC_UA_PCREL)
|
#if TARGET_GNU_TLS && defined(HAVE_AS_SPARC_UA_PCREL)
|
||||||
#undef TARGET_ASM_OUTPUT_DWARF_DTPREL
|
#undef TARGET_ASM_OUTPUT_DWARF_DTPREL
|
||||||
|
|
@ -651,8 +654,8 @@ sparc_handle_option (size_t code, const char *arg, int value ATTRIBUTE_UNUSED)
|
||||||
/* Validate and override various options, and do some machine dependent
|
/* Validate and override various options, and do some machine dependent
|
||||||
initialization. */
|
initialization. */
|
||||||
|
|
||||||
void
|
static void
|
||||||
sparc_override_options (void)
|
sparc_option_override (void)
|
||||||
{
|
{
|
||||||
static struct code_model {
|
static struct code_model {
|
||||||
const char *const name;
|
const char *const name;
|
||||||
|
|
@ -728,6 +731,10 @@ sparc_override_options (void)
|
||||||
const struct sparc_cpu_select *sel;
|
const struct sparc_cpu_select *sel;
|
||||||
int fpu;
|
int fpu;
|
||||||
|
|
||||||
|
#ifdef SUBTARGET_OVERRIDE_OPTIONS
|
||||||
|
SUBTARGET_OVERRIDE_OPTIONS;
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef SPARC_BI_ARCH
|
#ifndef SPARC_BI_ARCH
|
||||||
/* Check for unsupported architecture size. */
|
/* Check for unsupported architecture size. */
|
||||||
if (! TARGET_64BIT != DEFAULT_ARCH32_P)
|
if (! TARGET_64BIT != DEFAULT_ARCH32_P)
|
||||||
|
|
|
||||||
|
|
@ -499,10 +499,6 @@ extern enum cmodel sparc_cmodel;
|
||||||
|
|
||||||
/* Show we can debug even without a frame pointer. */
|
/* Show we can debug even without a frame pointer. */
|
||||||
#define CAN_DEBUG_WITHOUT_FP
|
#define CAN_DEBUG_WITHOUT_FP
|
||||||
|
|
||||||
/* Option handling. */
|
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS sparc_override_options ()
|
|
||||||
|
|
||||||
/* Mask of all CPU selection flags. */
|
/* Mask of all CPU selection flags. */
|
||||||
#define MASK_ISA \
|
#define MASK_ISA \
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Definitions of target machine for GNU compiler,
|
/* Definitions of target machine for GNU compiler,
|
||||||
for SPARC targeting the VxWorks run time environment.
|
for SPARC targeting the VxWorks run time environment.
|
||||||
Copyright (C) 2007 Free Software Foundation, Inc.
|
Copyright (C) 2007, 2010 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
||||||
|
|
@ -27,14 +27,8 @@ along with GCC; see the file COPYING3. If not see
|
||||||
} \
|
} \
|
||||||
while (0)
|
while (0)
|
||||||
|
|
||||||
#undef OVERRIDE_OPTIONS
|
#undef SUBTARGET_OVERRIDE_OPTIONS
|
||||||
#define OVERRIDE_OPTIONS \
|
#define SUBTARGET_OVERRIDE_OPTIONS VXWORKS_OVERRIDE_OPTIONS
|
||||||
do \
|
|
||||||
{ \
|
|
||||||
VXWORKS_OVERRIDE_OPTIONS; \
|
|
||||||
sparc_override_options (); \
|
|
||||||
} \
|
|
||||||
while (0)
|
|
||||||
|
|
||||||
#undef CPP_SUBTARGET_SPEC
|
#undef CPP_SUBTARGET_SPEC
|
||||||
#define CPP_SUBTARGET_SPEC VXWORKS_ADDITIONAL_CPP_SPEC
|
#define CPP_SUBTARGET_SPEC VXWORKS_ADDITIONAL_CPP_SPEC
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,6 @@
|
||||||
extern void spu_cpu_cpp_builtins (struct cpp_reader * pfile);
|
extern void spu_cpu_cpp_builtins (struct cpp_reader * pfile);
|
||||||
extern void builtin_define_std (const char *);
|
extern void builtin_define_std (const char *);
|
||||||
extern void spu_optimization_options (int level, int size);
|
extern void spu_optimization_options (int level, int size);
|
||||||
extern void spu_override_options (void);
|
|
||||||
extern void spu_c_common_override_options (void);
|
extern void spu_c_common_override_options (void);
|
||||||
extern int valid_subreg (rtx op);
|
extern int valid_subreg (rtx op);
|
||||||
extern void spu_expand_extv (rtx * ops, int unsignedp);
|
extern void spu_expand_extv (rtx * ops, int unsignedp);
|
||||||
|
|
|
||||||
|
|
@ -149,6 +149,7 @@ static struct spu_builtin_range spu_builtin_range[] = {
|
||||||
char regs_ever_allocated[FIRST_PSEUDO_REGISTER];
|
char regs_ever_allocated[FIRST_PSEUDO_REGISTER];
|
||||||
|
|
||||||
/* Prototypes and external defs. */
|
/* Prototypes and external defs. */
|
||||||
|
static void spu_option_override (void);
|
||||||
static void spu_init_builtins (void);
|
static void spu_init_builtins (void);
|
||||||
static tree spu_builtin_decl (unsigned, bool);
|
static tree spu_builtin_decl (unsigned, bool);
|
||||||
static bool spu_scalar_mode_supported_p (enum machine_mode mode);
|
static bool spu_scalar_mode_supported_p (enum machine_mode mode);
|
||||||
|
|
@ -464,6 +465,9 @@ static const struct attribute_spec spu_attribute_table[] =
|
||||||
#undef TARGET_TRAMPOLINE_INIT
|
#undef TARGET_TRAMPOLINE_INIT
|
||||||
#define TARGET_TRAMPOLINE_INIT spu_trampoline_init
|
#define TARGET_TRAMPOLINE_INIT spu_trampoline_init
|
||||||
|
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE spu_option_override
|
||||||
|
|
||||||
struct gcc_target targetm = TARGET_INITIALIZER;
|
struct gcc_target targetm = TARGET_INITIALIZER;
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
@ -477,12 +481,9 @@ spu_optimization_options (int level ATTRIBUTE_UNUSED, int size ATTRIBUTE_UNUSED)
|
||||||
flag_rename_registers = 1;
|
flag_rename_registers = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Sometimes certain combinations of command options do not make sense
|
/* Implement TARGET_OPTION_OVERRIDE. */
|
||||||
on a particular target machine. You can define a macro
|
static void
|
||||||
OVERRIDE_OPTIONS to take account of this. This macro, if defined, is
|
spu_option_override (void)
|
||||||
executed once just after all the command options have been parsed. */
|
|
||||||
void
|
|
||||||
spu_override_options (void)
|
|
||||||
{
|
{
|
||||||
/* Small loops will be unpeeled at -O3. For SPU it is more important
|
/* Small loops will be unpeeled at -O3. For SPU it is more important
|
||||||
to keep code small by default. */
|
to keep code small by default. */
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,6 @@
|
||||||
|
|
||||||
#define TARGET_VERSION fprintf (stderr, " (spu %s)", __DATE__);
|
#define TARGET_VERSION fprintf (stderr, " (spu %s)", __DATE__);
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS spu_override_options()
|
|
||||||
#define C_COMMON_OVERRIDE_OPTIONS spu_c_common_override_options()
|
#define C_COMMON_OVERRIDE_OPTIONS spu_c_common_override_options()
|
||||||
|
|
||||||
#define OPTIMIZATION_OPTIONS(level,size) \
|
#define OPTIMIZATION_OPTIONS(level,size) \
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
/* Target definitions for GNU compiler for VAX using ELF
|
/* Target definitions for GNU compiler for VAX using ELF
|
||||||
Copyright (C) 2002, 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
|
Copyright (C) 2002, 2004, 2005, 2007, 2008, 2009, 2010
|
||||||
|
Free Software Foundation, Inc.
|
||||||
Contributed by Matt Thomas <matt@3am-software.com>
|
Contributed by Matt Thomas <matt@3am-software.com>
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
@ -72,13 +73,10 @@ along with GCC; see the file COPYING3. If not see
|
||||||
#undef ASM_OUTPUT_BEFORE_CASE_LABEL
|
#undef ASM_OUTPUT_BEFORE_CASE_LABEL
|
||||||
#define ASM_OUTPUT_BEFORE_CASE_LABEL(FILE, PREFIX, NUM, TABLE)
|
#define ASM_OUTPUT_BEFORE_CASE_LABEL(FILE, PREFIX, NUM, TABLE)
|
||||||
|
|
||||||
#undef OVERRIDE_OPTIONS
|
#undef SUBTARGET_OVERRIDE_OPTIONS
|
||||||
#define OVERRIDE_OPTIONS \
|
#define SUBTARGET_OVERRIDE_OPTIONS \
|
||||||
do \
|
do \
|
||||||
{ \
|
{ \
|
||||||
/* Do generic VAX overrides. */ \
|
|
||||||
override_options (); \
|
|
||||||
\
|
|
||||||
/* Turn off function CSE if we're doing PIC. */ \
|
/* Turn off function CSE if we're doing PIC. */ \
|
||||||
if (flag_pic) \
|
if (flag_pic) \
|
||||||
flag_no_function_cse = 1; \
|
flag_no_function_cse = 1; \
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
/* Definitions of target machine for GNU compiler. VAX version.
|
/* Definitions of target machine for GNU compiler. VAX version.
|
||||||
Copyright (C) 2000, 2002, 2003, 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
|
Copyright (C) 2000, 2002, 2003, 2004, 2005, 2007, 2009, 2010
|
||||||
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
||||||
|
|
@ -17,8 +18,6 @@ You should have received a copy of the GNU General Public License
|
||||||
along with GCC; see the file COPYING3. If not see
|
along with GCC; see the file COPYING3. If not see
|
||||||
<http://www.gnu.org/licenses/>. */
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
extern void override_options (void);
|
|
||||||
|
|
||||||
extern bool legitimate_constant_address_p (rtx);
|
extern bool legitimate_constant_address_p (rtx);
|
||||||
extern bool legitimate_constant_p (rtx);
|
extern bool legitimate_constant_p (rtx);
|
||||||
extern bool vax_mode_dependent_address_p (rtx);
|
extern bool vax_mode_dependent_address_p (rtx);
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Subroutines for insn-output.c for VAX.
|
/* Subroutines for insn-output.c for VAX.
|
||||||
Copyright (C) 1987, 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2002,
|
Copyright (C) 1987, 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2002,
|
||||||
2004, 2005, 2006, 2007, 2008, 2009
|
2004, 2005, 2006, 2007, 2008, 2009, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
@ -46,6 +46,7 @@ along with GCC; see the file COPYING3. If not see
|
||||||
#include "target.h"
|
#include "target.h"
|
||||||
#include "target-def.h"
|
#include "target-def.h"
|
||||||
|
|
||||||
|
static void vax_option_override (void);
|
||||||
static bool vax_legitimate_address_p (enum machine_mode, rtx, bool);
|
static bool vax_legitimate_address_p (enum machine_mode, rtx, bool);
|
||||||
static void vax_output_function_prologue (FILE *, HOST_WIDE_INT);
|
static void vax_output_function_prologue (FILE *, HOST_WIDE_INT);
|
||||||
static void vax_file_start (void);
|
static void vax_file_start (void);
|
||||||
|
|
@ -111,16 +112,23 @@ static int vax_return_pops_args (tree, tree, int);
|
||||||
#undef TARGET_RETURN_POPS_ARGS
|
#undef TARGET_RETURN_POPS_ARGS
|
||||||
#define TARGET_RETURN_POPS_ARGS vax_return_pops_args
|
#define TARGET_RETURN_POPS_ARGS vax_return_pops_args
|
||||||
|
|
||||||
|
#undef TARGET_OPTION_OVERRIDE
|
||||||
|
#define TARGET_OPTION_OVERRIDE vax_option_override
|
||||||
|
|
||||||
struct gcc_target targetm = TARGET_INITIALIZER;
|
struct gcc_target targetm = TARGET_INITIALIZER;
|
||||||
|
|
||||||
/* Set global variables as needed for the options enabled. */
|
/* Set global variables as needed for the options enabled. */
|
||||||
|
|
||||||
void
|
static void
|
||||||
override_options (void)
|
vax_option_override (void)
|
||||||
{
|
{
|
||||||
/* We're VAX floating point, not IEEE floating point. */
|
/* We're VAX floating point, not IEEE floating point. */
|
||||||
if (TARGET_G_FLOAT)
|
if (TARGET_G_FLOAT)
|
||||||
REAL_MODE_FORMAT (DFmode) = &vax_g_format;
|
REAL_MODE_FORMAT (DFmode) = &vax_g_format;
|
||||||
|
|
||||||
|
#ifdef SUBTARGET_OVERRIDE_OPTIONS
|
||||||
|
SUBTARGET_OVERRIDE_OPTIONS;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Generate the assembly code for function entry. FILE is a stdio
|
/* Generate the assembly code for function entry. FILE is a stdio
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
/* Definitions of target machine for GNU compiler. VAX version.
|
/* Definitions of target machine for GNU compiler. VAX version.
|
||||||
Copyright (C) 1987, 1988, 1991, 1993, 1994, 1995, 1996, 1997, 1998,
|
Copyright (C) 1987, 1988, 1991, 1993, 1994, 1995, 1996, 1997, 1998,
|
||||||
1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009
|
1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GCC.
|
This file is part of GCC.
|
||||||
|
|
@ -72,8 +72,6 @@ along with GCC; see the file COPYING3. If not see
|
||||||
#define TARGET_DEFAULT (MASK_UNIX_ASM)
|
#define TARGET_DEFAULT (MASK_UNIX_ASM)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define OVERRIDE_OPTIONS override_options ()
|
|
||||||
|
|
||||||
|
|
||||||
/* Target machine storage layout */
|
/* Target machine storage layout */
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* Common VxWorks target definitions for GNU compiler.
|
/* Common VxWorks target definitions for GNU compiler.
|
||||||
Copyright (C) 2007, 2008
|
Copyright (C) 2007, 2008, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
Contributed by CodeSourcery, Inc.
|
Contributed by CodeSourcery, Inc.
|
||||||
|
|
||||||
|
|
@ -120,7 +120,7 @@ vxworks_emutls_var_init (tree var, tree decl, tree tmpl_addr)
|
||||||
return build_constructor (type, v);
|
return build_constructor (type, v);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Do VxWorks-specific parts of OVERRIDE_OPTIONS. */
|
/* Do VxWorks-specific parts of TARGET_OPTION_OVERRIDE. */
|
||||||
|
|
||||||
void
|
void
|
||||||
vxworks_override_options (void)
|
vxworks_override_options (void)
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* Common VxWorks target definitions for GNU compiler.
|
/* Common VxWorks target definitions for GNU compiler.
|
||||||
Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007
|
Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, 2010
|
||||||
Free Software Foundation, Inc.
|
Free Software Foundation, Inc.
|
||||||
Contributed by Wind River Systems.
|
Contributed by Wind River Systems.
|
||||||
Rewritten by CodeSourcery, LLC.
|
Rewritten by CodeSourcery, LLC.
|
||||||
|
|
@ -84,7 +84,7 @@ along with GCC; see the file COPYING3. If not see
|
||||||
#define VXWORKS_STARTFILE_SPEC "%{mrtp:%{!shared:-l:crt0.o}}"
|
#define VXWORKS_STARTFILE_SPEC "%{mrtp:%{!shared:-l:crt0.o}}"
|
||||||
#define VXWORKS_ENDFILE_SPEC ""
|
#define VXWORKS_ENDFILE_SPEC ""
|
||||||
|
|
||||||
/* Do VxWorks-specific parts of OVERRIDE_OPTIONS. */
|
/* Do VxWorks-specific parts of TARGET_OPTION_OVERRIDE. */
|
||||||
#undef VXWORKS_OVERRIDE_OPTIONS
|
#undef VXWORKS_OVERRIDE_OPTIONS
|
||||||
#define VXWORKS_OVERRIDE_OPTIONS vxworks_override_options ()
|
#define VXWORKS_OVERRIDE_OPTIONS vxworks_override_options ()
|
||||||
extern void vxworks_override_options (void);
|
extern void vxworks_override_options (void);
|
||||||
|
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue