This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/46091] missed optimization: x86 bt/btc/bts instructions
- From: "uros at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 16 Aug 2017 15:26:07 +0000
- Subject: [Bug target/46091] missed optimization: x86 bt/btc/bts instructions
- Auto-submitted: auto-generated
- References: <bug-46091-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=46091
--- Comment #3 from uros at gcc dot gnu.org ---
Author: uros
Date: Wed Aug 16 15:25:34 2017
New Revision: 251124
URL: https://gcc.gnu.org/viewcvs?rev=251124&root=gcc&view=rev
Log:
PR target/46091
* config/i386/i386.md (*anddi_1_btr): Change predicates of
operand 0 and operand 1 to nomimmediate_operand. Add "m" constraint.
Add ix86_binary_operator_ok to insn constraint.
(*iordi_1_bts): Ditto.
(*xordi_1_btc): Ditto.
(*btsq): Change predicate of operand 0 to nonimmediate_operand.
Update corresponding peephole2 pattern.
(*btrq): Ditto.
(*btcq): Ditto.
testsuite/ChangeLog:
PR target/46091
* gcc.target/i386/pr46091-1.c: Update scan-assembler-times.
(testm): New test function.
* gcc.target/i386/pr46091-2.c: Ditto.
* gcc.target/i386/pr46091-3.c: Ditto.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/i386.md
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.target/i386/pr46091-1.c
trunk/gcc/testsuite/gcc.target/i386/pr46091-2.c
trunk/gcc/testsuite/gcc.target/i386/pr46091-3.c