1*795d594fSAndroid Build Coastguard Worker/* 2*795d594fSAndroid Build Coastguard Worker * Copyright (C) 2018 The Android Open Source Project 3*795d594fSAndroid Build Coastguard Worker * 4*795d594fSAndroid Build Coastguard Worker * Licensed under the Apache License, Version 2.0 (the "License"); 5*795d594fSAndroid Build Coastguard Worker * you may not use this file except in compliance with the License. 6*795d594fSAndroid Build Coastguard Worker * You may obtain a copy of the License at 7*795d594fSAndroid Build Coastguard Worker * 8*795d594fSAndroid Build Coastguard Worker * http://www.apache.org/licenses/LICENSE-2.0 9*795d594fSAndroid Build Coastguard Worker * 10*795d594fSAndroid Build Coastguard Worker * Unless required by applicable law or agreed to in writing, software 11*795d594fSAndroid Build Coastguard Worker * distributed under the License is distributed on an "AS IS" BASIS, 12*795d594fSAndroid Build Coastguard Worker * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13*795d594fSAndroid Build Coastguard Worker * See the License for the specific language governing permissions and 14*795d594fSAndroid Build Coastguard Worker * limitations under the License. 15*795d594fSAndroid Build Coastguard Worker */ 16*795d594fSAndroid Build Coastguard Worker 17*795d594fSAndroid Build Coastguard Worker#if ASM_DEFINE_INCLUDE_DEPENDENCIES 18*795d594fSAndroid Build Coastguard Worker#include "art_method.h" 19*795d594fSAndroid Build Coastguard Worker#include "imtable.h" 20*795d594fSAndroid Build Coastguard Worker#endif 21*795d594fSAndroid Build Coastguard Worker 22*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_ACCESS_FLAGS_OFFSET, 23*795d594fSAndroid Build Coastguard Worker art::ArtMethod::AccessFlagsOffset().Int32Value()) 24*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_IS_INTRINSIC_FLAG, 25*795d594fSAndroid Build Coastguard Worker art::kAccIntrinsic) 26*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_IS_INTRINSIC_FLAG_BIT, 27*795d594fSAndroid Build Coastguard Worker art::MostSignificantBit(art::kAccIntrinsic)) 28*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_IS_MEMORY_SHARED_FLAG, 29*795d594fSAndroid Build Coastguard Worker art::kAccMemorySharedMethod) 30*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_IS_MEMORY_SHARED_FLAG_BIT, 31*795d594fSAndroid Build Coastguard Worker art::MostSignificantBit(art::kAccMemorySharedMethod)) 32*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_IS_STATIC_FLAG, 33*795d594fSAndroid Build Coastguard Worker art::kAccStatic) 34*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_IS_STATIC_FLAG_BIT, 35*795d594fSAndroid Build Coastguard Worker art::MostSignificantBit(art::kAccStatic)) 36*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_NTERP_INVOKE_FAST_PATH_FLAG, 37*795d594fSAndroid Build Coastguard Worker art::kAccNterpInvokeFastPathFlag) 38*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_NTERP_INVOKE_FAST_PATH_FLAG_BIT, 39*795d594fSAndroid Build Coastguard Worker art::MostSignificantBit(art::kAccNterpInvokeFastPathFlag)) 40*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_NTERP_ENTRY_POINT_FAST_PATH_FLAG, 41*795d594fSAndroid Build Coastguard Worker art::kAccNterpEntryPointFastPathFlag) 42*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_NTERP_ENTRY_POINT_FAST_PATH_FLAG_BIT, 43*795d594fSAndroid Build Coastguard Worker art::MostSignificantBit(art::kAccNterpEntryPointFastPathFlag)) 44*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_IMT_MASK, 45*795d594fSAndroid Build Coastguard Worker art::ImTable::kSizeTruncToPowerOfTwo - 1) 46*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_DECLARING_CLASS_OFFSET, 47*795d594fSAndroid Build Coastguard Worker art::ArtMethod::DeclaringClassOffset().Int32Value()) 48*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_JNI_OFFSET_32, 49*795d594fSAndroid Build Coastguard Worker art::ArtMethod::EntryPointFromJniOffset(art::PointerSize::k32).Int32Value()) 50*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_JNI_OFFSET_64, 51*795d594fSAndroid Build Coastguard Worker art::ArtMethod::EntryPointFromJniOffset(art::PointerSize::k64).Int32Value()) 52*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_DATA_OFFSET_32, 53*795d594fSAndroid Build Coastguard Worker art::ArtMethod::DataOffset(art::PointerSize::k32).Int32Value()) 54*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_DATA_OFFSET_64, 55*795d594fSAndroid Build Coastguard Worker art::ArtMethod::DataOffset(art::PointerSize::k64).Int32Value()) 56*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_QUICK_CODE_OFFSET_32, 57*795d594fSAndroid Build Coastguard Worker art::ArtMethod::EntryPointFromQuickCompiledCodeOffset(art::PointerSize::k32).Int32Value()) 58*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_QUICK_CODE_OFFSET_64, 59*795d594fSAndroid Build Coastguard Worker art::ArtMethod::EntryPointFromQuickCompiledCodeOffset(art::PointerSize::k64).Int32Value()) 60*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_METHOD_INDEX_OFFSET, 61*795d594fSAndroid Build Coastguard Worker art::ArtMethod::MethodIndexOffset().Int32Value()) 62*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_IMT_INDEX_OFFSET, 63*795d594fSAndroid Build Coastguard Worker art::ArtMethod::ImtIndexOffset().Int32Value()) 64*795d594fSAndroid Build Coastguard WorkerASM_DEFINE(ART_METHOD_HOTNESS_COUNT_OFFSET, 65*795d594fSAndroid Build Coastguard Worker art::ArtMethod::HotnessCountOffset().Int32Value()) 66