From d923c47f745a96f5916af766dcb1c7152021b960 Mon Sep 17 00:00:00 2001 From: Anton Romanov Date: Mon, 19 Feb 2024 14:07:25 +0300 Subject: riscv64: Create InstructionSimplifierRiscv64, ShiftAdd Create InstructionSimplifierRiscv64 optimization. Replace Shl (1|2|3) and Add with Riscv64ShiftAdd IR instruction. By compiling with dex2oat all the methods of applications below I got: Facebook: 45 cases TikTok: 26 cases YouTube: 19 cases of the pattern. Test: art/test/testrunner/testrunner.py --target --64 --ndebug --optimizing Change-Id: I88903450d998983bb2a628942112d7518099c3f5 --- compiler/optimizing/optimizing_compiler.cc | 1 + 1 file changed, 1 insertion(+) (limited to 'compiler/optimizing/optimizing_compiler.cc') diff --git a/compiler/optimizing/optimizing_compiler.cc b/compiler/optimizing/optimizing_compiler.cc index f532681527..763dc88e8a 100644 --- a/compiler/optimizing/optimizing_compiler.cc +++ b/compiler/optimizing/optimizing_compiler.cc @@ -535,6 +535,7 @@ bool OptimizingCompiler::RunArchOptimizations(HGraph* graph, #if defined(ART_ENABLE_CODEGEN_riscv64) case InstructionSet::kRiscv64: { OptimizationDef riscv64_optimizations[] = { + OptDef(OptimizationPass::kInstructionSimplifierRiscv64), OptDef(OptimizationPass::kSideEffectsAnalysis), OptDef(OptimizationPass::kGlobalValueNumbering, "GVN$after_arch"), OptDef(OptimizationPass::kCriticalNativeAbiFixupRiscv64) -- cgit v1.2.3-59-g8ed1b