Home
last modified time | relevance | path

Searched refs:RegType (Results 1 – 15 of 15) sorted by relevance

/art/runtime/verifier/
Dregister_line.h33 class RegType; variable
104 const RegType& new_type)
109 const RegType& new_type1,
110 const RegType& new_type2)
114 void SetResultRegisterType(MethodVerifier* verifier, const RegType& new_type)
117 void SetResultRegisterTypeWide(const RegType& new_type1, const RegType& new_type2)
121 const RegType& GetRegisterType(MethodVerifier* verifier, uint32_t vsrc) const;
125 const RegType& check_type)
130 const RegType& check_type1,
131 const RegType& check_type2)
[all …]
Dreg_type_test.cc41 const RegType& ref_type_const_0 = cache.FromCat1Const(10, true); in TEST_F()
42 const RegType& ref_type_const_1 = cache.FromCat1Const(10, true); in TEST_F()
43 const RegType& ref_type_const_2 = cache.FromCat1Const(30, true); in TEST_F()
44 const RegType& ref_type_const_3 = cache.FromCat1Const(30, false); in TEST_F()
49 const RegType& ref_type_const_wide_0 = cache.FromCat2ConstHi(50, true); in TEST_F()
50 const RegType& ref_type_const_wide_1 = cache.FromCat2ConstHi(50, true); in TEST_F()
53 const RegType& ref_type_const_wide_2 = cache.FromCat2ConstLo(50, true); in TEST_F()
54 const RegType& ref_type_const_wide_3 = cache.FromCat2ConstLo(50, true); in TEST_F()
55 const RegType& ref_type_const_wide_4 = cache.FromCat2ConstLo(55, true); in TEST_F()
66 const RegType& precise_lo = cache.FromCat2ConstLo(static_cast<int32_t>(val), true); in TEST_F()
[all …]
Dregister_line.cc32 const RegType& type = GetRegisterType(verifier, i); in CheckConstructorReturn()
47 const RegType& RegisterLine::GetInvocationThis(MethodVerifier* verifier, const Instruction* inst, in GetInvocationThis()
58 const RegType& this_type = GetRegisterType(verifier, this_reg); in GetInvocationThis()
71 const RegType& check_type1, in VerifyRegisterTypeWide()
72 const RegType& check_type2) { in VerifyRegisterTypeWide()
75 const RegType& src_type = GetRegisterType(verifier, vsrc); in VerifyRegisterTypeWide()
81 const RegType& src_type_h = GetRegisterType(verifier, vsrc + 1); in VerifyRegisterTypeWide()
94 void RegisterLine::MarkRefsAsInitialized(MethodVerifier* verifier, const RegType& uninit_type) { in MarkRefsAsInitialized()
96 const RegType& init_type = verifier->GetRegTypeCache()->FromUninitialized(uninit_type); in MarkRefsAsInitialized()
153 void RegisterLine::MarkUninitRefsAsInvalid(MethodVerifier* verifier, const RegType& uninit_type) { in MarkUninitRefsAsInvalid()
[all …]
Dreg_type_cache.h40 class RegType; variable
58 const art::verifier::RegType& GetFromId(uint16_t id) const;
59 const RegType& From(mirror::ClassLoader* loader, const char* descriptor, bool precise)
62 const RegType* FindClass(mirror::Class* klass, bool precise) const
65 const RegType* InsertClass(const StringPiece& descriptor, mirror::Class* klass, bool precise)
68 const RegType& FromClass(const char* descriptor, mirror::Class* klass, bool precise)
76 const RegType& FromDescriptor(mirror::ClassLoader* loader, const char* descriptor, bool precise)
78 const RegType& FromUnresolvedMerge(const RegType& left, const RegType& right)
80 const RegType& FromUnresolvedSuperClass(const RegType& child)
130 const RegType& JavaLangThrowable(bool precise) SHARED_REQUIRES(Locks::mutator_lock_);
[all …]
Dreg_type-inl.h29 inline bool RegType::CanAccess(const RegType& other) const { in CanAccess()
45 inline bool RegType::CanAccessMember(mirror::Class* klass, uint32_t access_flags) const { in CanAccessMember()
56 inline bool RegType::IsConstantBoolean() const { in IsConstantBoolean()
65 inline bool RegType::AssignableFrom(const RegType& lhs, const RegType& rhs, bool strict) { in AssignableFrom()
119 inline bool RegType::IsAssignableFrom(const RegType& src) const { in IsAssignableFrom()
123 inline bool RegType::IsStrictlyAssignableFrom(const RegType& src) const { in IsStrictlyAssignableFrom()
188 inline void* RegType::operator new(size_t size, ScopedArenaAllocator* arena) { in new()
Dreg_type_cache.cc38 ALWAYS_INLINE static inline bool MatchingPrecisionForClass(const RegType* entry, bool precise) in MatchingPrecisionForClass()
74 const RegType& RegTypeCache::FromDescriptor(mirror::ClassLoader* loader, in FromDescriptor()
107 const RegType& RegTypeCache::RegTypeFromPrimitiveType(Primitive::Type prim_type) const { in RegTypeFromPrimitiveType()
133 const RegType* entry = entries_[idx]; in MatchDescriptor()
173 const RegType& RegTypeCache::From(mirror::ClassLoader* loader, in From()
196 RegType* entry; in From()
226 const RegType* RegTypeCache::FindClass(mirror::Class* klass, bool precise) const { in FindClass()
236 const RegType* reg_type = pair.second; in FindClass()
245 const RegType* RegTypeCache::InsertClass(const StringPiece& descriptor, in InsertClass()
250 RegType* const reg_type = precise in InsertClass()
[all …]
Dregister_line-inl.h32 inline const RegType& RegisterLine::GetRegisterType(MethodVerifier* verifier, uint32_t vsrc) const { in GetRegisterType()
40 const RegType& new_type) { in SetRegisterType()
65 const RegType& new_type1, in SetRegisterTypeWide()
66 const RegType& new_type2) { in SetRegisterTypeWide()
87 inline void RegisterLine::SetResultRegisterType(MethodVerifier* verifier, const RegType& new_type) { in SetResultRegisterType()
94 inline void RegisterLine::SetResultRegisterTypeWide(const RegType& new_type1, in SetResultRegisterTypeWide()
95 const RegType& new_type2) { in SetResultRegisterTypeWide()
104 const RegType& type = GetRegisterType(verifier, vsrc); in CopyRegister1()
119 const RegType& type_l = GetRegisterType(verifier, vsrc); in CopyRegister2()
120 const RegType& type_h = GetRegisterType(verifier, vsrc + 1); in CopyRegister2()
[all …]
Dreg_type_cache-inl.h30 inline const art::verifier::RegType& RegTypeCache::GetFromId(uint16_t id) const { in GetFromId()
32 const RegType* result = entries_[id]; in GetFromId()
84 const RegType* result = &FromClass("Ljava/lang/Class;", mirror::Class::GetJavaLangClass(), true); in JavaLangClass()
91 const RegType* result = &FromClass("Ljava/lang/String;", mirror::String::GetJavaLangString(), in JavaLangString()
97 inline const RegType& RegTypeCache::JavaLangThrowable(bool precise) { in JavaLangThrowable()
98 const RegType* result = &FromClass("Ljava/lang/Throwable;", in JavaLangThrowable()
109 inline const RegType& RegTypeCache::JavaLangObject(bool precise) { in JavaLangObject()
110 const RegType* result = &FromClass("Ljava/lang/Object;", in JavaLangObject()
Dreg_type.h49 class RegType {
108 inline bool CheckWidePair(const RegType& type_h) const { in CheckWidePair()
120 const RegType& HighHalf(RegTypeCache* cache) const
194 const RegType& GetSuperClass(RegTypeCache* cache) const
201 bool CanAccess(const RegType& other) const
212 bool IsAssignableFrom(const RegType& src) const
222 bool CanAssignArray(const RegType& src, RegTypeCache& reg_types,
229 bool IsStrictlyAssignableFrom(const RegType& src) const
233 bool Equals(const RegType& other) const { return GetId() == other.GetId(); } in Equals()
237 const RegType& Merge(const RegType& incoming_type, RegTypeCache* reg_types) const
[all …]
Dreg_type.cc51 : RegType(klass, descriptor, cache_id) { in PrimitiveType()
303 : RegType(klass, descriptor, cache_id) { in PreciseReferenceType()
450 const RegType& RegType::HighHalf(RegTypeCache* cache) const { in HighHalf()
463 Primitive::Type RegType::GetPrimitiveType() const { in GetPrimitiveType()
498 const RegType& RegType::GetSuperClass(RegTypeCache* cache) const { in GetSuperClass()
520 bool RegType::IsJavaLangObject() const SHARED_REQUIRES(Locks::mutator_lock_) { in IsJavaLangObject()
524 bool RegType::IsObjectArrayTypes() const SHARED_REQUIRES(Locks::mutator_lock_) { in IsObjectArrayTypes()
545 bool RegType::IsArrayTypes() const SHARED_REQUIRES(Locks::mutator_lock_) { in IsArrayTypes()
562 bool RegType::IsJavaLangObjectArray() const { in IsJavaLangObjectArray()
570 bool RegType::IsInstantiableTypes() const { in IsInstantiableTypes()
[all …]
Dmethod_verifier.h49 class RegType; variable
261 const RegType& ResolveCheckedClass(uint32_t class_idx)
587 void VerifyPrimitivePut(const RegType& target_type, const RegType& insn_type,
594 void VerifyAGet(const Instruction* inst, const RegType& insn_type,
598 void VerifyAPut(const Instruction* inst, const RegType& insn_type,
602 ArtField* GetInstanceField(const RegType& obj_type, int field_idx)
614 void VerifyISFieldAccess(const Instruction* inst, const RegType& insn_type,
619 void VerifyQuickFieldAccess(const Instruction* inst, const RegType& insn_type, bool is_primitive)
624 const RegType& ResolveClassAndCheckAccess(uint32_t class_idx)
632 const RegType& GetCaughtExceptionType()
[all …]
Dmethod_verifier.cc1668 const RegType& declaring_class = GetDeclaringClass(); in SetTypesFromSignature()
1708 const RegType& reg_type = ResolveClassAndCheckAccess(iterator.GetTypeIdx()); in SetTypesFromSignature()
1742 const RegType* lo_half; in SetTypesFromSignature()
1743 const RegType* hi_half; in SetTypesFromSignature()
2101 const RegType& res_type = GetCaughtExceptionType(); in CodeFlowVerifyInstruction()
2115 const RegType& return_type = GetMethodReturnType(); in CodeFlowVerifyInstruction()
2123 const RegType& src_type = work_line_->GetRegisterType(this, vregA); in CodeFlowVerifyInstruction()
2140 const RegType& return_type = GetMethodReturnType(); in CodeFlowVerifyInstruction()
2155 const RegType& return_type = GetMethodReturnType(); in CodeFlowVerifyInstruction()
2163 const RegType& reg_type = work_line_->GetRegisterType(this, vregA); in CodeFlowVerifyInstruction()
[all …]
Dmethod_verifier-inl.h77 inline const RegType& MethodVerifier::ResolveCheckedClass(uint32_t class_idx) { in ResolveCheckedClass()
79 const RegType& result = ResolveClassAndCheckAccess(class_idx); in ResolveCheckedClass()
/art/compiler/dex/
Dverified_method.cc154 const verifier::RegType& in GenerateDevirtMap()
229 const verifier::RegType& reg_type(line->GetRegisterType(method_verifier, in GenerateSafeCastSet()
231 const verifier::RegType& cast_type = in GenerateSafeCastSet()
235 const verifier::RegType& array_type(line->GetRegisterType(method_verifier, in GenerateSafeCastSet()
241 const verifier::RegType& value_type(line->GetRegisterType(method_verifier, in GenerateSafeCastSet()
243 const verifier::RegType& component_type = method_verifier->GetRegTypeCache() in GenerateSafeCastSet()
/art/compiler/utils/
Dassembler_test.h243 template <typename RegType, typename ImmType>
244 std::string RepeatTemplatedRegisterImmBits(void (Ass::*f)(RegType, ImmType), in RepeatTemplatedRegisterImmBits() argument
247 std::string (AssemblerTest::*GetName)(const RegType&), in RepeatTemplatedRegisterImmBits() argument
622 template <typename RegType>
623 std::string RepeatTemplatedRegister(void (Ass::*f)(RegType), in RepeatTemplatedRegister() argument
624 const std::vector<RegType*> registers, in RepeatTemplatedRegister()
625 std::string (AssemblerTest::*GetName)(const RegType&), in RepeatTemplatedRegister() argument