aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/parser.c
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2020-11-26 09:47:01 +0100
committerUros Bizjak <ubizjak@gmail.com>2020-11-26 09:50:33 +0100
commitacdf30d66cac11757e95541aa35f5ce97de29f63 (patch)
tree732c84d94d538a3feb2b6662d34c44a5314b760b /gcc/cp/parser.c
parente3068952d7540c51764d1e4e31ef8988492064cf (diff)
downloadgcc-acdf30d66cac11757e95541aa35f5ce97de29f63.zip
gcc-acdf30d66cac11757e95541aa35f5ce97de29f63.tar.gz
gcc-acdf30d66cac11757e95541aa35f5ce97de29f63.tar.bz2
i386: Use SDWIM mode iterator for abs and maxmin [PR97873]
Generate special double mode sequence also for QImode and HImode. Without QImode and HImode patterns, middle-end extends operands to SImode and emits SImode conditional move instruction with paradoxical SImode output register. This form is not recognized by STV pass, but a single abs with input operand in a register would not be converted anyway due to relatively high register conversion cost. 2020-11-26 Uroš Bizjak <ubizjak@gmail.com> PR target/97873 gcc/ * config/i386/i386.md (abs<mode>2): Use SDWIM mode iterator. (*abs<mode>2_1): Use SWI mode iterator. (<maxmin:code><mode>3): Use SDWIM mode iterator. (*<maxmin:code><mode>3_1): Use SWI mode iterator. gcc/testsuite/ * gcc.target/i386/pr97873-3.c: New test.
Diffstat (limited to 'gcc/cp/parser.c')
0 files changed, 0 insertions, 0 deletions