[metrics] Avoid string copy

We pass by const reference instead of copy.

Test: TreeHugger
Change-Id: Icf9ed05d001d5ed07f6160a06d5295501bfeeb05
diff --git a/libartbase/base/metrics/metrics.h b/libartbase/base/metrics/metrics.h
index 20bbc52..f6eed56 100644
--- a/libartbase/base/metrics/metrics.h
+++ b/libartbase/base/metrics/metrics.h
@@ -303,7 +303,7 @@
 // LogBackend, but we will probably want a more machine-readable format in the future.
 class FileBackend : public StringBackend {
  public:
-  explicit FileBackend(std::string filename);
+  explicit FileBackend(const std::string& filename);
 
   void BeginReport(uint64_t timestamp_millis) override;
   void EndReport() override;
diff --git a/libartbase/base/metrics/metrics_common.cc b/libartbase/base/metrics/metrics_common.cc
index c650fdf..c29605e 100644
--- a/libartbase/base/metrics/metrics_common.cc
+++ b/libartbase/base/metrics/metrics_common.cc
@@ -167,7 +167,7 @@
   LOG_STREAM(level_) << GetAndResetBuffer();
 }
 
-FileBackend::FileBackend(std::string filename) : filename_{filename} {}
+FileBackend::FileBackend(const std::string& filename) : filename_{filename} {}
 
 void FileBackend::BeginReport(uint64_t timestamp_since_start_ms) {
   GetAndResetBuffer();