diff options
Diffstat (limited to 'compiler/optimizing/optimization.cc')
-rw-r--r-- | compiler/optimizing/optimization.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/compiler/optimizing/optimization.cc b/compiler/optimizing/optimization.cc index 3a2d067f4d..b28bda6e65 100644 --- a/compiler/optimizing/optimization.cc +++ b/compiler/optimizing/optimization.cc @@ -17,6 +17,7 @@ #include "optimization.h" #ifdef ART_ENABLE_CODEGEN_arm +#include "critical_native_abi_fixup_arm.h" #include "instruction_simplifier_arm.h" #endif #ifdef ART_ENABLE_CODEGEN_arm64 @@ -97,6 +98,8 @@ const char* OptimizationPassName(OptimizationPass pass) { #ifdef ART_ENABLE_CODEGEN_arm case OptimizationPass::kInstructionSimplifierArm: return arm::InstructionSimplifierArm::kInstructionSimplifierArmPassName; + case OptimizationPass::kCriticalNativeAbiFixupArm: + return arm::CriticalNativeAbiFixupArm::kCriticalNativeAbiFixupArmPassName; #endif #ifdef ART_ENABLE_CODEGEN_arm64 case OptimizationPass::kInstructionSimplifierArm64: @@ -143,6 +146,7 @@ OptimizationPass OptimizationPassByName(const std::string& pass_name) { X(OptimizationPass::kSideEffectsAnalysis); #ifdef ART_ENABLE_CODEGEN_arm X(OptimizationPass::kInstructionSimplifierArm); + X(OptimizationPass::kCriticalNativeAbiFixupArm); #endif #ifdef ART_ENABLE_CODEGEN_arm64 X(OptimizationPass::kInstructionSimplifierArm64); @@ -277,6 +281,10 @@ ArenaVector<HOptimization*> ConstructOptimizations( DCHECK(alt_name == nullptr) << "arch-specific pass does not support alternative name"; opt = new (allocator) arm::InstructionSimplifierArm(graph, stats); break; + case OptimizationPass::kCriticalNativeAbiFixupArm: + DCHECK(alt_name == nullptr) << "arch-specific pass does not support alternative name"; + opt = new (allocator) arm::CriticalNativeAbiFixupArm(graph, stats); + break; #endif #ifdef ART_ENABLE_CODEGEN_arm64 case OptimizationPass::kInstructionSimplifierArm64: |