[RTL ifcvt] PR rtl-optimization/71594: ICE in noce_emit_cmove due to mismatched sourc...
commit0215a22c81834941342889883c9c587bab8e888c
authorktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 5 Jul 2016 16:37:40 +0000 (5 16:37 +0000)
committerktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 5 Jul 2016 16:37:40 +0000 (5 16:37 +0000)
tree0ba36dd360470fd0381b51efa94c83ba0c3fa0f8
parent30a39817a3f06f8de3b8e18e2efa48fb7c45667e
[RTL ifcvt] PR rtl-optimization/71594: ICE in noce_emit_cmove due to mismatched source modes

PR rtl-optimization/71594
* ifcvt.c (noce_convert_multiple_sets): Wrap new_val or old_val
into subregs of appropriate mode before trying to emit a conditional
move.

* gcc.dg/torture/pr71594.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@238013 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/ifcvt.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/torture/pr71594.c [new file with mode: 0644]