summaryrefslogtreecommitdiffstats
path: root/clang/lib
diff options
context:
space:
mode:
authorReid Kleckner <reid@kleckner.net>2014-08-15 18:12:40 +0000
committerReid Kleckner <reid@kleckner.net>2014-08-15 18:12:40 +0000
commitb9538a6d09087aecfbb9e686da85778bf2b03e66 (patch)
treedb8eec8aec22c20d45fd66b8b17953d838a8cdc3 /clang/lib
parenta6b86bef4d5f09db3e3c9906628a0b637af9ace8 (diff)
downloadbcm5719-llvm-b9538a6d09087aecfbb9e686da85778bf2b03e66.tar.gz
bcm5719-llvm-b9538a6d09087aecfbb9e686da85778bf2b03e66.zip
MS ABI: Virtual member pointer thunks are not unnamed_addr
They can be compared for identity. llvm-svn: 215745
Diffstat (limited to 'clang/lib')
-rw-r--r--clang/lib/CodeGen/MicrosoftCXXABI.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/MicrosoftCXXABI.cpp b/clang/lib/CodeGen/MicrosoftCXXABI.cpp
index d01fb7bf34f..dcbb6afde0a 100644
--- a/clang/lib/CodeGen/MicrosoftCXXABI.cpp
+++ b/clang/lib/CodeGen/MicrosoftCXXABI.cpp
@@ -1459,6 +1459,9 @@ llvm::Function *MicrosoftCXXABI::EmitVirtualMemPtrThunk(
CGM.SetLLVMFunctionAttributes(MD, FnInfo, ThunkFn);
CGM.SetLLVMFunctionAttributesForDefinition(MD, ThunkFn);
+ // These thunks can be compared, so they are not unnamed.
+ ThunkFn->setUnnamedAddr(false);
+
// Start codegen.
CodeGenFunction CGF(CGM);
CGF.StartThunk(ThunkFn, MD, FnInfo);
OpenPOWER on IntegriCloud