Change return types of HistogramEnumString from std::string to absl::string_view. These functions always return string literals, so no need to create a string. This doesn't have much performance impact on FDO/propeller optimized binaries, but in our non-FDO prototype binary, we are spending 0.2% of CPU just on the temporary `std::string` construction and conversion to `string_view`. PiperOrigin-RevId: 988265401
diff --git a/quiche/quic/core/quic_types.cc b/quiche/quic/core/quic_types.cc index 2b82db8..dad805a 100644 --- a/quiche/quic/core/quic_types.cc +++ b/quiche/quic/core/quic_types.cc
@@ -90,7 +90,7 @@ return os; } -std::string HistogramEnumString(WriteStatus enum_value) { +absl::string_view HistogramEnumString(WriteStatus enum_value) { switch (enum_value) { case WRITE_STATUS_OK: return "OK";
diff --git a/quiche/quic/core/quic_types.h b/quiche/quic/core/quic_types.h index e1fe120..2a3c822 100644 --- a/quiche/quic/core/quic_types.h +++ b/quiche/quic/core/quic_types.h
@@ -118,7 +118,7 @@ WRITE_STATUS_NUM_VALUES, }; -std::string HistogramEnumString(WriteStatus enum_value); +absl::string_view HistogramEnumString(WriteStatus enum_value); QUICHE_EXPORT std::ostream& operator<<(std::ostream& os, const WriteStatus& status);