diff options
author | Richard Sandiford <rdsandiford@googlemail.com> | 2010-07-12 18:54:17 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2010-07-12 18:54:17 +0000 |
commit | bcbaaba1a33590a2795a9e49228943466e360315 (patch) | |
tree | 5eb3ab86331c6edc711e274c6b449087603a4829 /gcc/caller-save.c | |
parent | 462f85cedc8375e893fd1179f5ecab498085c78d (diff) | |
download | gcc-bcbaaba1a33590a2795a9e49228943466e360315.zip gcc-bcbaaba1a33590a2795a9e49228943466e360315.tar.gz gcc-bcbaaba1a33590a2795a9e49228943466e360315.tar.bz2 |
defaults.h (MAX_MOVE_MAX, [...]): Define if not defined.
gcc/
* defaults.h (MAX_MOVE_MAX, MIN_UNITS_PER_WORD): Define if not defined.
* libgcc2.c (MIN_UNITS_PER_WORD): Delete.
* hard-reg-set.h (target_hard_regs): Add x_no_caller_save_reg_set.
(no_caller_save_reg_set): Redefine as a macro.
* reload.h (target_reload): Add x_caller_save_initialized_p and
x_regno_save_mode.
(caller_save_initialized_p): Redefine as a macro.
* caller-save.c (caller_save_initialized_p, no_caller_save_reg_set)
(MAX_MOVE_MAX, MIN_UNITS_PER_WORD): Delete.
(regno_save_mode): Redefine as a macro.
From-SVN: r162095
Diffstat (limited to 'gcc/caller-save.c')
-rw-r--r-- | gcc/caller-save.c | 24 |
1 files changed, 2 insertions, 22 deletions
diff --git a/gcc/caller-save.c b/gcc/caller-save.c index 996bb9b..3bd41f2 100644 --- a/gcc/caller-save.c +++ b/gcc/caller-save.c @@ -41,30 +41,10 @@ along with GCC; see the file COPYING3. If not see #include "output.h" #include "ggc.h" -/* True if caller-save has been initialized. */ -bool caller_save_initialized_p; - -/* Call used hard registers which can not be saved because there is no - insn for this. */ -HARD_REG_SET no_caller_save_reg_set; - -#ifndef MAX_MOVE_MAX -#define MAX_MOVE_MAX MOVE_MAX -#endif - -#ifndef MIN_UNITS_PER_WORD -#define MIN_UNITS_PER_WORD UNITS_PER_WORD -#endif - #define MOVE_MAX_WORDS (MOVE_MAX / UNITS_PER_WORD) -/* Modes for each hard register that we can save. The smallest mode is wide - enough to save the entire contents of the register. When saving the - register because it is live we first try to save in multi-register modes. - If that is not possible the save is done one register at a time. */ - -static enum machine_mode - regno_save_mode[FIRST_PSEUDO_REGISTER][MAX_MOVE_MAX / MIN_UNITS_PER_WORD + 1]; +#define regno_save_mode \ + (this_target_reload->x_regno_save_mode) /* For each hard register, a place on the stack where it can be saved, if needed. */ |