Home | History | Annotate | Download | only in verifier

Lines Matching refs:MethodVerifier

52                                  MethodVerifier* verifier) {
76 MethodVerifier::FailureKind MethodVerifier::VerifyClass(const mirror::Class* klass,
114 MethodVerifier::FailureKind MethodVerifier::VerifyClass(const DexFile* dex_file,
151 MethodVerifier::FailureKind result = VerifyMethod(method_idx,
193 MethodVerifier::FailureKind result = VerifyMethod(method_idx,
224 MethodVerifier::FailureKind MethodVerifier::VerifyMethod(uint32_t method_idx,
233 MethodVerifier::FailureKind result = kNoFailure;
236 MethodVerifier verifier_(dex_file, dex_cache, class_loader, class_def, code_item, method_idx,
269 void MethodVerifier::VerifyMethodAndDump(std::ostream& os, uint32_t dex_method_idx,
276 MethodVerifier verifier(dex_file, dex_cache, class_loader, class_def, code_item,
284 MethodVerifier::MethodVerifier(const DexFile* dex_file, mirror::DexCache* dex_cache,
315 void MethodVerifier::FindLocksAtDexPc(mirror::ArtMethod* m, uint32_t dex_pc,
318 MethodVerifier verifier(&mh.GetDexFile(), mh.GetDexCache(), mh.GetClassLoader(),
326 void MethodVerifier::FindLocksAtDexPc() {
337 mirror::ArtField* MethodVerifier::FindAccessedFieldAtDexPc(mirror::ArtMethod* m,
340 MethodVerifier verifier(&mh.GetDexFile(), mh.GetDexCache(), mh.GetClassLoader(),
346 mirror::ArtField* MethodVerifier::FindAccessedFieldAtDexPc(uint32_t dex_pc) {
365 mirror::ArtMethod* MethodVerifier::FindInvokedMethodAtDexPc(mirror::ArtMethod* m,
368 MethodVerifier verifier(&mh.GetDexFile(), mh.GetDexCache(), mh.GetClassLoader(),
374 mirror::ArtMethod* MethodVerifier::FindInvokedMethodAtDexPc(uint32_t dex_pc) {
394 bool MethodVerifier::Verify() {
422 std::ostream& MethodVerifier::Fail(VerifyError error) {
472 void MethodVerifier::PrependToLastFailMessage(std::string prepend) {
481 void MethodVerifier::AppendToLastFailMessage(std::string append) {
488 bool MethodVerifier::ComputeWidthsAndCountOps() {
527 bool MethodVerifier::ScanTryCatchBlocks() {
585 bool MethodVerifier::VerifyInstructions() {
612 bool MethodVerifier::VerifyInstruction(const Instruction* inst, uint32_t code_offset) {
687 bool MethodVerifier::CheckRegisterIndex(uint32_t idx) {
696 bool MethodVerifier::CheckWideRegisterIndex(uint32_t idx) {
705 bool MethodVerifier::CheckFieldIndex(uint32_t idx) {
714 bool MethodVerifier::CheckMethodIndex(uint32_t idx) {
723 bool MethodVerifier::CheckNewInstance(uint32_t idx) {
738 bool MethodVerifier::CheckStringIndex(uint32_t idx) {
747 bool MethodVerifier::CheckTypeIndex(uint32_t idx) {
756 bool MethodVerifier::CheckNewArray(uint32_t idx) {
782 bool MethodVerifier::CheckArrayData(uint32_t cur_offset) {
820 bool MethodVerifier::CheckBranchTarget(uint32_t cur_offset) {
852 bool MethodVerifier::GetBranchOffset(uint32_t cur_offset, int32_t* pOffset, bool* pConditional,
890 bool MethodVerifier::CheckSwitchTargets(uint32_t cur_offset) {
972 bool MethodVerifier::CheckVarArgRegs(uint32_t vA, uint32_t arg[]) {
989 bool MethodVerifier::CheckVarArgRangeRegs(uint32_t vA, uint32_t vC) {
1021 bool MethodVerifier::VerifyCodeFlow() {
1069 verifier::MethodVerifier::SetDexGcMap(ref, *dex_gc_map);
1073 MethodVerifier::MethodSafeCastSet* method_to_safe_casts = GenerateSafeCastSet();
1080 MethodVerifier::PcToConcreteMethodMap* pc_to_concrete_method = GenerateDevirtMap();
1089 std::ostream& MethodVerifier::DumpFailures(std::ostream& os) {
1099 extern "C" void MethodVerifierGdbDump(MethodVerifier* v)
1104 void MethodVerifier::Dump(std::ostream& os) {
1151 bool MethodVerifier::SetTypesFromSignature() {
1273 bool MethodVerifier::CodeFlowVerifyMethod() {
1386 bool MethodVerifier::CodeFlowVerifyInstruction(uint32_t* start_guess) {
2821 const RegType& MethodVerifier::ResolveClassAndCheckAccess(uint32_t class_idx) {
2848 const RegType& MethodVerifier::GetCaughtExceptionType() {
2894 mirror::ArtMethod* MethodVerifier::ResolveMethodAndCheckAccess(uint32_t dex_method_idx,
2986 mirror::ArtMethod* MethodVerifier::VerifyInvocationArgs(const Instruction* inst,
3109 mirror::ArtMethod* MethodVerifier::GetQuickInvokedMethod(const Instruction* inst,
3143 mirror::ArtMethod* MethodVerifier::VerifyInvokeVirtualQuickArgs(const Instruction* inst,
3234 void MethodVerifier::VerifyNewArray(const Instruction* inst, bool is_filled, bool is_range) {
3282 void MethodVerifier::VerifyAGet(const Instruction* inst,
3331 void MethodVerifier::VerifyPrimitivePut(const RegType& target_type, const RegType& insn_type,
3368 void MethodVerifier::VerifyAPut(const Instruction* inst,
3400 mirror::ArtField* MethodVerifier::GetStaticField(int field_idx) {
3437 mirror::ArtField* MethodVerifier::GetInstanceField(const RegType& obj_type, int field_idx) {
3500 void MethodVerifier::VerifyISGet(const Instruction* inst, const RegType& insn_type,
3554 void MethodVerifier::VerifyISPut(const Instruction* inst, const RegType& insn_type,
3621 mirror::ArtField* MethodVerifier::GetQuickFieldAccess(const Instruction* inst,
3653 void MethodVerifier::VerifyIGetQuick(const Instruction* inst, const RegType& insn_type,
3697 void MethodVerifier::VerifyIPutQuick(const Instruction* inst, const RegType& insn_type,
3766 bool MethodVerifier::CheckNotMoveException(const uint16_t* insns, int insn_idx) {
3774 bool MethodVerifier::UpdateRegisters(uint32_t next_insn, const RegisterLine* merge_line) {
3830 InstructionFlags* MethodVerifier::CurrentInsnFlags() {
3834 const RegType& MethodVerifier::GetMethodReturnType() {
3842 const RegType& MethodVerifier::GetDeclaringClass() {
3858 void MethodVerifier::ComputeGcMapSizes(size_t* gc_points, size_t* ref_bitmap_bits,
3880 MethodVerifier::MethodSafeCastSet* MethodVerifier::GenerateSafeCastSet() {
3912 MethodVerifier::PcToConcreteMethodMap* MethodVerifier::GenerateDevirtMap() {
3989 const std::vector<uint8_t>* MethodVerifier::GenerateGcMap() {
4049 void MethodVerifier::VerifyGcMap(const std::vector<uint8_t>& data) {
4078 void MethodVerifier::SetDexGcMap(MethodReference ref, const std::vector<uint8_t>& gc_map) {
4093 void MethodVerifier::SetSafeCastMap(MethodReference ref, const MethodSafeCastSet* cast_set) {
4105 bool MethodVerifier::IsSafeCast(MethodReference ref, uint32_t pc) {
4114 MethodVerifier::MethodSafeCastSet::const_iterator cast_it = it->second->find(pc);
4118 const std::vector<uint8_t>* MethodVerifier::GetDexGcMap(MethodReference ref) {
4128 void MethodVerifier::SetDevirtMap(MethodReference ref,
4142 const MethodReference* MethodVerifier::GetDevirtMap(const MethodReference& ref,
4152 MethodVerifier::PcToConcreteMethodMap::const_iterator pc_to_concrete_method
4161 std::vector<int32_t> MethodVerifier::DescribeVRegs(uint32_t dex_pc) {
4205 bool MethodVerifier::IsCandidateForCompilation(MethodReference& method_ref,
4220 ReaderWriterMutex* MethodVerifier::dex_gc_maps_lock_ = NULL;
4221 MethodVerifier::DexGcMapTable* MethodVerifier::dex_gc_maps_ = NULL;
4223 ReaderWriterMutex* MethodVerifier::safecast_map_lock_ = NULL;
4224 MethodVerifier::SafeCastMap* MethodVerifier::safecast_map_ = NULL;
4226 ReaderWriterMutex* MethodVerifier::devirt_maps_lock_ = NULL;
4227 MethodVerifier::DevirtualizationMapTable* MethodVerifier::devirt_maps_ = NULL;
4229 ReaderWriterMutex* MethodVerifier::rejected_classes_lock_ = NULL;
4230 MethodVerifier::RejectedClassesTable* MethodVerifier::rejected_classes_ = NULL;
4232 void MethodVerifier::Init() {
4238 dex_gc_maps_ = new MethodVerifier::DexGcMapTable;
4244 safecast_map_ = new MethodVerifier::SafeCastMap();
4251 devirt_maps_ = new MethodVerifier::DevirtualizationMapTable();
4257 rejected_classes_ = new MethodVerifier::RejectedClassesTable;
4263 void MethodVerifier::Shutdown() {
4304 void MethodVerifier::AddRejectedClass(ClassReference ref) {
4313 bool MethodVerifier::IsClassRejected(ClassReference ref) {