diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-06-20 17:30:05 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-06-20 17:30:05 +0000 |
commit | e26dbf6d528736a8db78916c975a5068eae282dc (patch) | |
tree | 73514e4f64d84936d90b75c8a73e6fd5958b4ab8 /gcc/target.h | |
parent | d19a6ea01fb5f35c0e3d9fb5b6b7fa3d9d119e5b (diff) | |
download | gcc-e26dbf6d528736a8db78916c975a5068eae282dc.tar.gz |
* hooks.c (hook_int_void_no_regs): Rename from
hook_reg_class_void_no_regs; change return type.
* hooks.h: Update.
* target-def.h (TARGET_BRANCH_TARGET_REGISTER_CLASS): Update.
* target.h (branch_target_register_class): Change return type to int.
Add documentation.
* config/sh/sh.c (sh_target_reg_class): Change return type.
* doc/tm.texi (TARGET_BRANCH_TARGET_REGISTER_CLASS): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68275 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/target.h')
-rw-r--r-- | gcc/target.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/gcc/target.h b/gcc/target.h index 4ba369d7d3e..f693868eb57 100644 --- a/gcc/target.h +++ b/gcc/target.h @@ -296,8 +296,15 @@ struct gcc_target not, at the current point in the compilation. */ bool (* cannot_modify_jumps_p) PARAMS ((void)); - enum reg_class (* branch_target_register_class) PARAMS ((void)); - bool (* branch_target_register_callee_saved) PARAMS ((bool)); + /* Return a register class for which branch target register + optimizations should be applied. */ + int (* branch_target_register_class) PARAMS ((void)); + + /* Return true if branch target register optimizations should include + callee-saved registers that are not already live during the current + function. AFTER_PE_GEN is true if prologues and epilogues have + already been generated. */ + bool (* branch_target_register_callee_saved) PARAMS ((bool after_pe_gen)); /* True if the constant X cannot be placed in the constant pool. */ bool (* cannot_force_const_mem) PARAMS ((rtx)); |