The existing algorithm was wrong because it internalized symbols it didn't need to.
I'm bootstrapping right now to see if it actually fixes the failure I hit. Consider this a WIP/FYI patch, I'll upload a definitive version later today. Refer to the code for comments/details.
Details
Details
Diff Detail
Diff Detail
Event Timeline
ELF/LTO.cpp | ||
---|---|---|
78 | We don't usually use auto if the type is obvious in a very narrow (e.g. RHS) context. We also use short names for variables with narrow scope, so I'd write uint8_t V = Body->getVisibility(); return V == STV_DEFAULT || V == STV_PROTECTED; | |
129–138 | In both cases it does the same thing. Is this intended? |
We don't usually use auto if the type is obvious in a very narrow (e.g. RHS) context. We also use short names for variables with narrow scope, so I'd write