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/target.def | |
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/target.def')
-rw-r--r-- | gcc/target.def | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gcc/target.def b/gcc/target.def index bcdbc0e..caeeff9 100644 --- a/gcc/target.def +++ b/gcc/target.def @@ -5029,6 +5029,18 @@ DEFHOOK reg_class_t, (reg_class_t, machine_mode), NULL) +/* Determine an additional allocno class. */ +DEFHOOK +(additional_allocno_class_p, + "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.", + bool, (reg_class_t), + hook_bool_reg_class_t_false) + DEFHOOK (cstore_mode, "This hook defines the machine mode to use for the boolean result of\ |