[llvm] 78238dc - [Support] Use list-initialization for returning pairs (#160645)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 25 08:51:59 PDT 2025
Author: Kazu Hirata
Date: 2025-09-25T08:51:55-07:00
New Revision: 78238dc9f8888a6c5ec42ceea24ae2bde801fb18
URL: https://github.com/llvm/llvm-project/commit/78238dc9f8888a6c5ec42ceea24ae2bde801fb18
DIFF: https://github.com/llvm/llvm-project/commit/78238dc9f8888a6c5ec42ceea24ae2bde801fb18.diff
LOG: [Support] Use list-initialization for returning pairs (#160645)
In C++17 and later, "return {A, B};" guarantees copy elision for a
std::pair return type, ensuring the object is constructed directly in
the return slot. This patch updates those instances under Support/.
Added:
Modified:
llvm/lib/Support/ARMWinEH.cpp
llvm/lib/Support/BinaryStreamReader.cpp
llvm/lib/Support/BinaryStreamWriter.cpp
llvm/lib/Support/YAMLParser.cpp
Removed:
################################################################################
diff --git a/llvm/lib/Support/ARMWinEH.cpp b/llvm/lib/Support/ARMWinEH.cpp
index 29c7a28541f23..fedea774b0da1 100644
--- a/llvm/lib/Support/ARMWinEH.cpp
+++ b/llvm/lib/Support/ARMWinEH.cpp
@@ -41,7 +41,7 @@ std::pair<uint16_t, uint32_t> SavedRegisterMask(const RuntimeFunction &RF,
GPRMask |= (((1 << ((RF.StackAdjust() & 0x3) + 1)) - 1)
<< (~RF.StackAdjust() & 0x3));
- return std::make_pair(GPRMask, VFPMask);
+ return {GPRMask, VFPMask};
}
} // namespace WinEH
} // namespace ARM
diff --git a/llvm/lib/Support/BinaryStreamReader.cpp b/llvm/lib/Support/BinaryStreamReader.cpp
index afc00864a5fb6..26ddf3f9c193d 100644
--- a/llvm/lib/Support/BinaryStreamReader.cpp
+++ b/llvm/lib/Support/BinaryStreamReader.cpp
@@ -174,5 +174,5 @@ BinaryStreamReader::split(uint64_t Off) const {
First = First.keep_front(Off);
BinaryStreamReader W1{First};
BinaryStreamReader W2{Second};
- return std::make_pair(W1, W2);
+ return {W1, W2};
}
diff --git a/llvm/lib/Support/BinaryStreamWriter.cpp b/llvm/lib/Support/BinaryStreamWriter.cpp
index dff08fee3fefa..0c399d5691f5b 100644
--- a/llvm/lib/Support/BinaryStreamWriter.cpp
+++ b/llvm/lib/Support/BinaryStreamWriter.cpp
@@ -89,7 +89,7 @@ BinaryStreamWriter::split(uint64_t Off) const {
First = First.keep_front(Off);
BinaryStreamWriter W1{First};
BinaryStreamWriter W2{Second};
- return std::make_pair(W1, W2);
+ return {W1, W2};
}
Error BinaryStreamWriter::padToAlignment(uint32_t Align) {
diff --git a/llvm/lib/Support/YAMLParser.cpp b/llvm/lib/Support/YAMLParser.cpp
index fa5db46598905..6734877802caf 100644
--- a/llvm/lib/Support/YAMLParser.cpp
+++ b/llvm/lib/Support/YAMLParser.cpp
@@ -59,7 +59,7 @@ using EncodingInfo = std::pair<UnicodeEncodingForm, unsigned>;
/// and how long the byte order mark is if one exists.
static EncodingInfo getUnicodeEncoding(StringRef Input) {
if (Input.empty())
- return std::make_pair(UEF_Unknown, 0);
+ return {UEF_Unknown, 0};
switch (uint8_t(Input[0])) {
case 0x00:
@@ -67,44 +67,44 @@ static EncodingInfo getUnicodeEncoding(StringRef Input) {
if ( Input[1] == 0
&& uint8_t(Input[2]) == 0xFE
&& uint8_t(Input[3]) == 0xFF)
- return std::make_pair(UEF_UTF32_BE, 4);
+ return {UEF_UTF32_BE, 4};
if (Input[1] == 0 && Input[2] == 0 && Input[3] != 0)
- return std::make_pair(UEF_UTF32_BE, 0);
+ return {UEF_UTF32_BE, 0};
}
if (Input.size() >= 2 && Input[1] != 0)
- return std::make_pair(UEF_UTF16_BE, 0);
- return std::make_pair(UEF_Unknown, 0);
+ return {UEF_UTF16_BE, 0};
+ return {UEF_Unknown, 0};
case 0xFF:
if ( Input.size() >= 4
&& uint8_t(Input[1]) == 0xFE
&& Input[2] == 0
&& Input[3] == 0)
- return std::make_pair(UEF_UTF32_LE, 4);
+ return {UEF_UTF32_LE, 4};
if (Input.size() >= 2 && uint8_t(Input[1]) == 0xFE)
- return std::make_pair(UEF_UTF16_LE, 2);
- return std::make_pair(UEF_Unknown, 0);
+ return {UEF_UTF16_LE, 2};
+ return {UEF_Unknown, 0};
case 0xFE:
if (Input.size() >= 2 && uint8_t(Input[1]) == 0xFF)
- return std::make_pair(UEF_UTF16_BE, 2);
- return std::make_pair(UEF_Unknown, 0);
+ return {UEF_UTF16_BE, 2};
+ return {UEF_Unknown, 0};
case 0xEF:
if ( Input.size() >= 3
&& uint8_t(Input[1]) == 0xBB
&& uint8_t(Input[2]) == 0xBF)
- return std::make_pair(UEF_UTF8, 3);
- return std::make_pair(UEF_Unknown, 0);
+ return {UEF_UTF8, 3};
+ return {UEF_Unknown, 0};
}
// It could still be utf-32 or utf-16.
if (Input.size() >= 4 && Input[1] == 0 && Input[2] == 0 && Input[3] == 0)
- return std::make_pair(UEF_UTF32_LE, 0);
+ return {UEF_UTF32_LE, 0};
if (Input.size() >= 2 && Input[1] == 0)
- return std::make_pair(UEF_UTF16_LE, 0);
+ return {UEF_UTF16_LE, 0};
- return std::make_pair(UEF_UTF8, 0);
+ return {UEF_UTF8, 0};
}
/// Pin the vtables to this file.
@@ -199,7 +199,7 @@ static UTF8Decoded decodeUTF8(StringRef Range) {
// 1 byte: [0x00, 0x7f]
// Bit pattern: 0xxxxxxx
if (Position < End && (*Position & 0x80) == 0) {
- return std::make_pair(*Position, 1);
+ return {*Position, 1};
}
// 2 bytes: [0x80, 0x7ff]
// Bit pattern: 110xxxxx 10xxxxxx
@@ -208,7 +208,7 @@ static UTF8Decoded decodeUTF8(StringRef Range) {
uint32_t codepoint = ((*Position & 0x1F) << 6) |
(*(Position + 1) & 0x3F);
if (codepoint >= 0x80)
- return std::make_pair(codepoint, 2);
+ return {codepoint, 2};
}
// 3 bytes: [0x8000, 0xffff]
// Bit pattern: 1110xxxx 10xxxxxx 10xxxxxx
@@ -222,7 +222,7 @@ static UTF8Decoded decodeUTF8(StringRef Range) {
// they are high / low surrogate halves used by UTF-16.
if (codepoint >= 0x800 &&
(codepoint < 0xD800 || codepoint > 0xDFFF))
- return std::make_pair(codepoint, 3);
+ return {codepoint, 3};
}
// 4 bytes: [0x10000, 0x10FFFF]
// Bit pattern: 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
@@ -235,9 +235,9 @@ static UTF8Decoded decodeUTF8(StringRef Range) {
((*(Position + 2) & 0x3F) << 6) |
(*(Position + 3) & 0x3F);
if (codepoint >= 0x10000 && codepoint <= 0x10FFFF)
- return std::make_pair(codepoint, 4);
+ return {codepoint, 4};
}
- return std::make_pair(0, 0);
+ return {0, 0};
}
namespace llvm {
More information about the llvm-commits
mailing list