Rintaro Ishizaki
6496175653
[Serialization] Omit local discrimiator from LocalDeclTableInfo
...
Local discriminators are emitted as a part of decl.
2018-05-11 15:37:40 +09:00
swift-ci
289829000b
Merge remote-tracking branch 'origin/master' into master-next
2018-05-04 13:09:41 -07:00
Jordan Rose
4714fcd50c
Revert "Merge pull request #16211 from slavapestov/fix-inlinable-vs-autolinking"
...
This reverts commit bb16ee049d ,
reversing changes made to a8d831f5f5 .
It's not sufficient to solve the problem, and the choices were to do
something more complicated, or just take a simple brute force
approach. We're going with the latter.
2018-05-03 22:40:31 -06:00
swift-ci
604f5930fe
Merge remote-tracking branch 'origin/master' into master-next
2018-05-03 19:29:42 -07:00
Doug Gregor
ba391b6b47
[Serialization] Remove (de-)serialization of Substitution.
...
We are no longer serializing Substitution (or SubstitutionList) anywhere, so
remove the code associated with it.
2018-05-03 13:40:52 -07:00
swift-ci
2ea33a93e9
Merge remote-tracking branch 'origin/master' into master-next
2018-05-03 00:09:35 -07:00
Doug Gregor
bc5bbe8b64
[AST] Use SubstitutionMap, not SubstitutionList, in SILBoxType.
...
Eliminate the last place in the AST proper that stores
SubstitutionLists rather than SubstitutionMaps. Randomly fixes a
crasher, too.
2018-05-02 13:39:21 -07:00
Doug Gregor
3e2bed119b
[AST] Switch SpecializedProtocolConformance over to SubstitutionMap.
...
Eliminate another common use of SubstitutionList from the AST.
2018-05-02 13:38:15 -07:00
Doug Gregor
192234415d
[AST] Store SubstitutionMaps in ConcreteDeclRef and Witness data structures.
...
Replace two prominent uses of SubstitutionList, in ConcreteDeclRef and
Witness, with SubstitutionMap. Deal with the myriad places where we
now have substitution maps and need substitution lists (or vice versa)
caused by this change.
Overall, removes ~50 explicit uses of SubstitutionList (of ~400).
2018-05-02 13:38:14 -07:00
swift-ci
9d46968584
Merge remote-tracking branch 'origin/master' into master-next
2018-05-01 20:48:51 -07:00
Slava Pestov
db440121b7
Serialization: Support '@_usableFromInline import'
...
Progress on <rdar://problem/39338239>; we still need to infer this
attribute though.
2018-05-01 17:56:15 -07:00
swift-ci
d3dacc306b
Merge remote-tracking branch 'origin/master' into master-next
2018-04-30 20:49:19 -07:00
Doug Gregor
6bdd24d1ac
Merge pull request #16268 from DougGregor/substitution-map-ast-adoption
...
[AST] Adopt SubstitutionMap as the storage mechanism for substitutions
2018-04-30 20:36:02 -07:00
Doug Gregor
df97e44eb9
[AST] Replace SubstitutionList in NameAliasType with a SubstitutionMap.
...
Convert NameAliasType’s internal representation from tail-allocating an
array of Substitutions (to be treated as a SubstitutionList) to store a
single SubstitutionMap. Serialize using that SubstitutionMap.
2018-04-30 16:23:14 -07:00
Doug Gregor
ab56fa3e9c
[Serialization] Support (de-)serialization of SubstitutionMaps.
...
Allow substitution maps to be serialized directly (via an ID), writing out
the replacement types and conformances as appropriate. This is a more
efficient form of serialization than the current SubstitutionList approach,
because it maintains uniqueness of substitution maps within a module file,
and is a step toward eliminating SubstitutionList entirely.
2018-04-30 16:21:58 -07:00
swift-ci
71a7529f6b
Merge remote-tracking branch 'origin/master' into master-next
2018-04-27 05:28:59 -07:00
Slava Pestov
af875829a7
Merge pull request #16206 from slavapestov/serialization-cleanup
...
Serialization cleanup
2018-04-27 05:22:40 -07:00
swift-ci
5f2fa48109
Merge remote-tracking branch 'origin/master' into master-next
2018-04-27 00:49:12 -07:00
Doug Gregor
b26e983665
[Serialization] Get SubstitutionList directly from a NameAliasType.
2018-04-26 23:38:26 -07:00
Slava Pestov
4d7950a9b2
Serialization: Remove obsolete 'HasUnderlyingModule' hack
2018-04-26 23:37:17 -07:00
swift-ci
fbd50bfa60
Merge remote-tracking branch 'origin/master' into master-next
2018-04-20 00:08:00 -07:00
Pavel Yaskevich
01e8cbd23a
[AST] Remove requiresSubstitution invariant from Witness
2018-04-19 18:13:06 -07:00
Pavel Yaskevich
e1fab0559c
[Serialization] Always serialize requirement substitutions
...
Absence of synthetic generic environment should not affect
serialization of the required substitutions because they can
come from outer requirement context for static members.
Resolves: rdar://problem/36497404
2018-04-19 17:58:13 -07:00
swift-ci
56f86aaa4d
Merge remote-tracking branch 'origin/master' into master-next
2018-04-18 10:29:08 -07:00
David Zarzycki
a8fbe3a18e
[AST] NFC: Repack misc DeclAttribute bits into inline bitfield
2018-04-18 11:25:11 -04:00
swift-ci
2fda5ce1f5
Merge remote-tracking branch 'origin/master' into master-next
2018-04-05 22:53:22 -07:00
Doug Gregor
431dd1c6df
Merge pull request #15758 from ikesyo/serialization-using-over-typedef
...
[gardening][Serialization] Replace `typedef` with `using`
2018-04-05 22:43:11 -07:00
swift-ci
8f0f89053a
Merge remote-tracking branch 'origin/master' into master-next
2018-04-05 09:29:49 -07:00
Sho Ikeda
19d5053868
[gardening][Serialization] Replace typedef with using
2018-04-05 13:38:44 +09:00
Joe Groff
9e1a417b56
Serialization: Never serialize conformances from Clang modules.
...
We should always go through the Clang importer to reinstantiate them. Serializing them leads to the possibility of us ending up with multiple conformances with different identities that ought to be equivalent.
2018-04-03 14:40:26 -07:00
swift-ci
1a436bcb75
Merge remote-tracking branch 'origin/master' into master-next
2018-03-31 10:08:58 -07:00
Andrew Trick
e9d07d88fc
Merge pull request #15501 from atrick/add-access-tracking-flag
...
[exclusivity] Add an access tracking flag.
2018-03-31 10:04:08 -07:00
swift-ci
1c162a567d
Merge remote-tracking branch 'origin/master' into master-next
2018-03-31 01:49:02 -07:00
Mark Lacey
21134efd22
Revert "IRGen: Deserialize SIL witness tables and shared-linkage definitions by need."
2018-03-30 22:14:13 -07:00
Andrew Trick
4ed120e46c
Merge branch 'master' into add-access-tracking-flag
2018-03-30 19:25:46 -07:00
swift-ci
9121164d82
Merge remote-tracking branch 'origin/master' into master-next
2018-03-30 17:09:01 -07:00
Joe Groff
73895a3f22
Serialization: Never serialize conformances from Clang modules.
...
We should always go through the Clang importer to reinstantiate them. Serializing them leads to the possibility of us ending up with multiple conformances with different identities that ought to be equivalent.
2018-03-30 11:12:58 -07:00
Andrew Trick
ed8a604c27
Merge branch 'master' into add-access-tracking-flag
2018-03-29 18:26:22 -07:00
swift-ci
00ecedd1b3
Merge remote-tracking branch 'origin/master' into master-next
2018-03-28 11:08:57 -07:00
Robert Widmann
187f6c132f
Serialize the resilience expansion of EnumElementDecl's default arguments
2018-03-28 12:13:25 -04:00
swift-ci
e6d70f352e
Merge remote-tracking branch 'origin/master' into master-next
2018-03-27 22:08:57 -07:00
Robert Widmann
03580d2fe5
Add a parameter list to EnumElementDecl
...
This models, but does not plumb through, default arguments.
2018-03-28 00:05:56 -04:00
Andrew Trick
70ee3df099
Serialization support for begin_access [no_nested_conflict].
...
Add serialization layouts for rare instructions that take extra attributes. We
can continue adding bits to these layout without affecting the layout of the
vast majority of instructions.
2018-03-27 12:04:20 -07:00
swift-ci
29011402dd
Merge remote-tracking branch 'origin/master' into master-next
2018-03-26 09:11:11 -07:00
Doug Gregor
b2b69e8abf
Rename BoundNameAliasType to NameAliasType.
...
NameAliasType is dead! Long live NameAliasType!
2018-03-25 21:35:17 -07:00
Doug Gregor
0524741f6c
[Serialization] Rename "alias name type" to "builtin alias type".
...
We still use the old layout for NameAliasType for builtin types, so
rename the Layout struct and corresponding code to describe its new
(more restricted) purpose.
2018-03-25 21:35:16 -07:00
Doug Gregor
c43f96a855
[AST] Remove now-unused NameAliasType.
2018-03-25 21:35:16 -07:00
swift-ci
18f27a5300
Merge remote-tracking branch 'origin/master' into master-next
2018-03-24 19:09:15 -07:00
swift-ci
29788f6245
Merge pull request #14963 from kitasuke/replace-of-builtin-string-with-constant
2018-03-24 18:56:17 -07:00
swift-ci
4c1d212192
Merge remote-tracking branch 'origin/master' into master-next
2018-03-22 13:29:26 -07:00