Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / tools / clang / blink_gc_plugin / BlinkGCPlugin.cpp
index 7b248bc..300e90e 100644 (file)
@@ -8,6 +8,8 @@
 // Checks that are implemented:
 // [currently none]
 
+#include "Config.h"
+
 #include "clang/AST/AST.h"
 #include "clang/AST/ASTConsumer.h"
 #include "clang/Frontend/CompilerInstance.h"
@@ -54,8 +56,13 @@ class BlinkGCPluginAction : public PluginASTAction {
     bool parsed = true;
 
     for (size_t i = 0; i < args.size() && parsed; ++i) {
-      parsed = false;
-      llvm::errs() << "Unknown blink-gc-plugin argument: " << args[i] << "\n";
+      if (args[i] == "enable-oilpan") {
+        // TODO: Remove this once all transition types are eliminated.
+        Config::set_oilpan_enabled(true);
+      } else {
+        parsed = false;
+        llvm::errs() << "Unknown blink-gc-plugin argument: " << args[i] << "\n";
+      }
     }
 
     return parsed;
@@ -67,5 +74,7 @@ class BlinkGCPluginAction : public PluginASTAction {
 
 }  // namespace
 
+bool Config::oilpan_enabled_ = false;
+
 static FrontendPluginRegistry::Add<BlinkGCPluginAction>
 X("blink-gc-plugin", "Check Blink GC invariants");