[libc-commits] [libc] 1852af1 - [libc] Fix benchmarks build.

Siva Chandra Reddy via libc-commits libc-commits at lists.llvm.org
Tue Apr 28 14:31:40 PDT 2020


Author: Siva Chandra Reddy
Date: 2020-04-28T14:30:48-07:00
New Revision: 1852af16a1c52e5d61e30a43ed74a446514152fc

URL: https://github.com/llvm/llvm-project/commit/1852af16a1c52e5d61e30a43ed74a446514152fc
DIFF: https://github.com/llvm/llvm-project/commit/1852af16a1c52e5d61e30a43ed74a446514152fc.diff

LOG: [libc] Fix benchmarks build.

Reviewers: gchatelet, echristo

Subscribers: mgorny, tschuett, libc-commits

Tags: #libc-project

Differential Revision: https://reviews.llvm.org/D79040

Added: 
    

Modified: 
    libc/utils/benchmarks/CMakeLists.txt
    libc/utils/benchmarks/JSON.cpp
    libc/utils/benchmarks/LibcMemoryBenchmarkMain.cpp

Removed: 
    


################################################################################
diff  --git a/libc/utils/benchmarks/CMakeLists.txt b/libc/utils/benchmarks/CMakeLists.txt
index d5926d67ab68..49eba9bccbea 100644
--- a/libc/utils/benchmarks/CMakeLists.txt
+++ b/libc/utils/benchmarks/CMakeLists.txt
@@ -24,6 +24,7 @@ ExternalProject_Add(google-benchmark
         -DCMAKE_C_COMPILER:STRING=${CMAKE_C_COMPILER}
         -DCMAKE_CXX_COMPILER:STRING=${CMAKE_CXX_COMPILER}
         -DCMAKE_CXX_FLAGS:STRING=${GOOGLE_BENCHMARK_TARGET_FLAGS}
+        -DCMAKE_CXX_STANDARD:STRING=14
         -DCMAKE_BUILD_TYPE:STRING=RELEASE
         -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
         -DBENCHMARK_ENABLE_TESTING:BOOL=OFF)

diff  --git a/libc/utils/benchmarks/JSON.cpp b/libc/utils/benchmarks/JSON.cpp
index 175aa2209ef2..2f3704144983 100644
--- a/libc/utils/benchmarks/JSON.cpp
+++ b/libc/utils/benchmarks/JSON.cpp
@@ -17,9 +17,11 @@
 #include "llvm/Support/ErrorHandling.h"
 #include "llvm/Support/JSON.h"
 #include "llvm/Support/MathExtras.h"
+
 #include <chrono>
 #include <limits>
 #include <memory>
+#include <string>
 #include <vector>
 
 namespace llvm {
@@ -48,7 +50,7 @@ static Error fromJson(const json::Value &V, double &Out) {
 
 static Error fromJson(const json::Value &V, std::string &Out) {
   if (auto S = V.getAsString()) {
-    Out = *S;
+    Out = std::string(*S);
     return Error::success();
   }
   return createStringError(errc::io_error, "Can't parse String");

diff  --git a/libc/utils/benchmarks/LibcMemoryBenchmarkMain.cpp b/libc/utils/benchmarks/LibcMemoryBenchmarkMain.cpp
index e30597187c52..79774c3526a0 100644
--- a/libc/utils/benchmarks/LibcMemoryBenchmarkMain.cpp
+++ b/libc/utils/benchmarks/LibcMemoryBenchmarkMain.cpp
@@ -17,6 +17,8 @@
 #include "llvm/Support/MemoryBuffer.h"
 #include "llvm/Support/raw_ostream.h"
 
+#include <string>
+
 namespace llvm {
 namespace libc_benchmarks {
 
@@ -61,7 +63,7 @@ void Main() {
   size_t Steps = 0;
   for (auto FunctionName : Runner->getFunctionNames()) {
     FunctionMeasurements FM;
-    FM.Name = FunctionName;
+    FM.Name = std::string(FunctionName);
     for (size_t Run = 0; Run < Runs; ++Run) {
       for (uint32_t Size = SR.From; Size <= SR.To; Size += SR.Step) {
         const auto Result = Runner->benchmark(S.Options, FunctionName, Size);


        


More information about the libc-commits mailing list