Disable bitstring type check runtime hooks.
Introduce a build flag for the bitstring type check, put
runtime hooks behind the flag and set the flag to false.
Also add bitstring initialization for proxy classes, a test
and a benchmark for the type checks.
Test: m test-art-host-gtest
Test: testrunner.py --host --interpreter
Test: Repeat with kBitstringSubtypeCheckEnabled = true.
Bug: 73299705
Change-Id: Ibcd88a828c7addc0473d8c428818734f80226b19
diff --git a/runtime/mirror/class.h b/runtime/mirror/class.h
index ced7c7c..b5deffb 100644
--- a/runtime/mirror/class.h
+++ b/runtime/mirror/class.h
@@ -81,7 +81,7 @@
template<VerifyObjectFlags kVerifyFlags = kDefaultVerifyFlags>
ClassStatus GetStatus() REQUIRES_SHARED(Locks::mutator_lock_) {
// Avoid including "subtype_check_bits_and_status.h" to get the field.
- // The ClassStatus is always in the 4 most-significant of status_.
+ // The ClassStatus is always in the 4 most-significant bits of status_.
return enum_cast<ClassStatus>(
static_cast<uint32_t>(GetField32Volatile<kVerifyFlags>(StatusOffset())) >> (32 - 4));
}