From 188d4316a880ae24aed315aa52dc503c4fcb1ec7 Mon Sep 17 00:00:00 2001 From: Alexandre Rames Date: Thu, 9 Apr 2015 18:30:21 +0100 Subject: Opt compiler: Instruction simplification for HAdd, HNeg, HNot, HSub. Under assumptions for the 'cost' of each IR (eg. neither HAdd nor HSub are faster than the other), transformations are only applied if they (locally) cannot degrade the quality of the graph. The code could be extended to look at uses of the IRs and detect more opportunities for optimisations. The optimisations in this patch do not look at other uses for their inputs. Change-Id: Ib60dab007af30f43421ef5bb55db2ec32fb8fc0c --- compiler/optimizing/optimizing_compiler_stats.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'compiler/optimizing/optimizing_compiler_stats.h') diff --git a/compiler/optimizing/optimizing_compiler_stats.h b/compiler/optimizing/optimizing_compiler_stats.h index b97a66719d..4d5b8d0639 100644 --- a/compiler/optimizing/optimizing_compiler_stats.h +++ b/compiler/optimizing/optimizing_compiler_stats.h @@ -47,6 +47,7 @@ enum MethodCompilationStat { kNotCompiledUnhandledInstruction, kRemovedCheckedCast, kRemovedNullCheck, + kInstructionSimplifications, kLastStat }; @@ -110,6 +111,7 @@ class OptimizingCompilerStats { case kNotCompiledUnhandledInstruction : return "kNotCompiledUnhandledInstruction"; case kRemovedCheckedCast: return "kRemovedCheckedCast"; case kRemovedNullCheck: return "kRemovedNullCheck"; + case kInstructionSimplifications: return "kInstructionSimplifications"; default: LOG(FATAL) << "invalid stat"; } return ""; -- cgit v1.2.3-59-g8ed1b