diff options
author | Vladimir Makarov <vmakarov@redhat.com> | 2016-11-10 17:04:31 +0000 |
---|---|---|
committer | Vladimir Makarov <vmakarov@gcc.gnu.org> | 2016-11-10 17:04:31 +0000 |
commit | e93f30a65fdca10d8881fe1a462eca347b5f58b2 (patch) | |
tree | cba95c2cc570e9520f81b488fc88cce5f8c0814f /gcc/doc | |
parent | 0569479efa2b65ce9e08e24d452d0619d60afd95 (diff) | |
download | gcc-e93f30a65fdca10d8881fe1a462eca347b5f58b2.zip gcc-e93f30a65fdca10d8881fe1a462eca347b5f58b2.tar.gz gcc-e93f30a65fdca10d8881fe1a462eca347b5f58b2.tar.bz2 |
target.def (additional_allocno_class_p): New.
2016-11-10 Vladimir Makarov <vmakarov@redhat.com>
* target.def (additional_allocno_class_p): New.
* hooks.h (hook_bool_reg_class_t_false): New prototype.
* hooks.c (hook_bool_reg_class_t_false): New.
* ira.c (setup_allocno_and_important_classes): Use the new hook.
* doc/tm.texi.in (TARGET_ADDITIONAL_ALLOCNO_CLASS_P): Add it.
* doc/tm.texi: Update.
From-SVN: r242043
Diffstat (limited to 'gcc/doc')
-rw-r--r-- | gcc/doc/tm.texi | 4 | ||||
-rw-r--r-- | gcc/doc/tm.texi.in | 2 |
2 files changed, 6 insertions, 0 deletions
diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi index 81c63b7..85341ae 100644 --- a/gcc/doc/tm.texi +++ b/gcc/doc/tm.texi @@ -2899,6 +2899,10 @@ addressing. This hook defines a class of registers which could be used for spilling pseudos of the given mode and class, or @code{NO_REGS} if only memory should be used. Not defining this hook is equivalent to returning @code{NO_REGS} for all inputs. @end deftypefn +@deftypefn {Target Hook} bool TARGET_ADDITIONAL_ALLOCNO_CLASS_P (reg_class_t) +This hook should return @code{true} if given class of registers should be an allocno class in any way. Usually RA uses only one register class from all classes containing the same register set. In some complicated cases, you need to have two or more such classes as allocno ones for RA correct work. Not defining this hook is equivalent to returning @code{false} for all inputs. +@end deftypefn + @deftypefn {Target Hook} machine_mode TARGET_CSTORE_MODE (enum insn_code @var{icode}) This hook defines the machine mode to use for the boolean result of conditional store patterns. The ICODE argument is the instruction code for the cstore being performed. Not definiting this hook is the same as accepting the mode encoded into operand 0 of the cstore expander patterns. @end deftypefn diff --git a/gcc/doc/tm.texi.in b/gcc/doc/tm.texi.in index 74e9200..400d574 100644 --- a/gcc/doc/tm.texi.in +++ b/gcc/doc/tm.texi.in @@ -2507,6 +2507,8 @@ value that the middle-end intended. @hook TARGET_SPILL_CLASS +@hook TARGET_ADDITIONAL_ALLOCNO_CLASS_P + @hook TARGET_CSTORE_MODE @hook TARGET_COMPUTE_PRESSURE_CLASSES |