https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119834
--- Comment #23 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Thanks, confirmed it is late_combine that changes
(insn 1817 227 1735 42 (set (reg:DI 2 %r2 [orig:250 _176 ] [250])
(const_int 4 [0x4])) "../src/hb-algs.hh":996:17 1811 {*movdi_64}
(nil))
(note 1735 1817 232 42 NOTE_INSN_DELETED)
(insn 232 1735 233 42 (parallel [
(set (reg:DI 2 %r2 [orig:250 _176 ] [250])
(plus:DI (reg:DI 2 %r2 [orig:250 _176 ] [250])
(const_int -1 [0xffffffffffffffff])))
(clobber (reg:CC 33 %cc))
]) "../src/hb-algs.hh":996:17 2197 {*adddi3}
(nil))
...
(insn 245 738 784 47 (parallel [
(set (mem:BLK (reg/f:DI 1 %r1 [orig:249 pretmp_381 ] [249]) [0
A8])
(const_int 0 [0]))
(use (reg:DI 2 %r2 [orig:250 _176 ] [250]))
(use (const:BLK (unspec:BLK [
(const_int 0 [0])
] UNSPEC_INSN)))
(clobber (reg:DI 4 %r4 [524]))
(clobber (reg:CC 33 %cc))
]) "../src/hb-algs.hh":996:17 1900 {*clrmem_short}
(nil))
to
(insn 245 738 784 47 (parallel [
(set (mem:BLK (reg/f:DI 1 %r1 [orig:249 pretmp_381 ] [249]) [0
A8])
(const_int 0 [0]))
(use (const_int 3 [0x3]))
(use (const:BLK (unspec:BLK [
(const_int 0 [0])
] UNSPEC_INSN)))
(clobber (reg:DI 4 %r4 [524]))
(clobber (reg:CC 33 %cc))
]) "../src/hb-algs.hh":996:17 1900 {*clrmem_short}
(nil))
So possibly regressed with r15-1579, bisecting now.