aboutsummaryrefslogtreecommitdiff
path: root/gcc/fold-const.cc
diff options
context:
space:
mode:
authorJennifer Schmitz <jschmitz@nvidia.com>2024-08-30 07:16:43 -0700
committerJennifer Schmitz <jschmitz@nvidia.com>2024-09-03 09:24:15 +0200
commit6b1cf59e90d3d6391d61b2a8f77856b5aa044014 (patch)
tree0fccc9a8b943721411da9fa6ca8474538ca632de /gcc/fold-const.cc
parentee8b7231b03a36dfc09d94f2b663636ca2a36daf (diff)
downloadgcc-6b1cf59e90d3d6391d61b2a8f77856b5aa044014.zip
gcc-6b1cf59e90d3d6391d61b2a8f77856b5aa044014.tar.gz
gcc-6b1cf59e90d3d6391d61b2a8f77856b5aa044014.tar.bz2
SVE intrinsics: Fold constant operands for svmul.
This patch implements constant folding for svmul by calling gimple_folder::fold_const_binary with tree_code MULT_EXPR. Tests were added to check the produced assembly for different predicates, signed and unsigned integers, and the svmul_n_* case. The patch was bootstrapped and regtested on aarch64-linux-gnu, no regression. OK for mainline? Signed-off-by: Jennifer Schmitz <jschmitz@nvidia.com> gcc/ * config/aarch64/aarch64-sve-builtins-base.cc (svmul_impl::fold): Try constant folding. gcc/testsuite/ * gcc.target/aarch64/sve/const_fold_mul_1.c: New test.
Diffstat (limited to 'gcc/fold-const.cc')
0 files changed, 0 insertions, 0 deletions