summaryrefslogtreecommitdiff
path: root/compiler/optimizing/optimizing_compiler_stats.h
diff options
context:
space:
mode:
author Santiago Aboy Solanes <solanes@google.com> 2023-11-14 13:42:16 +0000
committer Santiago Aboy Solanes <solanes@google.com> 2024-01-16 14:12:40 +0000
commitd518e291cacf9f6279742f6b2ce61084849968a8 (patch)
tree62912b306a02f23f99841a31734ccdd61e4d1c16 /compiler/optimizing/optimizing_compiler_stats.h
parentae805cf3f90230f017875b438efdb0867a7889c3 (diff)
Allow LSE to remove acquire/release operations
If we are synchronizing on a removable singleton, we can guarantee that no other thread has access to it. We can remove MonitorOperations related to that singleton since they are redundant. In a similar vein, Volatile load/stores related to removable singletons can be treated as regular load/stores. Bug: 227283233 Test: art/test/testrunner/testrunner.py --host --64 --optimizing -b Change-Id: Ia049ff7749ce341bdd05e0ade57221b44a8d298f
Diffstat (limited to 'compiler/optimizing/optimizing_compiler_stats.h')
-rw-r--r--compiler/optimizing/optimizing_compiler_stats.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/compiler/optimizing/optimizing_compiler_stats.h b/compiler/optimizing/optimizing_compiler_stats.h
index 4549af3cbf..60d18d2f24 100644
--- a/compiler/optimizing/optimizing_compiler_stats.h
+++ b/compiler/optimizing/optimizing_compiler_stats.h
@@ -50,6 +50,9 @@ enum class MethodCompilationStat {
kRemovedDeadPhi,
kRemovedTry,
kRemovedNullCheck,
+ kRemovedVolatileLoad,
+ kRemovedVolatileStore,
+ kRemovedMonitorOp,
kNotCompiledSkipped,
kNotCompiledInvalidBytecode,
kNotCompiledThrowCatchLoop,