summaryrefslogtreecommitdiff
path: root/runtime/class_linker.h
diff options
context:
space:
mode:
author Alex Light <allight@google.com> 2019-12-03 12:20:01 +0000
committer Treehugger Robot <treehugger-gerrit@google.com> 2019-12-11 18:46:44 +0000
commit270db1ce48377e3d9ca0c3dcec834ac807ca885b (patch)
treeffc553c6ff1ad37bdc3caca01ad686fa41ca0688 /runtime/class_linker.h
parent42b9c19772542457701d5efea26aae4449dec8c7 (diff)
Revert^4 "Allow structural redefinition on non-final classes."
This reverts commit 664999a12d6fc8a8ef5c0519b12ec1e8a51bb085. Fixed issues with GC and quickened instructions in parent CLs. Reason for revert: Fixed issues with GC CHECK fail and device SEGVs. Test: ./test.py --host Test: ./test.py --target Bug: 134162467 Bug: 144168550 Change-Id: Ibacddaf45beb72184f97d53d5d048bd442578658
Diffstat (limited to 'runtime/class_linker.h')
-rw-r--r--runtime/class_linker.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/runtime/class_linker.h b/runtime/class_linker.h
index 4e38e6bce5..f993d17674 100644
--- a/runtime/class_linker.h
+++ b/runtime/class_linker.h
@@ -1456,6 +1456,10 @@ class ClassLoadCallback {
public:
virtual ~ClassLoadCallback() {}
+ // Called immediately before beginning class-definition and immediately before returning from it.
+ virtual void BeginDefineClass() REQUIRES_SHARED(Locks::mutator_lock_) {}
+ virtual void EndDefineClass() REQUIRES_SHARED(Locks::mutator_lock_) {}
+
// If set we will replace initial_class_def & initial_dex_file with the final versions. The
// callback author is responsible for ensuring these are allocated in such a way they can be
// cleaned up if another transformation occurs. Note that both must be set or null/unchanged on