unsigned ElideConstructors : 1; // Whether C++ copy constructors should be
// elided if possible.
- unsigned ObjCNewGCAPI : 1; // Generate objective-c's new GC API
private:
unsigned GC : 2; // Objective-C Garbage Collection modes. We
// declare this enum as unsigned because MSVC
OverflowChecking = 0;
ObjCGCBitmapPrint = 0;
- ObjCNewGCAPI = 1;
InstantiationDepth = 99;
// or neither.
static
void setObjCGCLValueClass(const ASTContext &Ctx, const Expr *E, LValue &LV) {
- if (Ctx.getLangOptions().getGCMode() == LangOptions::NonGC ||
- !Ctx.getLangOptions().ObjCNewGCAPI)
+ if (Ctx.getLangOptions().getGCMode() == LangOptions::NonGC)
return;
if (isa<ObjCIvarRefExpr>(E)) {
-// RUN: clang-cc -triple x86_64-apple-darwin10 -fobjc-gc -fobjc-newgc-api -emit-llvm -o %t %s &&
+// RUN: clang-cc -triple x86_64-apple-darwin10 -fobjc-gc -emit-llvm -o %t %s &&
// RUN: grep -F '@objc_assign_ivar' %t | count 14 &&
// RUN: true
-// RUN: clang-cc -triple x86_64-apple-darwin10 -fnext-runtime -fobjc-gc -fobjc-newgc-api -emit-llvm -o %t %s &&
+// RUN: clang-cc -triple x86_64-apple-darwin10 -fnext-runtime -fobjc-gc -emit-llvm -o %t %s &&
// RUN: grep -F '@objc_assign_global' %t | count 26 &&
// RUN: true
-// RUN: clang-cc -triple x86_64-apple-darwin10 -fblocks -fnext-runtime -fobjc-gc -fobjc-newgc-api -emit-llvm -o %t %s &&
+// RUN: clang-cc -triple x86_64-apple-darwin10 -fblocks -fnext-runtime -fobjc-gc -emit-llvm -o %t %s &&
// RUN: grep -F '@objc_assign_strongCast' %t | count 4 &&
// RUN: true
-// RUN: clang-cc -triple x86_64-apple-darwin10 -fnext-runtime -fobjc-gc -fobjc-newgc-api -emit-llvm -o %t %s &&
+// RUN: clang-cc -triple x86_64-apple-darwin10 -fnext-runtime -fobjc-gc -emit-llvm -o %t %s &&
// RUN: grep -F '@objc_assign_global' %t | count 7 &&
// RUN: grep -F '@objc_assign_ivar' %t | count 5 &&
// RUN: grep -F '@objc_assign_strongCast' %t | count 8 &&
-// RUN: clang-cc -triple x86_64-apple-darwin10 -fnext-runtime -fobjc-gc -fobjc-newgc-api -emit-llvm -o %t %s &&
+// RUN: clang-cc -triple x86_64-apple-darwin10 -fnext-runtime -fobjc-gc -emit-llvm -o %t %s &&
// RUN: grep -F '@objc_assign_global' %t | count 21 &&
// RUN: grep -F '@objc_assign_ivar' %t | count 11 &&
// RUN: true
ObjCEnableGC("fobjc-gc",
llvm::cl::desc("Enable Objective-C garbage collection"));
-static llvm::cl::opt<bool>
-ObjCEnableNewGCAPI("fobjc-newgc-api",
- llvm::cl::desc("Enable Objective-C garbage collection's new API"));
-
static llvm::cl::opt<bool>
ObjCEnableGCBitmapPrint("print-ivar-layout",
llvm::cl::desc("Enable Objective-C Ivar layout bitmap print trace"));
else if (ObjCEnableGC)
Options.setGCMode(LangOptions::HybridGC);
- if (ObjCEnableNewGCAPI)
- Options.ObjCNewGCAPI = 1;
-
if (ObjCEnableGCBitmapPrint)
Options.ObjCGCBitmapPrint = 1;