diff options
Diffstat (limited to 'compiler/dex/quick/quick_compiler.h')
-rw-r--r-- | compiler/dex/quick/quick_compiler.h | 13 |
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); }; |