On May 18, 2017, Alexandre Oliva <aol...@redhat.com> wrote: > When an insn used by combine has multiple SETs, only the non-REG_UNUSED > set is used: others will end up dropped on the floor. We have to take > note of the dropped REG_UNUSED SETs, clearing their cached values, so > that, even if the REGs remain used (e.g. because they were referenced > in the used SET_SRC), we will not use properties of the latest value > as if they applied to the earlier one.
> Regstrapped on x86_64-linux-gnu. Ok to install? > for gcc/ChangeLog > PR rtl-optimization/80693 > * combine.c (distribute_notes): Add IDEST parameter. Reset any > REG_UNUSED REGs that are not IDEST, if IDEST is given. Adjust > all callers. > for gcc/testsuite/ChangeLog > PR rtl-optimization/80693 > * gcc.dg/pr80693.c: New. Ping? https://gcc.gnu.org/ml/gcc-patches/2017-05/msg01444.html -- Alexandre Oliva, freedom fighter http://FSFLA.org/~lxoliva/ You must be the change you wish to see in the world. -- Gandhi Be Free! -- http://FSFLA.org/ FSF Latin America board member Free Software Evangelist|Red Hat Brasil GNU Toolchain Engineer