Introduce bitset metadata format and bitset lowering pass.
[oota-llvm.git] / lib / Transforms / ObjCARC / ObjCARC.cpp
index 38adfa322df1e4b3a8fa94a688d2c92dc5c689bc..6ea038b8ba8c2f37126a00137d70093d73a79b2a 100644 (file)
@@ -1,4 +1,4 @@
-//===-- ObjCARC.cpp --------------------------------------------------------===//
+//===-- ObjCARC.cpp -------------------------------------------------------===//
 //
 //                     The LLVM Compiler Infrastructure
 //
 //===----------------------------------------------------------------------===//
 
 #include "ObjCARC.h"
-
+#include "llvm-c/Core.h"
 #include "llvm-c/Initialization.h"
-#include "llvm/Analysis/Passes.h"
-#include "llvm/Analysis/Verifier.h"
-#include "llvm/IR/DataLayout.h"
 #include "llvm/InitializePasses.h"
-#include "llvm/PassManager.h"
-#include "llvm/Support/Commandline.h"
+#include "llvm/Support/CommandLine.h"
+
+namespace llvm {
+  class PassRegistry;
+}
 
 using namespace llvm;
 using namespace llvm::objcarc;
@@ -30,6 +30,7 @@ using namespace llvm::objcarc;
 bool llvm::objcarc::EnableARCOpts;
 static cl::opt<bool, true>
 EnableARCOptimizations("enable-objc-arc-opts",
+                       cl::desc("enable/disable all ARC Optimizations"),
                        cl::location(EnableARCOpts),
                        cl::init(true));
 
@@ -41,6 +42,7 @@ void llvm::initializeObjCARCOpts(PassRegistry &Registry) {
   initializeObjCARCExpandPass(Registry);
   initializeObjCARCContractPass(Registry);
   initializeObjCARCOptPass(Registry);
+  initializePAEvalPass(Registry);
 }
 
 void LLVMInitializeObjCARCOpts(LLVMPassRegistryRef R) {