blob: f8add27df0c5345e0104e94222f1a086fb742975 [file] [log] [blame]
From ee3caaa89faf56d1918714bad2f8237e0aead09e Mon Sep 17 00:00:00 2001
From: Denis Nikitin <denik@chromium.org>
Date: Thu, 4 May 2023 12:33:39 -0700
Subject: [PATCH 2/2] Fix compile error
Replace llvm::Optinal (which was deprecated) with std::optional.
---
llvm_propeller_profile_writer.cc | 8 ++++----
perfdata_reader.cc | 3 ++-
perfdata_reader_test.cc | 5 +++--
3 files changed, 9 insertions(+), 7 deletions(-)
diff --git a/llvm_propeller_profile_writer.cc b/llvm_propeller_profile_writer.cc
index 88dec6d..ede42b3 100644
--- a/llvm_propeller_profile_writer.cc
+++ b/llvm_propeller_profile_writer.cc
@@ -6,6 +6,7 @@
#include <filesystem>
#include <fstream>
#include <memory>
+#include <optional>
#include <ostream>
#include <string>
#include <utility>
@@ -82,7 +83,6 @@ void DumpCfgs(
namespace devtools_crosstool_autofdo {
using ::devtools_crosstool_autofdo::PropellerOptions;
-using ::llvm::Optional;
using ::llvm::StringRef;
absl::Status GeneratePropellerProfiles(const PropellerOptions &opts) {
@@ -252,7 +252,7 @@ bool PropellerProfWriter::Write(
total_clusters += func_cluster_info.clusters.size();
// Allocate the symbol order vector
- std::vector<std::pair<llvm::SmallVector<StringRef, 3>, Optional<unsigned>>>
+ std::vector<std::pair<llvm::SmallVector<StringRef, 3>, std::optional<unsigned>>>
symbol_order(total_clusters);
// Allocate the cold symbol order vector equally sized as
// all_functions_cluster_info, as there is (at most) one cold cluster per
@@ -295,9 +295,9 @@ bool PropellerProfWriter::Write(
// the function name is sufficient for section ordering. Otherwise,
// the cluster number is required.
symbol_order[cluster.layout_index] =
- std::pair<llvm::SmallVector<StringRef, 3>, Optional<unsigned>>(
+ std::pair<llvm::SmallVector<StringRef, 3>, std::optional<unsigned>>(
func_layout_info.cfg->names_, cluster.bb_indexes.front() == 0
- ? Optional<unsigned>()
+ ? std::optional<unsigned>()
: cluster_id);
for (int bbi = 0; bbi < cluster.bb_indexes.size(); ++bbi)
out_stream << (bbi ? " " : "!!") << cluster.bb_indexes[bbi];
diff --git a/perfdata_reader.cc b/perfdata_reader.cc
index 97460c3..7d95b2d 100644
--- a/perfdata_reader.cc
+++ b/perfdata_reader.cc
@@ -2,6 +2,7 @@
#include <functional>
#include <list>
+#include <optional>
#include <string>
#include <utility>
@@ -260,7 +261,7 @@ bool PerfDataReader::SelectPerfInfo(PerfDataProvider::BufferHandle perf_data,
// Find the set of file names in perf.data file which has the same build id as
// found in "binary_file_name".
-llvm::Optional<std::set<std::string>> FindFileNameInPerfDataWithFileBuildId(
+std::optional<std::set<std::string>> FindFileNameInPerfDataWithFileBuildId(
const std::string &binary_file_name, const quipper::PerfReader &perf_reader,
BinaryPerfInfo *info) {
if (info->binary_info.build_id.empty()) {
diff --git a/perfdata_reader_test.cc b/perfdata_reader_test.cc
index e8faeca..4535e87 100644
--- a/perfdata_reader_test.cc
+++ b/perfdata_reader_test.cc
@@ -1,5 +1,6 @@
#include "perfdata_reader.h"
+#include <optional>
#include <string>
#include "gmock/gmock.h"
@@ -118,7 +119,7 @@ TEST(PerfdataReaderTest, FirstLoadableSegmentNoneExecutable) {
absl::StrCat(absl::GetFlag(FLAGS_test_srcdir),
"/google3/devtools/crosstool/autofdo/testdata/"
"binary_with_none_executable_first_loadable_segment.bin");
- llvm::Optional<bool> v =
+ std::optional<bool> v =
devtools_crosstool_autofdo::CheckFirstLoadableSegmentIsExecutable(binary);
EXPECT_TRUE(v.hasValue() && !v.getValue());
}
@@ -128,7 +129,7 @@ TEST(PerfdataReaderTest, FirstLoadableSegmentExecutable) {
absl::StrCat(absl::GetFlag(FLAGS_test_srcdir),
"/google3/devtools/crosstool/autofdo/testdata/"
"binary_with_executable_first_loadable_segment.bin");
- llvm::Optional<bool> v =
+ std::optional<bool> v =
devtools_crosstool_autofdo::CheckFirstLoadableSegmentIsExecutable(binary);
EXPECT_TRUE(v.hasValue() && v.getValue());
}
--
2.40.1.521.gf1e218fcd8-goog