diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2015-10-21 09:49:13 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2015-10-21 09:49:13 +0000 |
commit | 5d3498b4e03cbd1639cff5d1b19515393b0009b5 (patch) | |
tree | e80a9f5011fa7ceae0d53ca58e953a84f6c350b4 /gcc/tree.c | |
parent | dc3cf66b06e1357d69e5ad9293449369064f254e (diff) | |
download | gcc-5d3498b4e03cbd1639cff5d1b19515393b0009b5.zip gcc-5d3498b4e03cbd1639cff5d1b19515393b0009b5.tar.gz gcc-5d3498b4e03cbd1639cff5d1b19515393b0009b5.tar.bz2 |
Add simple sign-stripping cases to match.pd
This patch makes sure that, for every simplification that uses
fold_strip_sign_ops, there are associated match.pd rules for the
leaf sign ops, i.e. abs, negate and copysign. A follow-on patch
will add a pass to handle more complex cases.
Tested on x86_64-linux-gnu, aarch64-linux-gnu and arm-linux-gnueabi.
gcc/
* match.pd: Add rules to simplify ccos, ccosh, hypot, copysign
and x*x in cases where the operands are sign ops. Extend these
rules to handle copysign as a sign op (including for cos, cosh
and pow, which already treated negate and abs as sign ops).
From-SVN: r229123
Diffstat (limited to 'gcc/tree.c')
0 files changed, 0 insertions, 0 deletions