This fixes bug 50544.
The original implementation would try to insert new lifetime markers between coro.suspend and the switch that uses coro.suspends. After lowering, it would make a pattern:
fastcc call anything ; // should be musttail %0 = getelementptr ... lifetime.start(size, %0) ret void
which prevent the musttail call and it doesn't make sense actually. This patch tries to insert new lifetime markers after the switch block instead, which solves the bug and makes more sense.
Test Plan: check-all
Can we assert that this is a switch block somehow? This is very dangerous if the code pattern isn't what we expect.