summaryrefslogtreecommitdiffstats
path: root/compiler/dex/quick/quick_compiler.h
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/dex/quick/quick_compiler.h')
-rw-r--r--compiler/dex/quick/quick_compiler.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/compiler/dex/quick/quick_compiler.h b/compiler/dex/quick/quick_compiler.h
index 43dd578..ac2d11b 100644
--- a/compiler/dex/quick/quick_compiler.h
+++ b/compiler/dex/quick/quick_compiler.h
@@ -19,6 +19,12 @@
#include "compiler.h"
+#ifdef QC_STRONG
+#define QC_WEAK
+#else
+#define QC_WEAK __attribute__((weak))
+#endif
+
namespace art {
class Compiler;
@@ -65,12 +71,19 @@ class QuickCompiler : public Compiler {
return post_opt_pass_manager_.get();
}
+ bool CheckMoreConditions(CompilationUnit* cu) const QC_WEAK;
+
+ void SetCheckBailOutFlag() { check_bail_out_ = true; }
+ void ResetCheckBailOutFlag() { check_bail_out_ = false; }
+ bool GetCheckBailOutFlag() const { return check_bail_out_; }
+
protected:
explicit QuickCompiler(CompilerDriver* driver);
private:
std::unique_ptr<PassManager> pre_opt_pass_manager_;
std::unique_ptr<PassManager> post_opt_pass_manager_;
+ bool check_bail_out_;
DISALLOW_COPY_AND_ASSIGN(QuickCompiler);
};