https://gcc.gnu.org/bugzilla/show_bug.cgi?id=126274
--- Comment #3 from Tamar Christina <tnfchris at gcc dot gnu.org> --- (In reply to Patrick Palka from comment #2) > With what target and optimization flags is there such a big slowdown? IIRC > according to my crude benchmarks at the time I only noticed about a 30% > slowdown, with just -O2 on my rather old x86 machine. The implementation is > now pretty sensitive to inlining of std::vector operations, so maybe I just > got lucky. Note we are still many times faster than libc++'s impl (about 5x > according to my benchmarks). Oh I didn't mean to imply that the change was bad, in fact after my changes they become faster than GCC-15. I was testing using just -O3 on pretty much any AArch64 platform (I didn't check x86 but I suspect similar issues). The majority of the issues are basically due to using the stack as temporary storage for the frames during DFS searches. I have a a 4 patch series (doing incremental changes) for this which I'll submit tomorrow. I filed the bug so we can consider a backport.
