diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2015-10-22 08:27:04 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2015-10-22 08:27:04 +0000 |
commit | 92c52eab974ce9e1c81d770724adb56846bcaa4b (patch) | |
tree | 84842493f9d814e607d6df00c0278469f3159f10 /gcc/tree.h | |
parent | 7477de01a8c9c4f496d6f4daea90255ec0aad272 (diff) | |
download | gcc-92c52eab974ce9e1c81d770724adb56846bcaa4b.zip gcc-92c52eab974ce9e1c81d770724adb56846bcaa4b.tar.gz gcc-92c52eab974ce9e1c81d770724adb56846bcaa4b.tar.bz2 |
Move more cproj simplifications to match.pd
Also make build_complex_cproj available globally and use
it for the existing match.pd rules.
Tested on x86_64-linux-gnu, aarch64-linux-gnu and arm-linux-gnueabi.
gcc/
* builtins.c (fold_builtin_cproj): Delete.
(fold_builtin_1): Handle constant arguments here.
(build_complex_cproj): Move and rename to...
* tree.c: (build_complex_inf): ...this.
* tree.h (build_complex_inf): Declare.
* match.pd: Fold cproj(x)->x if x has no infinity.
Use build_complex_inf for existing cproj rules.
From-SVN: r229164
Diffstat (limited to 'gcc/tree.h')
-rw-r--r-- | gcc/tree.h | 1 |
1 files changed, 1 insertions, 0 deletions
@@ -3853,6 +3853,7 @@ extern tree build_constructor_from_list (tree, tree); extern tree build_constructor_va (tree, int, ...); extern tree build_real_from_int_cst (tree, const_tree); extern tree build_complex (tree, tree, tree); +extern tree build_complex_inf (tree, bool); extern tree build_each_one_cst (tree); extern tree build_one_cst (tree); extern tree build_minus_one_cst (tree); |