diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2022-06-13 15:24:34 +0100 |
---|---|---|
committer | Richard Sandiford <richard.sandiford@arm.com> | 2022-06-13 15:24:34 +0100 |
commit | 1d205dbac1e1754c01c22a31bd1688126545401e (patch) | |
tree | 94f2e793d54ffe545492387b20b4c5b59298ce6f /gcc/tree-vect-patterns.cc | |
parent | e55eda238545e93708c020fd21249459be64c463 (diff) | |
download | gcc-1d205dbac1e1754c01c22a31bd1688126545401e.zip gcc-1d205dbac1e1754c01c22a31bd1688126545401e.tar.gz gcc-1d205dbac1e1754c01c22a31bd1688126545401e.tar.bz2 |
Factor out common internal-fn idiom
internal-fn.c has quite a few functions that simply map the result
of the call to an instruction's output operand (if any) and map
each argument to an instruction's input operand, in order.
This patch adds a single function for doing that. It's really
just a generalisation of expand_direct_optab_fn, but with the
output operand being optional.
Unfortunately, it isn't possible to do this for vcond_mask
because the internal function has a different argument order
from the optab.
gcc/
* internal-fn.cc (expand_fn_using_insn): New function,
split out and adapted from...
(expand_direct_optab_fn): ...here.
(expand_GOMP_SIMT_ENTER_ALLOC): Use it.
(expand_GOMP_SIMT_EXIT): Likewise.
(expand_GOMP_SIMT_LANE): Likewise.
(expand_GOMP_SIMT_LAST_LANE): Likewise.
(expand_GOMP_SIMT_ORDERED_PRED): Likewise.
(expand_GOMP_SIMT_VOTE_ANY): Likewise.
(expand_GOMP_SIMT_XCHG_BFLY): Likewise.
(expand_GOMP_SIMT_XCHG_IDX): Likewise.
Diffstat (limited to 'gcc/tree-vect-patterns.cc')
0 files changed, 0 insertions, 0 deletions