FYI both of us who've tried this patch are experiencing the issue on LLVM-jitted code, which is why there isn't dwarf information available. Maybe I'll start another thread about my so-far-unsuccessful attempts to use _U_dyn_register...
I'm pretty new to this unwinding stuff, but it seems like even in the case that rbp=rsp, the unwinder is still making defined progress, since the return pointer got pushed on the stack above rbp. ie even if rbp_of_current_frame = rsp_of_current_frame, then rsp_of_previous_frame = rbp_of_current_frame + 8, so rsp_of_previous_frame > rsp_of_current_frame and we shouldn't get stuck in a loop?