Lines Matching refs:dex_file

119             const DexFile& dex_file,  in ClassData()  argument
123 dex_file_(dex_file), in ClassData()
150 static const AnnotationSetItem* FindAnnotationSetForField(const DexFile& dex_file, in FindAnnotationSetForField() argument
154 const AnnotationsDirectoryItem* annotations_dir = dex_file.GetAnnotationsDirectory(class_def); in FindAnnotationSetForField()
158 const FieldAnnotationsItem* field_annotations = dex_file.GetFieldAnnotations(annotations_dir); in FindAnnotationSetForField()
165 return dex_file.GetFieldAnnotationSetItem(field_annotations[i]); in FindAnnotationSetForField()
182 const AnnotationItem* SearchAnnotationSet(const DexFile& dex_file, in SearchAnnotationSet() argument
189 const AnnotationItem* annotation_item = dex_file.GetAnnotationItem(annotation_set, i); in SearchAnnotationSet()
196 if (strcmp(descriptor, dex_file.GetTypeDescriptor(dex::TypeIndex(type_index))) == 0) { in SearchAnnotationSet()
208 bool SkipAnnotationValue(const DexFile& dex_file, const uint8_t** annotation_ptr) in SkipAnnotationValue() argument
234 if (!SkipAnnotationValue(dex_file, &annotation)) { in SkipAnnotationValue()
247 if (!SkipAnnotationValue(dex_file, &annotation)) { in SkipAnnotationValue()
268 const uint8_t* SearchEncodedAnnotation(const DexFile& dex_file, in SearchEncodedAnnotation() argument
278 dex_file.GetStringData(dex_file.GetStringId(dex::StringIndex(element_name_index))); in SearchEncodedAnnotation()
282 SkipAnnotationValue(dex_file, &annotation); in SearchEncodedAnnotation()
288 static const AnnotationSetItem* FindAnnotationSetForMethod(const DexFile& dex_file, in FindAnnotationSetForMethod() argument
291 const AnnotationsDirectoryItem* annotations_dir = dex_file.GetAnnotationsDirectory(class_def); in FindAnnotationSetForMethod()
295 const MethodAnnotationsItem* method_annotations = dex_file.GetMethodAnnotations(annotations_dir); in FindAnnotationSetForMethod()
302 return dex_file.GetMethodAnnotationSetItem(method_annotations[i]); in FindAnnotationSetForMethod()
320 const DexFile* dex_file = method->GetDexFile(); in FindAnnotationsItemForMethod() local
322 dex_file->GetAnnotationsDirectory(method->GetClassDef()); in FindAnnotationsItemForMethod()
327 dex_file->GetParameterAnnotations(annotations_dir); in FindAnnotationsItemForMethod()
343 const DexFile& dex_file = klass.GetDexFile(); in FindAnnotationSetForClass() local
349 const AnnotationsDirectoryItem* annotations_dir = dex_file.GetAnnotationsDirectory(*class_def); in FindAnnotationSetForClass()
353 return dex_file.GetClassAnnotationSet(annotations_dir); in FindAnnotationSetForClass()
419 const DexFile& dex_file = klass.GetDexFile(); in ProcessAnnotationValue() local
498 const char* msg = dex_file.GetTypeDescriptor(type_index); in ProcessAnnotationValue()
699 const DexFile& dex_file = klass.GetDexFile(); in CreateAnnotationMember() local
704 const char* name = dex_file.GetStringData(dex::StringIndex(element_name_index)); in CreateAnnotationMember()
763 const DexFile& dex_file = klass.GetDexFile(); in GetAnnotationItemFromAnnotationSet() local
765 const AnnotationItem* annotation_item = dex_file.GetAnnotationItem(annotation_set, i); in GetAnnotationItemFromAnnotationSet()
814 const DexFile& dex_file = klass.GetDexFile(); in GetAnnotationValue() local
816 SearchEncodedAnnotation(dex_file, annotation_item->annotation_, annotation_name); in GetAnnotationValue()
877 const DexFile& dex_file = klass.GetDexFile(); in GetSignatureValue() local
880 SearchAnnotationSet(dex_file, annotation_set, "Ldalvik/annotation/Signature;", in GetSignatureValue()
900 const DexFile& dex_file = klass.GetDexFile(); in GetThrowsValue() local
902 SearchAnnotationSet(dex_file, annotation_set, "Ldalvik/annotation/Throws;", in GetThrowsValue()
925 const DexFile& dex_file = klass.GetDexFile(); in ProcessAnnotationSet() local
943 const AnnotationItem* annotation_item = dex_file.GetAnnotationItem(annotation_set, i); in ProcessAnnotationSet()
982 const DexFile& dex_file = klass.GetDexFile(); in ProcessAnnotationSetRefList() local
1000 const AnnotationSetItem* set_item = dex_file.GetSetRefItemItem(set_ref_item); in ProcessAnnotationSetRefList()
1060 const DexFile* dex_file = &klass.GetDexFile(); in GetAnnotationDefaultValue() local
1062 dex_file->GetAnnotationsDirectory(*klass.GetClassDef()); in GetAnnotationDefaultValue()
1067 dex_file->GetClassAnnotationSet(annotations_dir); in GetAnnotationDefaultValue()
1071 const AnnotationItem* annotation_item = SearchAnnotationSet(*dex_file, annotation_set, in GetAnnotationDefaultValue()
1077 SearchEncodedAnnotation(*dex_file, annotation_item->annotation_, "value"); in GetAnnotationDefaultValue()
1085 annotation = SearchEncodedAnnotation(*dex_file, annotation, method->GetName()); in GetAnnotationDefaultValue()
1128 const DexFile* dex_file = method->GetDexFile(); in GetParameterAnnotations() local
1135 dex_file->GetParameterAnnotationSetRefList(parameter_annotations); in GetParameterAnnotations()
1144 const DexFile* dex_file = method->GetDexFile(); in GetNumberOfAnnotatedMethodParameters() local
1151 dex_file->GetParameterAnnotationSetRefList(parameter_annotations); in GetNumberOfAnnotatedMethodParameters()
1161 const DexFile* dex_file = method->GetDexFile(); in GetAnnotationForMethodParameter() local
1167 dex_file->GetParameterAnnotationSetRefList(parameter_annotations); in GetAnnotationForMethodParameter()
1176 dex_file->GetSetRefItemItem(annotation_set_ref); in GetAnnotationForMethodParameter()
1196 const DexFile* dex_file = method->GetDexFile(); in GetParametersMetadataForMethod() local
1198 SearchAnnotationSet(*dex_file, in GetParametersMetadataForMethod()
1278 static bool IsMethodBuildAnnotationPresent(const DexFile& dex_file, in IsMethodBuildAnnotationPresent() argument
1283 const AnnotationItem* annotation_item = dex_file.GetAnnotationItem(&annotation_set, i); in IsMethodBuildAnnotationPresent()
1289 const char* descriptor = dex_file.GetTypeDescriptor(dex::TypeIndex(type_index)); in IsMethodBuildAnnotationPresent()
1298 static uint32_t GetNativeMethodAnnotationAccessFlags(const DexFile& dex_file, in GetNativeMethodAnnotationAccessFlags() argument
1302 dex_file, in GetNativeMethodAnnotationAccessFlags()
1309 dex_file, in GetNativeMethodAnnotationAccessFlags()
1319 uint32_t GetNativeMethodAnnotationAccessFlags(const DexFile& dex_file, in GetNativeMethodAnnotationAccessFlags() argument
1323 FindAnnotationSetForMethod(dex_file, class_def, method_index); in GetNativeMethodAnnotationAccessFlags()
1327 return GetNativeMethodAnnotationAccessFlags(dex_file, *annotation_set); in GetNativeMethodAnnotationAccessFlags()
1330 uint32_t GetNativeMethodAnnotationAccessFlags(const DexFile& dex_file, in GetNativeMethodAnnotationAccessFlags() argument
1333 dex_file, *dex_file.GetMethodAnnotationSetItem(method_annotations)); in GetNativeMethodAnnotationAccessFlags()
1336 static bool MethodIsNeverCompile(const DexFile& dex_file, in MethodIsNeverCompile() argument
1339 dex_file, in MethodIsNeverCompile()
1345 bool MethodIsNeverCompile(const DexFile& dex_file, in MethodIsNeverCompile() argument
1349 FindAnnotationSetForMethod(dex_file, class_def, method_index); in MethodIsNeverCompile()
1353 return MethodIsNeverCompile(dex_file, *annotation_set); in MethodIsNeverCompile()
1356 bool MethodIsNeverCompile(const DexFile& dex_file, in MethodIsNeverCompile() argument
1358 return MethodIsNeverCompile(dex_file, *dex_file.GetMethodAnnotationSetItem(method_annotations)); in MethodIsNeverCompile()
1361 bool MethodIsNeverInline(const DexFile& dex_file, in MethodIsNeverInline() argument
1365 FindAnnotationSetForMethod(dex_file, class_def, method_index); in MethodIsNeverInline()
1370 dex_file, in MethodIsNeverInline()
1376 bool FieldIsReachabilitySensitive(const DexFile& dex_file, in FieldIsReachabilitySensitive() argument
1381 FindAnnotationSetForField(dex_file, class_def, field_index); in FieldIsReachabilitySensitive()
1385 const AnnotationItem* annotation_item = SearchAnnotationSet(dex_file, annotation_set, in FieldIsReachabilitySensitive()
1391 bool MethodIsReachabilitySensitive(const DexFile& dex_file, in MethodIsReachabilitySensitive() argument
1396 FindAnnotationSetForMethod(dex_file, class_def, method_index); in MethodIsReachabilitySensitive()
1400 const AnnotationItem* annotation_item = SearchAnnotationSet(dex_file, annotation_set, in MethodIsReachabilitySensitive()
1405 static bool MethodIsReachabilitySensitive(const DexFile& dex_file, in MethodIsReachabilitySensitive() argument
1408 DCHECK(method_index < dex_file.NumMethodIds()); in MethodIsReachabilitySensitive()
1409 const dex::MethodId& method_id = dex_file.GetMethodId(method_index); in MethodIsReachabilitySensitive()
1411 const dex::ClassDef * class_def = dex_file.FindClassDef(class_index); in MethodIsReachabilitySensitive()
1413 && MethodIsReachabilitySensitive(dex_file, *class_def, method_index); in MethodIsReachabilitySensitive()
1416 bool MethodContainsRSensitiveAccess(const DexFile& dex_file, in MethodContainsRSensitiveAccess() argument
1424 uint32_t code_item_offset = dex_file.FindCodeItemOffset(class_def, method_index); in MethodContainsRSensitiveAccess()
1425 const dex::CodeItem* code_item = dex_file.GetCodeItem(code_item_offset); in MethodContainsRSensitiveAccess()
1426 CodeItemInstructionAccessor accessor(dex_file, code_item); in MethodContainsRSensitiveAccess()
1448 DCHECK(field_index < dex_file.NumFieldIds()); in MethodContainsRSensitiveAccess()
1451 const dex::FieldId& field_id = dex_file.GetFieldId(field_index); in MethodContainsRSensitiveAccess()
1453 const dex::ClassDef * field_class_def = dex_file.FindClassDef(class_index); in MethodContainsRSensitiveAccess()
1457 && FieldIsReachabilitySensitive(dex_file, *field_class_def, field_index)) { in MethodContainsRSensitiveAccess()
1474 if (MethodIsReachabilitySensitive(dex_file, called_method_index)) { in MethodContainsRSensitiveAccess()
1484 if (MethodIsReachabilitySensitive(dex_file, called_method_index)) { in MethodContainsRSensitiveAccess()
1504 bool HasDeadReferenceSafeAnnotation(const DexFile& dex_file, in HasDeadReferenceSafeAnnotation() argument
1510 dex_file.GetAnnotationsDirectory(class_def); in HasDeadReferenceSafeAnnotation()
1514 const AnnotationSetItem* annotation_set = dex_file.GetClassAnnotationSet(annotations_dir); in HasDeadReferenceSafeAnnotation()
1518 const AnnotationItem* annotation_item = SearchAnnotationSet(dex_file, annotation_set, in HasDeadReferenceSafeAnnotation()
1804 const DexFile& dex_file = klass->GetDexFile(); in getRecordAnnotationElement() local
1810 dex_file, annotation_set, "Ldalvik/annotation/Record;", DexFile::kDexVisibilitySystem); in getRecordAnnotationElement()
1815 SearchEncodedAnnotation(dex_file, annotation_item->annotation_, element_name); in getRecordAnnotationElement()
1848 int32_t GetLineNumFromPC(const DexFile* dex_file, ArtMethod* method, uint32_t rel_pc) { in GetLineNumFromPC() argument
1856 DCHECK(accessor.HasCodeItem()) << method->PrettyMethod() << " " << dex_file->GetLocation(); in GetLineNumFromPC()
1915 const DexFile& dex_file, in VisitEncodedValue() argument
1945 klass, dex_file, annotation_ptr, visitor, element_name, next_depth, i); in VisitEncodedValue()
1948 SkipAnnotationValue(dex_file, annotation_ptr); in VisitEncodedValue()
1961 SkipAnnotationValue(dex_file, annotation_ptr); in VisitEncodedValue()
1975 SkipAnnotationValue(dex_file, annotation_ptr); in VisitEncodedValue()
1991 const DexFile& dex_file = data.GetDexFile(); in VisitClassAnnotations() local
1993 const AnnotationItem* annotation_item = dex_file.GetAnnotationItem(annotation_set, i); in VisitClassAnnotations()
1997 const char* annotation_descriptor = dex_file.GetTypeDescriptor(dex::TypeIndex(type_index)); in VisitClassAnnotations()
2013 dex_file.GetStringData(dex_file.GetStringId(dex::StringIndex(element_name_index))); in VisitClassAnnotations()
2016 data, dex_file, &annotation, visitor, element_name, /*depth=*/0, /*ignored*/ 0); in VisitClassAnnotations()