ART: Move source owner data to LogContentionEvent

Change the signature of Monitor::LogContentionEvent to take the
owner's ArtMethod and dex pc instead of the derived data. Move the
decoding from monitor.cc to monitor_android.cc.

This change does not change functionality. It is only in preparation
for a later, actual change of what is being logged.

Bug: 62241642
Test: m test-art-host
Change-Id: I30f02eeecbc556f8eb7b637301ed8ac9b1e40a93
diff --git a/runtime/monitor_android.cc b/runtime/monitor_android.cc
index 1dd60f8..a597852 100644
--- a/runtime/monitor_android.cc
+++ b/runtime/monitor_android.cc
@@ -49,8 +49,15 @@
   return dst + len;
 }
 
-void Monitor::LogContentionEvent(Thread* self, uint32_t wait_ms, uint32_t sample_percent,
-                                 const char* owner_filename, int32_t owner_line_number) {
+void Monitor::LogContentionEvent(Thread* self,
+                                 uint32_t wait_ms,
+                                 uint32_t sample_percent,
+                                 ArtMethod* owner_method,
+                                 uint32_t owner_dex_pc) {
+  const char* owner_filename;
+  int32_t owner_line_number;
+  TranslateLocation(owner_method, owner_dex_pc, &owner_filename, &owner_line_number);
+
   // Emit the event list length, 1 byte.
   char eventBuffer[174];
   char* cp = eventBuffer;