diff options
author | Sean Callanan <scallanan@apple.com> | 2011-11-16 00:20:50 +0000 |
---|---|---|
committer | Sean Callanan <scallanan@apple.com> | 2011-11-16 00:20:50 +0000 |
commit | a6cbf06d0a7068f307b77313a4a6cb73b3956984 (patch) | |
tree | 42f081efc13f0b23b535cbb6c5c34c217734d07d /lldb/source/Expression/IRForTarget.cpp | |
parent | 2c523a6ff00c45ce907bc07e156470ddefaebb06 (diff) | |
download | bcm5719-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.cpp | 6 |
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) |