Balsa: make invalid header char table builders constexpr. This seems to help with CPU utilization in loadtests. Protected by optimization with no functional change; not protected. PiperOrigin-RevId: 760684491
diff --git a/quiche/balsa/header_properties.cc b/quiche/balsa/header_properties.cc index b72fe19..5c08f6f 100644 --- a/quiche/balsa/header_properties.cc +++ b/quiche/balsa/header_properties.cc
@@ -65,7 +65,7 @@ return multivalued_headers; } -std::array<bool, 256> buildInvalidHeaderKeyCharLookupTable() { +constexpr std::array<bool, 256> buildInvalidHeaderKeyCharLookupTable() { std::array<bool, 256> invalidCharTable; invalidCharTable.fill(false); for (uint8_t c : kInvalidHeaderKeyCharList) { @@ -74,7 +74,8 @@ return invalidCharTable; } -std::array<bool, 256> buildInvalidHeaderKeyCharLookupTableAllowDoubleQuote() { +constexpr std::array<bool, 256> +buildInvalidHeaderKeyCharLookupTableAllowDoubleQuote() { std::array<bool, 256> invalidCharTable; invalidCharTable.fill(false); for (uint8_t c : kInvalidHeaderKeyCharListAllowDoubleQuote) { @@ -83,7 +84,7 @@ return invalidCharTable; } -std::array<bool, 256> buildInvalidCharLookupTable() { +constexpr std::array<bool, 256> buildInvalidCharLookupTable() { std::array<bool, 256> invalidCharTable; invalidCharTable.fill(false); for (uint8_t c : kInvalidHeaderCharList) { @@ -92,7 +93,7 @@ return invalidCharTable; } -std::array<bool, 256> buildInvalidPathCharLookupTable() { +constexpr std::array<bool, 256> buildInvalidPathCharLookupTable() { std::array<bool, 256> invalidCharTable; invalidCharTable.fill(true); for (uint8_t c : kValidPathCharList) { @@ -101,7 +102,7 @@ return invalidCharTable; } -std::array<bool, 256> buildInvalidQueryCharLookupTable() { +constexpr std::array<bool, 256> buildInvalidQueryCharLookupTable() { std::array<bool, 256> invalidCharTable; invalidCharTable.fill(true); for (uint8_t c : kValidQueryCharList) {