summaryrefslogtreecommitdiff
path: root/compiler/optimizing/write_barrier_elimination.cc
diff options
context:
space:
mode:
author Santiago Aboy Solanes <solanes@google.com> 2023-11-17 14:30:30 +0000
committer Santiago Aboy Solanes <solanes@google.com> 2023-11-17 17:20:41 +0000
commit5a3271d7caafefd10a20f5a5db09d2c178838b76 (patch)
tree46669e8c84a8086a4ca3e50ebe6e28890ee1e9de /compiler/optimizing/write_barrier_elimination.cc
parentcac08ecc868cc9b0b378cf380b1a18185708f4ca (diff)
Disable write-barrier elimination pass
We are able to break the `no missing card marks` of the in manual testing with write-barrier elimination. The invariant requires that no clean card shall contain any newly allocated object's reference in it. Test: manual to confirm bug Test: art/test/testrunner/testrunner.py --host --64 --optimizing -b Bug: 301833859 Bug: 310755375 Bug: 311607333 Change-Id: I91a7f9cbb3e10c5495c543802414bffb89fbbb9a
Diffstat (limited to 'compiler/optimizing/write_barrier_elimination.cc')
-rw-r--r--compiler/optimizing/write_barrier_elimination.cc9
1 files changed, 7 insertions, 2 deletions
diff --git a/compiler/optimizing/write_barrier_elimination.cc b/compiler/optimizing/write_barrier_elimination.cc
index eb70b670fe..6182125b74 100644
--- a/compiler/optimizing/write_barrier_elimination.cc
+++ b/compiler/optimizing/write_barrier_elimination.cc
@@ -21,6 +21,9 @@
#include "base/scoped_arena_containers.h"
#include "optimizing/nodes.h"
+// TODO(b/310755375, solanes): Disable WBE while we investigate crashes.
+constexpr bool kWBEEnabled = false;
+
namespace art HIDDEN {
class WBEVisitor final : public HGraphVisitor {
@@ -153,8 +156,10 @@ class WBEVisitor final : public HGraphVisitor {
};
bool WriteBarrierElimination::Run() {
- WBEVisitor wbe_visitor(graph_, stats_);
- wbe_visitor.VisitReversePostOrder();
+ if (kWBEEnabled) {
+ WBEVisitor wbe_visitor(graph_, stats_);
+ wbe_visitor.VisitReversePostOrder();
+ }
return true;
}