https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84550
--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> --- GCC bisection reveals that this started misbehaving with r249105 when -freorder-blocks-and-partition has been turned on by default, and with explicit -freorder-blocks-and-partition it started failing with r249070 abort has been marked as cold; before that this small testcase didn't use hot/cold partitioning, while now it does. The only instruction in the cold section in this testcase is actually: call abort so it is unclear to me how this prevents step from working properly. And strangely, if I do b main r s s s s s (many times) and I step through into qux that way and step through the same statement as after b qux; r, it works fine.