[PATCH][GCC][mid-end] Fix single use requirement for xorsign (x * copysign (1, y))

Tamar Christina tamar.christina@arm.com
Tue Aug 22 17:07:00 GMT 2017


Hi All,

This patch fixes the placement of the single-use requirement for xorsign.

on `x = a * copysign (1, b)` the intention was that `copysign (1, b)` be
single use, and not `x`. Requiring `x` to be single use blocks transformation
where we do want it to occur.

Regtested on aarch64-none-linux-gnu and no regressions
(only target currently supporting this).

Ok for trunk?

gcc/
2017-08-22  Tamar Christina  <tamar.christina@arm.com>

	PR middle-end/19706
	* tree-ssa-math-opts.c (convert_expand_mult_copysign):
	Fix single-use check.

-- 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 8060-diff.patch
Type: text/x-diff
Size: 1034 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20170822/35a269a5/attachment.bin>


More information about the Gcc-patches mailing list