On Fri, 20 Mar 2026 15:07:38 -0400 David Malcolm via Gcc <[email protected]> wrote:
> Grepping for TV_THREAD_PROLOGUE_AND_EPILOGUE, I see two passes in > function.cc that account their time to this timevar: > pass_thread_prologue_and_epilogue and > pass_late_thread_prologue_and_epilogue. > > Both of these passes ultimately call the function > rest_of_handle_thread_prologue_and_epilogue. > > So the slowdown is presumably somewhere inside there. When I compiled Bob's example program under Linux perf and examined it with hotspot, it showed about 1/2 the time is spent in lra_process_new_insns. 100% of that time, 5 levels down, is bitmap_list_find_element. A little higher up, 73% overall is spent in the caller, do_reload. I suspect that's too late in the game. I'm observing the optimizer doing its job, not why it has any job to do. But I was wrong once, not very long ago, actually, and not the first time then, either. So I pass it along. --jkl
