i386.md (*jcc_bt<mode>): Only split before reload.
authorUros Bizjak <uros@gcc.gnu.org>
Tue, 7 Jul 2015 21:03:02 +0000 (23:03 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Tue, 7 Jul 2015 21:03:02 +0000 (23:03 +0200)
commit649b69652491a08be058729bce7359082b80afbc
treefddcb7f4616ac8b0438b9aa911ce907992c8e873
parent2a7fb83f490c86f530efe5a83f720c95e03f883d
i386.md (*jcc_bt<mode>): Only split before reload.

* config/i386/i386.md (*jcc_bt<mode>): Only split before reload.
Remove operand constraints.  Change operand 2 predicate to
nonmemory operand.  Limit const_int values to mode bitsize.  Only
allow const_int values less than 32 when optimizing for size.
(*jcc_bt<mode>_1, *jcc_bt<mode>_mask): Only split before reload.
Remove operand constraints.
(*bt<mode>): Use SImode for const_int values less than 32.
(regmode): Remove mode attribute.

testsuite/ChangeLog:

* gcc.target/i386/bt-3.c: New test.
* gcc.target/i386/bt-4.c: Ditto.

From-SVN: r225527
gcc/ChangeLog
gcc/config/i386/i386.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/bt-3.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/bt-4.c [new file with mode: 0644]