OSDN Git Service

* target.h (struct gcc_target): Add frame_pointer_required field.
authoraesok <aesok@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 29 Jun 2009 22:51:04 +0000 (22:51 +0000)
committeraesok <aesok@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 29 Jun 2009 22:51:04 +0000 (22:51 +0000)
commit5a1c68c319e09fab3a9288938bc1844bd19f8f66
tree0f2937085f496ccc9d16a12f644463d2113bf657
parent275b769bf477e9dd3d9b7a9855a8919c40d503bb
* target.h (struct gcc_target): Add frame_pointer_required field.
* target-def.h (TARGET_FRAME_POINTER_REQUIRED): New.
(TARGET_INITIALIZER): Use TARGET_FRAME_POINTER_REQUIRED.
* ira.c (setup_eliminable_regset): Use frame_pointer_required target
hook.
* reload1.c (update_eliminables): (Ditto.).
* gcc/system.h (FRAME_POINTER_REQUIRED): Poison.
* doc/tm.texi (FRAME_POINTER_REQUIRED): Revise documentation.
(INITIAL_FRAME_POINTER_OFFSET): (Ditto.).

* config/arc/arc.h (FRAME_POINTER_REQUIRED): Remove macro.

* config/arm/arm.h (FRAME_POINTER_REQUIRED): Remove macro.
* config/arm/arm.c (TARGET_FRAME_POINTER_REQUIRED): Define.
(arm_frame_pointer_required): New function.

* config/avr/avr.h (FRAME_POINTER_REQUIRED): Remove macro.
* config/avr/avr.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
(avr_frame_pointer_required_p): Declare as static.
* config/avr/avr-protos.h (avr_frame_pointer_required_p): Remove.

* config/bfin/bfin.h (FRAME_POINTER_REQUIRED): Remove macro.
* config/bfin/bfin.c (TARGET_FRAME_POINTER_REQUIRED): Define.
(bfin_frame_pointer_required): Make as static, change return type
to bool.
* config/bfin/bfin-protos.h (bfin_frame_pointer_required): Remove.

* config/cris/cris.h (FRAME_POINTER_REQUIRED): Remove macro.
* config/cris/cris.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
(cris_frame_pointer_required): New function.

* config/crx/crx.h (FRAME_POINTER_REQUIRED): Remove macro.

* config/fr30/fr30.h (FRAME_POINTER_REQUIRED): Remove macro.
* config/fr30/fr30.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
(fr30_frame_pointer_required): New function.

* config/frv/frv.h (FRAME_POINTER_REQUIRED): Remove macro.
* config/frv/frv.c (TARGET_FRAME_POINTER_REQUIRED): Define.
(frv_frame_pointer_required): Make as static, change return type
to bool.
* config/bfin/bfin-protos.h (frv_frame_pointer_required): Remove.

* config/i386/i386.h (FRAME_POINTER_REQUIRED): Remove macro.
* config/i386/i386.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
(ix86_frame_pointer_required): Make as static, change return type to
bool.
* config/i386/i386-protos.h (ix86_frame_pointer_required): Remove.

* config/m32c/m32c.h (FRAME_POINTER_REQUIRED): Remove macro.
* config/m32c/m32c.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.

* config/m32r/m32r.h (FRAME_POINTER_REQUIRED): Remove macro.

* config/mcore/mcore.h (CAN_ELIMINATE): Remove macro.

* config/mep/mep.h (FRAME_POINTER_REQUIRED): Remove macro.

* config/mips/mips.h (FRAME_POINTER_REQUIRED): Remove macro.
* config/mips/mips.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
(mips_frame_pointer_required): Make as static.
* config/mips/mips-protos.h (mips_frame_pointer_required): Remove.

* config/mmix/mmix.h (FRAME_POINTER_REQUIRED): Remove macro.
* config/mmix/mmix.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
(mmix_frame_pointer_required): Mew function.

* config/moxie/moxie.h (FRAME_POINTER_REQUIRED): Remove macro.
* config/moxie/moxie.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.

* config/pa/pa.h (FRAME_POINTER_REQUIRED): Remove macro.

* config/score/score.h (FRAME_POINTER_REQUIRED): Remove macro.

* config/sh/sh.h (CAN_ELIMINATE): Remove macro.

* config/sparc/sparc.h (FRAME_POINTER_REQUIRED): Remove macro.
(CAN_ELIMINATE): Redefine.
* config/sparc/sparc.c (TARGET_FRAME_POINTER_REQUIRED): Define macro.
(sparc_frame_pointer_required): New function.
(sparc_can_eliminate): New function.
* config/sparc/sparc-protos.h (sparc_can_eliminate): Declare.

* config/vax/vax.h (FRAME_POINTER_REQUIRED): Remove macro.
* config/vax/vax.c (TARGET_FRAME_POINTER_REQUIRED): Define.

* config/xtensa/xtensa.h (FRAME_POINTER_REQUIRED): Remove macro.
* config/xtensa/xtensa.c (TARGET_FRAME_POINTER_REQUIRED): Define.
(xtensa_frame_pointer_required): Make as static, change return type
to bool.
* config/xtensa/xtensa-protos.h (xtensa_frame_pointer_required):
Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@149065 138bc75d-0d04-0410-961f-82ee72b054a4
51 files changed:
gcc/ChangeLog
gcc/config/arc/arc.h
gcc/config/arm/arm.c
gcc/config/arm/arm.h
gcc/config/avr/avr-protos.h
gcc/config/avr/avr.c
gcc/config/avr/avr.h
gcc/config/bfin/bfin-protos.h
gcc/config/bfin/bfin.c
gcc/config/bfin/bfin.h
gcc/config/cris/cris.c
gcc/config/cris/cris.h
gcc/config/crx/crx.h
gcc/config/fr30/fr30.c
gcc/config/fr30/fr30.h
gcc/config/frv/frv-protos.h
gcc/config/frv/frv.c
gcc/config/frv/frv.h
gcc/config/i386/i386-protos.h
gcc/config/i386/i386.c
gcc/config/i386/i386.h
gcc/config/m32c/m32c.c
gcc/config/m32c/m32c.h
gcc/config/m32r/m32r.h
gcc/config/mcore/mcore.h
gcc/config/mep/mep.h
gcc/config/mips/mips-protos.h
gcc/config/mips/mips.c
gcc/config/mips/mips.h
gcc/config/mmix/mmix.c
gcc/config/mmix/mmix.h
gcc/config/moxie/moxie.c
gcc/config/moxie/moxie.h
gcc/config/pa/pa.h
gcc/config/score/score.h
gcc/config/sh/sh.h
gcc/config/sparc/sparc-protos.h
gcc/config/sparc/sparc.c
gcc/config/sparc/sparc.h
gcc/config/vax/vax.c
gcc/config/vax/vax.h
gcc/config/xtensa/xtensa-protos.h
gcc/config/xtensa/xtensa.c
gcc/config/xtensa/xtensa.h
gcc/defaults.h
gcc/doc/tm.texi
gcc/ira.c
gcc/reload1.c
gcc/system.h
gcc/target-def.h
gcc/target.h