SILOptimizer: add a mechanism to pre-specialize internal stdlib symbols for OnoneSupport.

When compiling the OnoneSupport library, the compiler checks for @_semantics("prespecialize.X") attributes to pre-specialize function X.

rdar://problem/48924409
This commit is contained in:
Erik Eckstein
2019-03-21 16:44:53 -07:00
parent 39e681c965
commit 17aa1c0c20
3 changed files with 77 additions and 5 deletions

View File

@@ -266,16 +266,16 @@ private:
SILModule(const SILModule&) = delete;
void operator=(const SILModule&) = delete;
/// Method which returns the SerializedSILLoader, creating the loader if it
/// has not been created yet.
SerializedSILLoader *getSILLoader();
/// Folding set for key path patterns.
llvm::FoldingSet<KeyPathPattern> KeyPathPatterns;
public:
~SILModule();
/// Method which returns the SerializedSILLoader, creating the loader if it
/// has not been created yet.
SerializedSILLoader *getSILLoader();
/// Add a callback for each newly deserialized SIL function body.
void registerDeserializationNotificationHandler(
std::unique_ptr<DeserializationNotificationHandler> &&handler);