This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [GCC][AArch64] [middle-end][docs] Document the xorsign optab
- From: Sandra Loosemore <sandra at codesourcery dot com>
- To: Tamar Christina <Tamar dot Christina at arm dot com>, "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>
- Cc: nd <nd at arm dot com>, James Greenhalgh <James dot Greenhalgh at arm dot com>, Richard Earnshaw <Richard dot Earnshaw at arm dot com>, Marcus Shawcroft <Marcus dot Shawcroft at arm dot com>, "joseph at codesourcery dot com" <joseph at codesourcery dot com>
- Date: Sun, 11 Nov 2018 16:25:07 -0700
- Subject: Re: [GCC][AArch64] [middle-end][docs] Document the xorsign optab
- References: <20181111101421.GA3784@arm.com>
On 11/11/18 3:14 AM, Tamar Christina wrote:
Hi All,
This patch just adds documentation for the xorsign optab that was added a while ago.
Ok for trunk?
+@cindex @code{xorsign@var{m}3} instruction pattern
+@item @samp{xorsign@var{m}3}
+Target suppports an efficient expansion of x * copysign (1.0, y)
+as xorsign (x, y). Store a value with the magnitude of operand 1
+and the sign of operand 2 into operand 0. All operands have mode
+@var{m}, which is a scalar or vector floating-point mode.
+
+This pattern is not allowed to @code{FAIL}.
+
Hmmm, needs markup, plus it's a little confusing. How about describing
it as
Equivalent to @samp{op0 = op1 * copysign (1.0, op2)}: store a value with
the magnitude of operand 1 and the sign of operand 2 into operand 0.
All operands have mode @var{m}, which is a scalar or vector
floating-point mode.
This pattern is not allowed to @code{FAIL}.
-Sandra