doc: Document TARGET_TRULY_NOOP_TRUNCATION requires trunc?i?i2 patterns.

2020-07-16  Roger Sayle  <roger@nextmovesoftware.com>

gcc/ChangeLog:
	* target.def (TARGET_TRULY_NOOP_TRUNCATION): Clarify that
	targets that return false, indicating SUBREGs shouldn't be
	used, also need to provide a trunc?i?i2 optab that performs this
	truncation.
	* doc/tm.texi: Regenerate.
This commit is contained in:
Roger Sayle 2020-07-16 11:47:47 +01:00
parent 135c02769b
commit 5abe0d81db
2 changed files with 6 additions and 2 deletions

View File

@ -11122,7 +11122,9 @@ This hook returns true if it is safe to ``convert'' a value of
@var{inprec} bits to one of @var{outprec} bits (where @var{outprec} is
smaller than @var{inprec}) by merely operating on it as if it had only
@var{outprec} bits. The default returns true unconditionally, which
is correct for most machines.
is correct for most machines. When @code{TARGET_TRULY_NOOP_TRUNCATION}
returns false, the machine description should provide a @code{trunc}
optab to specify the RTL that performs the required truncation.
If @code{TARGET_MODES_TIEABLE_P} returns false for a pair of modes,
suboptimal code can result if this hook returns true for the corresponding

View File

@ -3148,7 +3148,9 @@ DEFHOOK
@var{inprec} bits to one of @var{outprec} bits (where @var{outprec} is\n\
smaller than @var{inprec}) by merely operating on it as if it had only\n\
@var{outprec} bits. The default returns true unconditionally, which\n\
is correct for most machines.\n\
is correct for most machines. When @code{TARGET_TRULY_NOOP_TRUNCATION}\n\
returns false, the machine description should provide a @code{trunc}\n\
optab to specify the RTL that performs the required truncation.\n\
\n\
If @code{TARGET_MODES_TIEABLE_P} returns false for a pair of modes,\n\
suboptimal code can result if this hook returns true for the corresponding\n\