diff options
author | Saleem Abdulrasool <compnerd@compnerd.org> | 2018-10-25 17:52:13 +0000 |
---|---|---|
committer | Saleem Abdulrasool <compnerd@compnerd.org> | 2018-10-25 17:52:13 +0000 |
commit | 0c16a13fb9148b3190f792dc726ffb9261163da8 (patch) | |
tree | a77328b162b5acc6ff762a75b574b6596c9a9da5 /clang/lib/CodeGen/CodeGenModule.cpp | |
parent | f02c0f8af6fc16cfd1278ab90e41429876c25eb8 (diff) | |
download | llvm-0c16a13fb9148b3190f792dc726ffb9261163da8.zip llvm-0c16a13fb9148b3190f792dc726ffb9261163da8.tar.gz llvm-0c16a13fb9148b3190f792dc726ffb9261163da8.tar.bz2 |
CodeGen: alter CFConstantString class name for swift 5.0
Swift 5.0 has changed the name decoration for swift symbols, using a 'S' sigil
rather than 's' as in 4.2. Adopt the new convention.
llvm-svn: 345291
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
-rw-r--r-- | clang/lib/CodeGen/CodeGenModule.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/CodeGenModule.cpp b/clang/lib/CodeGen/CodeGenModule.cpp index c9f907b..9d3187b 100644 --- a/clang/lib/CodeGen/CodeGenModule.cpp +++ b/clang/lib/CodeGen/CodeGenModule.cpp @@ -4139,7 +4139,12 @@ CodeGenModule::GetAddrOfConstantCFString(const StringLiteral *Literal) { switch (CFRuntime) { default: break; case LangOptions::CoreFoundationABI::Swift: LLVM_FALLTHROUGH; - case LangOptions::CoreFoundationABI::Swift5_0: LLVM_FALLTHROUGH; + case LangOptions::CoreFoundationABI::Swift5_0: + CFConstantStringClassName = + Triple.isOSDarwin() ? "$S15SwiftFoundation19_NSCFConstantStringCN" + : "$S10Foundation19_NSCFConstantStringCN"; + Ty = IntPtrTy; + break; case LangOptions::CoreFoundationABI::Swift4_2: CFConstantStringClassName = Triple.isOSDarwin() ? "$s15SwiftFoundation19_NSCFConstantStringCN" |