diff options
Diffstat (limited to 'tools/cpp-define-generator/offset_dexcache.def')
| -rw-r--r-- | tools/cpp-define-generator/offset_dexcache.def | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/tools/cpp-define-generator/offset_dexcache.def b/tools/cpp-define-generator/offset_dexcache.def new file mode 100644 index 0000000000..ec4b248e5d --- /dev/null +++ b/tools/cpp-define-generator/offset_dexcache.def @@ -0,0 +1,33 @@ +/* + * Copyright (C) 2016 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +// Offsets within art::ArtMethod. + +#if defined(DEFINE_INCLUDE_DEPENDENCIES) +#include "art_method.h" // art::ArtMethod +#endif + +#define DEFINE_ART_METHOD_OFFSET(field_name, method_name) \ + DEFINE_EXPR(ART_METHOD_ ## field_name ## _OFFSET_32, int32_t, art::ArtMethod::method_name##Offset(4).Int32Value()) \ + DEFINE_EXPR(ART_METHOD_ ## field_name ## _OFFSET_64, int32_t, art::ArtMethod::method_name##Offset(8).Int32Value()) + +// New macro suffix Method Name (of the Offset method) +DEFINE_ART_METHOD_OFFSET(DEX_CACHE_METHODS, DexCacheResolvedMethods) +DEFINE_ART_METHOD_OFFSET(DEX_CACHE_TYPES, DexCacheResolvedTypes) +DEFINE_ART_METHOD_OFFSET(JNI, EntryPointFromJni) +DEFINE_ART_METHOD_OFFSET(QUICK_CODE, EntryPointFromQuickCompiledCode) + +#undef DEFINE_ART_METHOD_OFFSET |