summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGObjCGNU.cpp
diff options
context:
space:
mode:
authorDavid Chisnall <csdavec@swan.ac.uk>2011-05-23 23:13:25 +0000
committerDavid Chisnall <csdavec@swan.ac.uk>2011-05-23 23:13:25 +0000
commit1254f6efe24f5f65fc2dd419eaf81565d79b0c9e (patch)
tree98493b73a534741d448e58181b2998bbca4504cd /clang/lib/CodeGen/CGObjCGNU.cpp
parent3fe89562e84b23ac96d54e972c344c00d21cf448 (diff)
downloadbcm5719-llvm-1254f6efe24f5f65fc2dd419eaf81565d79b0c9e.tar.gz
bcm5719-llvm-1254f6efe24f5f65fc2dd419eaf81565d79b0c9e.zip
Don't omit retain / release / autorelease message sends in hybrid GC mode.
llvm-svn: 131932
Diffstat (limited to 'clang/lib/CodeGen/CGObjCGNU.cpp')
-rw-r--r--clang/lib/CodeGen/CGObjCGNU.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/clang/lib/CodeGen/CGObjCGNU.cpp b/clang/lib/CodeGen/CGObjCGNU.cpp
index 82a0f9b1226..ff583af7cdd 100644
--- a/clang/lib/CodeGen/CGObjCGNU.cpp
+++ b/clang/lib/CodeGen/CGObjCGNU.cpp
@@ -955,7 +955,7 @@ CGObjCGNU::GenerateMessageSendSuper(CodeGenFunction &CGF,
bool IsClassMessage,
const CallArgList &CallArgs,
const ObjCMethodDecl *Method) {
- if (CGM.getLangOptions().getGCMode() != LangOptions::NonGC) {
+ if (CGM.getLangOptions().getGCMode() == LangOptions::GCOnly) {
if (Sel == RetainSel || Sel == AutoreleaseSel) {
return RValue::get(Receiver);
}
@@ -1063,7 +1063,7 @@ CGObjCGNU::GenerateMessageSend(CodeGenFunction &CGF,
const ObjCInterfaceDecl *Class,
const ObjCMethodDecl *Method) {
// Strip out message sends to retain / release in GC mode
- if (CGM.getLangOptions().getGCMode() != LangOptions::NonGC) {
+ if (CGM.getLangOptions().getGCMode() == LangOptions::GCOnly) {
if (Sel == RetainSel || Sel == AutoreleaseSel) {
return RValue::get(Receiver);
}
OpenPOWER on IntegriCloud