aboutsummaryrefslogtreecommitdiff
path: root/libcpp/files.c
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2022-01-15 20:59:07 +0100
committerUros Bizjak <ubizjak@gmail.com>2022-01-15 20:59:57 +0100
commitf4a2cecd689c5dd805c86731f712ff20ca41a71d (patch)
treee9895c61313e030e2c93b1d54cc9ffb19af402b4 /libcpp/files.c
parentdcf8fe1eeab668a4d24bcc4baa3ad185dbf1b5e0 (diff)
downloadgcc-f4a2cecd689c5dd805c86731f712ff20ca41a71d.zip
gcc-f4a2cecd689c5dd805c86731f712ff20ca41a71d.tar.gz
gcc-f4a2cecd689c5dd805c86731f712ff20ca41a71d.tar.bz2
i386: Improve and optimize ix86_expand_sse_movcc
Modernize ix86_expand_sse_movcc to use expand_simple_{unop,binop} infrastructure to avoid manual twiddling with output registers. Also fix a couple of inconsistent vector_all_ones_operand usages, break a couple of unnecessary else-if chains, eliminate common subexpressions and do some general code simplifications. 2022-01-15 Uroš Bizjak <ubizjak@gmail.com> gcc/ChangeLog: * config/i386/i386-expand.c (ix86_expand_sse_movcc): Use expand_simple_unop and expand_simple_binop instead of manually constructing NOT, AND and IOR RTXes. Use vector_all_ones_operand consistently. Eliminate common subexpressions and simplify code. * config/i386/sse.md (<any_logic:code><MODEF:mode>3): New expander. (<any_logic:code><MODEF:mode>3): Make public.
Diffstat (limited to 'libcpp/files.c')
0 files changed, 0 insertions, 0 deletions