https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122394
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Component|debug |tree-optimization
Last reconfirmed| |2025-10-23
Status|UNCONFIRMED |NEW
Ever confirmed|0 |1
--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
PHIOPT2 (spaceship opt):
produces:
# DEBUG D#1 => _10 < _11 ? -1 : 2
# DEBUG D#2 => _10 > _11 ? 1 : D#1
# DEBUG D#3 => _10 == _11 ? 0 : D#2
# DEBUG D#4 => (unsigned int) D#3
std::__cmp_cat::__unspec::__unspec (&D.2813, 0B);
# DEBUG D.2802 => D#3
This might be why this does not show up on the trunk due to the value change of
unordered (but I noticed even with a change to the preprocessed source phiopt
does not do this still).
D#4 seems to be in the wrong mode when expanding:
;; # DEBUG D#4 => (unsigned int) D#3
(debug_insn 18 17 0 (var_location:QI D#4 (const_int 0 [0])) -1
(nil))
That is what is causing the issue.