summaryrefslogtreecommitdiff
path: root/compiler/optimizing/optimization.h
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/optimizing/optimization.h')
-rw-r--r--compiler/optimizing/optimization.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/compiler/optimizing/optimization.h b/compiler/optimizing/optimization.h
index 2113df0c81..134e3cdc7a 100644
--- a/compiler/optimizing/optimization.h
+++ b/compiler/optimizing/optimization.h
@@ -18,10 +18,11 @@
#define ART_COMPILER_OPTIMIZING_OPTIMIZATION_H_
#include "base/arena_object.h"
+#include "base/macros.h"
#include "nodes.h"
#include "optimizing_compiler_stats.h"
-namespace art {
+namespace art HIDDEN {
class CodeGenerator;
class DexCompilationUnit;
@@ -42,7 +43,7 @@ class HOptimization : public ArenaObject<kArenaAllocOptimization> {
// Return the name of the pass. Pass names for a single HOptimization should be of form
// <optimization_name> or <optimization_name>$<pass_name> for common <optimization_name> prefix.
- // Example: 'instruction_simplifier', 'instruction_simplifier$after_bce',
+ // Example: 'instruction_simplifier', 'instruction_simplifier$before_codegen',
// 'instruction_simplifier$before_codegen'.
const char* GetPassName() const { return pass_name_; }
@@ -66,6 +67,7 @@ class HOptimization : public ArenaObject<kArenaAllocOptimization> {
// field is preferred over a string lookup at places where performance matters.
// TODO: generate this table and lookup methods below automatically?
enum class OptimizationPass {
+ kAggressiveConstantFolding,
kAggressiveInstructionSimplifier,
kBoundsCheckElimination,
kCHAGuardOptimization,
@@ -83,6 +85,7 @@ enum class OptimizationPass {
kScheduling,
kSelectGenerator,
kSideEffectsAnalysis,
+ kWriteBarrierElimination,
#ifdef ART_ENABLE_CODEGEN_arm
kInstructionSimplifierArm,
kCriticalNativeAbiFixupArm,