From ab3f8d27ae8737c72b8b844604e6e3df6f2ad7e7 Mon Sep 17 00:00:00 2001 From: Nicolas Geoffray Date: Sat, 23 Jul 2022 15:49:51 +0000 Subject: Reland "Add clinit checks at entry for some boot image methods." This reverts commit 0ae89052f7213701b8b3a782266e84b3d3600dbf. Bug: 162110941 Bug: 238472973 Reason for revert: Remove code that forced using clinit entrypoints in debug mode. Change-Id: Ibc04e91b09deaa1ac23d32b9e45281f3299d2981 --- compiler/optimizing/code_generator.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'compiler/optimizing/code_generator.h') diff --git a/compiler/optimizing/code_generator.h b/compiler/optimizing/code_generator.h index 7b46e13a44..de247a98b9 100644 --- a/compiler/optimizing/code_generator.h +++ b/compiler/optimizing/code_generator.h @@ -37,6 +37,7 @@ #include "optimizing_compiler_stats.h" #include "read_barrier_option.h" #include "stack.h" +#include "subtype_check.h" #include "utils/assembler.h" #include "utils/label.h" @@ -60,6 +61,14 @@ static int64_t constexpr kPrimLongMax = INT64_C(0x7fffffffffffffff); static const ReadBarrierOption gCompilerReadBarrierOption = gUseReadBarrier ? kWithReadBarrier : kWithoutReadBarrier; +constexpr size_t status_lsb_position = SubtypeCheckBits::BitStructSizeOf(); +constexpr size_t status_byte_offset = + mirror::Class::StatusOffset().SizeValue() + (status_lsb_position / kBitsPerByte); +constexpr uint32_t shifted_visibly_initialized_value = + enum_cast(ClassStatus::kVisiblyInitialized) << (status_lsb_position % kBitsPerByte); +constexpr uint32_t shifted_initializing_value = + enum_cast(ClassStatus::kInitializing) << (status_lsb_position % kBitsPerByte); + class Assembler; class CodeGenerator; class CompilerOptions; -- cgit v1.2.3-59-g8ed1b