Modular Codegen: Support homing debug info for types in modular objectsMatching the function-homing support for modular codegen. Any typeimplicitly (implicit template specializations) or explicitl
Modular Codegen: Support homing debug info for types in modular objectsMatching the function-homing support for modular codegen. Any typeimplicitly (implicit template specializations) or explicitly defined ina module is attached to that module's object file and omitted elsewhere(only a declaration used if necessary for references).llvm-svn: 299987
show more ...
Modular Codegen: Add/use a bit in serialized function definitions to track whether they are the subject of modular codegenSome decls are created not where they are written, but in other modulefile
Modular Codegen: Add/use a bit in serialized function definitions to track whether they are the subject of modular codegenSome decls are created not where they are written, but in other modulefiles/users (implicit special members and function template implicitspecializations). To correctly identify them, use a bit next to the definitionto track the modular codegen property.Discussed whether the module file bit could be omitted in favor ofreconstituting from the modular codegen decls list - best guess today is thatthe efficiency improvement of not having to deserialize the whole list wheneverany function is queried by a module user is worth it for the small sizeincrease of this redundant (list + bit-on-def) representation.Reviewers: rsmithDifferential Revision: https://reviews.llvm.org/D29901llvm-svn: 299982