Lines Matching refs:verifier

28 namespace verifier {
34 inline const RegType& RegisterLine::GetRegisterType(MethodVerifier* verifier, uint32_t vsrc) const { in GetRegisterType() argument
37 return verifier->GetRegTypeCache()->GetFromId(line_[vsrc]); in GetRegisterType()
41 inline bool RegisterLine::SetRegisterType(MethodVerifier* verifier, uint32_t vdst, in SetRegisterType() argument
45 verifier->Fail(VERIFY_ERROR_BAD_CLASS_HARD) << "Expected category1 register type not '" in SetRegisterType()
66 inline bool RegisterLine::SetRegisterTypeWide(MethodVerifier* verifier, uint32_t vdst, in SetRegisterTypeWide() argument
71 verifier->Fail(VERIFY_ERROR_BAD_CLASS_SOFT) << "Invalid wide pair '" in SetRegisterTypeWide()
89 inline void RegisterLine::SetResultRegisterType(MethodVerifier* verifier, const RegType& new_type) { in SetResultRegisterType() argument
93 result_[1] = verifier->GetRegTypeCache()->Undefined().GetId(); in SetResultRegisterType()
103 inline void RegisterLine::CopyRegister1(MethodVerifier* verifier, uint32_t vdst, uint32_t vsrc, in CopyRegister1() argument
106 const RegType& type = GetRegisterType(verifier, vsrc); in CopyRegister1()
107 if (!SetRegisterType<LockOp::kClear>(verifier, vdst, type)) { in CopyRegister1()
113verifier->Fail(VERIFY_ERROR_BAD_CLASS_HARD) << "copy1 v" << vdst << "<-v" << vsrc << " type=" << t… in CopyRegister1()
120 inline void RegisterLine::CopyRegister2(MethodVerifier* verifier, uint32_t vdst, uint32_t vsrc) { in CopyRegister2() argument
121 const RegType& type_l = GetRegisterType(verifier, vsrc); in CopyRegister2()
122 const RegType& type_h = GetRegisterType(verifier, vsrc + 1); in CopyRegister2()
125 verifier->Fail(VERIFY_ERROR_BAD_CLASS_HARD) << "copy2 v" << vdst << "<-v" << vsrc in CopyRegister2()
128 SetRegisterTypeWide(verifier, vdst, type_l, type_h); in CopyRegister2()
132 inline bool RegisterLine::VerifyRegisterType(MethodVerifier* verifier, uint32_t vsrc, in VerifyRegisterType() argument
135 const RegType& src_type = GetRegisterType(verifier, vsrc); in VerifyRegisterType()
136 if (UNLIKELY(!check_type.IsAssignableFrom(src_type, verifier))) { in VerifyRegisterType()
149 verifier->Fail(fail_type) << "register v" << vsrc << " has type " in VerifyRegisterType()
162 const RegType& src_type_h = GetRegisterType(verifier, vsrc + 1); in VerifyRegisterType()
164 verifier->Fail(VERIFY_ERROR_BAD_CLASS_HARD) << "wide register v" << vsrc << " has type " in VerifyRegisterType()
176 inline void RegisterLine::VerifyMonitorStackEmpty(MethodVerifier* verifier) const { in VerifyMonitorStackEmpty() argument
178 verifier->Fail(VERIFY_ERROR_LOCKING, /*pending_exc=*/ false); in VerifyMonitorStackEmpty()
180 VLOG(verifier) << "expected empty monitor stack in " in VerifyMonitorStackEmpty()
181 << verifier->GetMethodReference().PrettyMethod(); in VerifyMonitorStackEmpty()
224 VLOG(verifier) << "Also unlocking " << pair.first; in ClearRegToLockDepth()