mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
Instead of a wholly separate lazyness mechanism for foreign metadata where the first call to getAddrOfForeignTypeMetadataCandidate() would emit the metadata, emit it using the lazy metadata mechanism. This eliminates some code duplication. It also ensures that foreign metadata is only emitted once per SIL module, and not once per LLVM module, avoiding duplicate copies that must be ODR'd away in multi-threaded mode. This fixes the test case from <rdar://problem/49710077>.
6.4 KiB
6.4 KiB