https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101544
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |hubicka at gcc dot gnu.org --- Comment #10 from Richard Biener <rguenth at gcc dot gnu.org> --- Things like TARGET_SUPPORTS_ALIASES (or comdat or ...) really are core features of the callgraph which is built very early. Some of the actual transforms and optimizations the C++ frontend does _might_ be deferable (like aliases could just become clones if later on we discover they are not available). I'm not sure though that you will not run into properties that are too hard to change. After all we already require quite some matching of hoast to offload target. So what I'd probably try to do is assume TARGET_SUPPORTS_ALIASES early and "undo" that at IPA transform time by duplicating bodies (or emitting thunks). But as you said, it's just the first knob to tackle. Honza?