summaryrefslogtreecommitdiffstats
path: root/lldb/source/Expression/IRForTarget.cpp
diff options
context:
space:
mode:
authorSean Callanan <scallanan@apple.com>2011-11-16 00:20:50 +0000
committerSean Callanan <scallanan@apple.com>2011-11-16 00:20:50 +0000
commita6cbf06d0a7068f307b77313a4a6cb73b3956984 (patch)
tree42f081efc13f0b23b535cbb6c5c34c217734d07d /lldb/source/Expression/IRForTarget.cpp
parent2c523a6ff00c45ce907bc07e156470ddefaebb06 (diff)
downloadbcm5719-llvm-a6cbf06d0a7068f307b77313a4a6cb73b3956984.tar.gz
bcm5719-llvm-a6cbf06d0a7068f307b77313a4a6cb73b3956984.zip
Two fixes for Objetive-C methods that return struct
types. First, I added handling for the memset intrinsic in the IR, which is used to zero out the returned struct. Second, I fixed the object-checking instrumentation to objc_msgSend_stret, and generally tightened up how the object-checking functions get inserted. llvm-svn: 144741
Diffstat (limited to 'lldb/source/Expression/IRForTarget.cpp')
-rw-r--r--lldb/source/Expression/IRForTarget.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/lldb/source/Expression/IRForTarget.cpp b/lldb/source/Expression/IRForTarget.cpp
index c6d7f2dea2e..ba8df143246 100644
--- a/lldb/source/Expression/IRForTarget.cpp
+++ b/lldb/source/Expression/IRForTarget.cpp
@@ -205,6 +205,12 @@ IRForTarget::GetFunctionAddress (llvm::Function *fun,
name = g_memcpy_str;
}
break;
+ case Intrinsic::memset:
+ {
+ static lldb_private::ConstString g_memset_str ("memset");
+ name = g_memset_str;
+ }
+ break;
}
if (log && name)
OpenPOWER on IntegriCloud