Allow back-ends to be able to do custom validations on params.
authorTamar Christina <tamar.christina@arm.com>
Mon, 1 Oct 2018 13:06:53 +0000 (13:06 +0000)
committerTamar Christina <tnfchris@gcc.gnu.org>
Mon, 1 Oct 2018 13:06:53 +0000 (13:06 +0000)
commit03ced4ab9f729cc4d5854439f136d84d1343b32d
treea8052683671f592c9b2edb6f58685170c945b8bd
parentc98f502f0ab9e51357665d7afcad724feee6088b
Allow back-ends to be able to do custom validations on params.

This patch adds the ability for backends to add custom constrains to the param
values by defining a new hook option_validate_param.

This hook is invoked on every set_param_value which allows the back-end to
ensure that the parameters are always within it's desired state.

gcc/

* params.c (set_param_value):
Add index of parameter being validated.
* common/common-target.def (option_validate_param): New.
* common/common-targhooks.h (default_option_validate_param): New.
* common/common-targhooks.c (default_option_validate_param): New.
* doc/tm.texi.in (TARGET_OPTION_VALIDATE_PARAM): New.
* doc/tm.texi: Regenerate.

From-SVN: r264755
gcc/ChangeLog
gcc/common/common-target.def
gcc/common/common-targhooks.c
gcc/common/common-targhooks.h
gcc/doc/tm.texi
gcc/doc/tm.texi.in
gcc/params.c