From e6c0f2a75bd969253279580e2e4772e54787034b Mon Sep 17 00:00:00 2001 From: Nicolas Geoffray Date: Mon, 7 Sep 2020 08:30:52 +0100 Subject: Pass a full MethodReference of the invoke in HInvoke nodes. Cleanup to ensure we don't make mistakes when passing a dex method index to the HInvoke constructor, and we know which dex file it relates to. Test: test.py Change-Id: I625949add88a6b97e1dafeb7aed37961e105d6aa --- compiler/optimizing/graph_visualizer.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'compiler/optimizing/graph_visualizer.cc') diff --git a/compiler/optimizing/graph_visualizer.cc b/compiler/optimizing/graph_visualizer.cc index 922a6f6700..d5840fc7cf 100644 --- a/compiler/optimizing/graph_visualizer.cc +++ b/compiler/optimizing/graph_visualizer.cc @@ -456,7 +456,7 @@ class HGraphVisualizerPrinter : public HGraphDelegateVisitor { } void VisitInvoke(HInvoke* invoke) override { - StartAttributeStream("dex_file_index") << invoke->GetDexMethodIndex(); + StartAttributeStream("dex_file_index") << invoke->GetMethodReference().index; ArtMethod* method = invoke->GetResolvedMethod(); // We don't print signatures, which conflict with c1visualizer format. static constexpr bool kWithSignature = false; @@ -464,7 +464,7 @@ class HGraphVisualizerPrinter : public HGraphDelegateVisitor { // other invokes might be coming from inlined methods. ScopedObjectAccess soa(Thread::Current()); std::string method_name = (method == nullptr) - ? GetGraph()->GetDexFile().PrettyMethod(invoke->GetDexMethodIndex(), kWithSignature) + ? invoke->GetMethodReference().PrettyMethod(kWithSignature) : method->PrettyMethod(kWithSignature); StartAttributeStream("method_name") << method_name; StartAttributeStream("always_throws") << std::boolalpha -- cgit v1.2.3