- Use SWIFT_RUNTIME_EXPORT instead of SWIFT_RT_ENTRY_VISIBILITY for exposed functions
- Use `_swift_` prefixes on the names of exposed functions
- Make the global counters and per-object counters cache thread-safe by using locks
Ensure that the proper DLL storage is annotated on the declaration.
This currently mismatched on Windows. On non-COFF targets, we would
just honour the visibility as specified on the definition.