mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
[Exclusivity] Remove dominated access checks with no nested conflict:
Simplification of the code (bail on unpaired accesses) + change the implementation so we can avoid quadratic behavior
This commit is contained in:
@@ -530,12 +530,13 @@ IsSerialized_t SILDeclRef::isSerialized() const {
|
||||
bool SILDeclRef::isNoinline() const {
|
||||
if (!hasDecl())
|
||||
return false;
|
||||
if (getDecl()->getAttrs().hasAttribute<KeyPathEntryPointAttr>())
|
||||
return true;
|
||||
if (auto InlineA = getDecl()->getAttrs().getAttribute<InlineAttr>())
|
||||
if (InlineA->getKind() == InlineKind::Never)
|
||||
return true;
|
||||
return false;
|
||||
if (auto *semanticsA = getDecl()->getAttrs().getAttribute<SemanticsAttr>())
|
||||
if (semanticsA->Value.equals("keypath.entry"))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
/// \brief True if the function has noinline attribute.
|
||||
|
||||
Reference in New Issue
Block a user