swift-ci
f3d88bd1a1
Merge remote-tracking branch 'origin/master' into master-next
2017-03-27 10:29:48 -07:00
adrian-prantl
b433e5339e
Merge pull request #8344 from adrian-prantl/31253373
...
Debugger type mangling: Pass GenericEnvironment separate from DeclContext
2017-03-27 10:13:14 -07:00
swift-ci
1a15901908
Merge remote-tracking branch 'origin/master' into master-next
2017-03-27 02:08:44 -07:00
Slava Pestov
6f57167380
IRGen: Small simplification
2017-03-27 00:25:12 -07:00
swift-ci
69e4b3b579
Merge remote-tracking branch 'origin/master' into master-next
2017-03-26 10:28:42 -07:00
John McCall
57ecaa7fae
Add begin_access and end_access instructions.
...
NFC because we're not actually emitting them.
2017-03-26 04:37:05 -04:00
Adrian Prantl
b872127b66
Debgger type mangling: Pass GenericEnvironment separate from DeclContext.
...
This fixes a crash while building the Swift standard library when
partial specializations are enabled.
Eventually we should get rid of needing the DeclContext in the mangled
typename at all, and this is one step towards that goal.
rdar://problem/31253373
2017-03-25 14:09:14 -07:00
swift-ci
77256de568
Merge remote-tracking branch 'origin/master' into master-next
2017-03-24 02:28:44 -07:00
Slava Pestov
7aabd80898
SIL: Stub out TypeConverter::getOverriddenVTableEntry()
...
This replaces SILDeclRef::getBaseOverriddenVTableEntry(). It lives
in the TypeConverter because it needs to use type lowering information
to determine if the method requires a new vtable entry or not.
2017-03-24 01:53:39 -07:00
Slava Pestov
ef7f6bf0ea
SIL: Stub out TypeConverter::requiresNewVTableEntry()
2017-03-24 01:52:42 -07:00
swift-ci
eea67b3d8c
Merge remote-tracking branch 'origin/master' into master-next
2017-03-23 20:08:44 -07:00
swift-ci
8cf4f182ea
Merge remote-tracking branch 'origin/master' into master-next
2017-03-23 18:28:53 -07:00
Slava Pestov
b42675c235
IRGen: Use SILVTableVisitor instead of bespoke member traversal
2017-03-23 18:17:42 -07:00
Arnold Schwaighofer
af1278753a
Merge pull request #8267 from aschwaighofer/irgen_outline_dynamic_value_in_buffer_functions
...
IRGen: Outline dynamic allocate/project/deallocateValueInBuffer functions
2017-03-23 18:10:13 -07:00
Huon Wilson
655fa58620
[IRGen] Expose LinkEntity and ValueWitness publicly.
2017-03-23 15:58:29 -07:00
swift-ci
ad9bde1ec3
Merge remote-tracking branch 'origin/master' into master-next
2017-03-22 17:48:50 -07:00
Roman Levenstein
e3bc23cc09
Merge pull request #8253 from swiftix/wip-gsb-layout-constrains-fixes
...
[GSB] Improve handling of layout constraints
2017-03-22 17:36:05 -07:00
Roman Levenstein
4e2262944d
Extend the representation of layout constraints
...
- Add support for _Class and _NativeClass layout constraints, which are supposed to represent T: Superclass and P: class constraints in the future.
- Use the re-factoring to also reduce the number of dynamic allocations when creating layout constraints. Simple non-parametrized layout constraints are now represented as statically allocated singletons (static members of LayoutConstraintInfo).
2017-03-22 16:37:38 -07:00
Arnold Schwaighofer
3ab228767d
IRGen: Outline dynamic allocate/project/deallocateValueInBuffer functions
2017-03-22 08:51:58 -07:00
Saleem Abdulrasool
15565c116a
Adjust for SVN r298393
2017-03-22 07:44:03 -07:00
swift-ci
495a91e977
Merge remote-tracking branch 'origin/master' into master-next
2017-03-21 18:48:47 -07:00
Erik Eckstein
7dba148726
IRGen: Private witness table utilities should have private linkage.
2017-03-21 17:53:17 -07:00
swift-ci
68cf59e250
Merge remote-tracking branch 'origin/master' into master-next
2017-03-21 17:28:44 -07:00
Saleem Abdulrasool
70771a8975
IRGen: fix construction of ArrayRef
...
The type deduction may fail due to no explicit conversion to the
ArrayRef data type. Add explicit casts. Use the sizeof operator on the
value being constructed rather than the explicit type of the value to
allow the size to be deduced from the value.
2017-03-21 14:59:07 -07:00
swift-ci
d4f2d44d22
Merge remote-tracking branch 'origin/master' into master-next
2017-03-21 13:08:51 -07:00
Arnold Schwaighofer
5634280307
Use the inline value buffer for allocate/project/deallocateValueBuffer functions
...
Also handle fixed size types.
2017-03-21 11:45:12 -07:00
swift-ci
bc9fe2e87e
Merge remote-tracking branch 'origin/master' into master-next
2017-03-20 12:08:42 -07:00
Erik Eckstein
d70bfc5de2
rename namespace NewMangling -> Mangle
2017-03-20 10:09:30 -07:00
swift-ci
6edb8c3a59
Merge remote-tracking branch 'origin/master' into master-next
2017-03-17 17:48:44 -07:00
Erik Eckstein
1625345b90
Remove the old mangler.
...
NFC
2017-03-17 16:10:36 -07:00
swift-ci
ba006df1e7
Merge remote-tracking branch 'origin/master' into master-next
2017-03-17 14:48:50 -07:00
Arnold Schwaighofer
ecb8b15261
IRGen: Fix partial_apply of instantiated generic return values
...
We might have to reabstract the return type.
SR-4253
2017-03-17 13:30:53 -07:00
swift-ci
0943c4ecb0
Merge remote-tracking branch 'origin/master' into master-next
2017-03-17 06:48:42 -07:00
Arnold Schwaighofer
abe18607be
IRGen: A value is allocated outline if size *or* alignment of the fixed size
...
buffer does not match
2017-03-16 19:14:32 -07:00
swift-ci
8841e0a71a
Merge remote-tracking branch 'origin/master' into master-next
2017-03-16 12:48:42 -07:00
Arnold Schwaighofer
a4c6af1968
Merge pull request #8122 from aschwaighofer/cow_existential_runtime
...
Runtime changes for the copy-on-write existential implementation
2017-03-16 12:48:35 -07:00
swift-ci
d973d8e79a
Merge remote-tracking branch 'origin/master' into master-next
2017-03-16 12:08:43 -07:00
swift-ci
c5df122e59
Merge pull request #8115 from adrian-prantl/31066290
2017-03-16 12:00:34 -07:00
swift-ci
0fdab36068
Merge remote-tracking branch 'origin/master' into master-next
2017-03-15 15:28:42 -07:00
Arnold Schwaighofer
d5cbb0bd62
Runtime changes for the copy-on-write existential implementation
...
Adds the runtime implementation for copy-on-write existentials. This support is
enabled if SWIFT_RUNTIME_ENABLE_COW_EXISTENTIALS is defined. Focus is on
correctness -- not performance yet.
Don't use allocate/deallocate/projectBuffer witnesses for globals in cow
existential mode.
Use SWIFT_RUNTIME_ENABLE_COW_EXISTENTIALS configuration to set the default for
SILOptions.
This includes an IRGen fix to use the right projection in
emitMetatypeOfOpaqueExistential if SWIFT_RUNTIME_ENABLE_COW_EXISTENTIALS is set.
Use unknownRetain instead of native retain in dynamicCastToExistential.
2017-03-15 14:54:55 -07:00
Adrian Prantl
082d36a6bb
Debug Info: Make the lookup of VariableValues deterministic.
...
No deterministically observable functional change.
rdar://problem/31066290
2017-03-15 12:26:55 -07:00
Erik Eckstein
a16beaea3c
Remove the now usused ConformanceCollector utility.
...
It was used for dead witness table elimination. But this is done now by lazy emission in IRGen.
Also update DeadFunctionElimination.
NFC.
2017-03-15 10:18:18 -07:00
swift-ci
471f244890
Merge remote-tracking branch 'origin/master' into master-next
2017-03-14 22:48:43 -07:00
John McCall
0c446c41d1
Merge pull request #8104 from rjmccall/farewell-to-archetype-access-paths
...
IRGen's archetype access path hack is now dead code, RIP. NFC.
2017-03-15 01:40:23 -04:00
swift-ci
f64e9ca6c1
Merge remote-tracking branch 'origin/master' into master-next
2017-03-14 21:28:44 -07:00
John McCall
720481d2f6
IRGen's archetype access path hack is now dead code, RIP. NFC.
2017-03-14 22:00:27 -04:00
Erik Eckstein
1e2945d63c
IRGen: Consider the conforming type’s accessibility for lazy witness table emission.
...
...instead of the witness table’s linkage.
The WT linkage is derived from the minimum of the type’s and protocol’s visibility.
So if there is a public type conforming to a private protocol, we might not see the type’s metadata escaping (because it could be in another module).
2017-03-14 17:36:27 -07:00
swift-ci
65d0b94941
Merge remote-tracking branch 'origin/master' into master-next
2017-03-14 15:08:50 -07:00
Erik Eckstein
1144bf0a95
IRGen: fix comment
2017-03-14 13:27:19 -07:00
swift-ci
843217f2d5
Merge remote-tracking branch 'origin/master' into master-next
2017-03-14 12:28:43 -07:00