[gcse] PR rtl-optimization/69886: Check target mode in can_assign_to_reg_without_clob...
commit9c9680b5edddac0c7c213f1577419042d76d4cd7
authorktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 24 Feb 2016 13:00:10 +0000 (24 13:00 +0000)
committerktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 24 Feb 2016 13:00:10 +0000 (24 13:00 +0000)
tree8426f9185336f0555756df5729d96189e001db5a
parent36d081ee93a4273b7fa6ef0ca3f8c7111951e1ed
[gcse] PR rtl-optimization/69886: Check target mode in can_assign_to_reg_without_clobbers_p

PR rtl-optimization/69886
* gcse.c (can_assign_to_reg_without_clobbers_p): Accept mode
argument.  Use it when checking validity of set instructions.
(want_to_gcse_p): Pass mode to can_assign_to_reg_without_clobbers_p.
(compute_ld_motion_mems): Update can_assign_to_reg_without_clobbers_p
callsite.
* rtl.h (can_assign_to_reg_without_clobbers_p): Update prototype.
* store-motion.c (find_moveable_store): Update
can_assign_to_reg_without_clobbers_p callsite.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233662 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/gcse.c
gcc/rtl.h
gcc/store-motion.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/torture/pr69886.c [new file with mode: 0644]