ext-dce: Don't refine live width with SUBREG mode if !TRULY_NOOP_TRUNCATION_MODES_P [PR 120050]

If we see a promoted subreg and TRULY_NOOP_TRUNCATION says the
truncation is not a noop, then all bits of the inner reg are live.  We
cannot reduce the live mask to that of the mode of the subreg.

gcc/ChangeLog:

	PR rtl-optimization/120050
	* ext-dce.cc (ext_dce_process_uses): Break early if a SUBREG in
	rhs is promoted and the truncation from the inner mode to the
	outer mode is not a noop when handling SETs.

(cherry picked from commit 65f3a439c4f76fe780a30ac66969f51035c4bf98)
1 file changed