https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69656
--- Comment #10 from Richard Biener <rguenth at gcc dot gnu.org> --- So somewhat oldish trunk shows 30s -> 170s for me. Nothing obvious in -ftime-report. Generated assembly is 82MB vs. 16MB so we're shoveling a lot more code through the machinery and that's what we'd need to fix. We instrument GIMPLE which means we might end up instrumenting a lot more than clang. We instrument quite early as well and we might not be very good in eliminating instrumentation code as dead even in optimized. I'm only aware on the overflow IFNs being optimized. Our instrumentation code might be big (too much inline?). All not verified in any way. A good start would be to try individual ubsan sanitizers to spot the "worst" one (I guess overflow or maybe null/alignment).