Hi GCC community, I have a few questions that I am struggling to find an answer for:
a. Why does LTO generates a new symbol? b. Why it does not replace the existing symbol, instead of creating a new one with "lto_priv.%d" at the end of it [1]? c. Can we assume the original symbol always will be removed? Or it is possible to have cases where we have _x_ and _x_.lto_priv.0 together in the final binary? 1. https://github.com/gcc-mirror/gcc/blob/master/gcc/lto/lto-partition.cc#L937 Best wishes, Navid.