Skip to content

Commit c7ee3e3

Browse files
authored
Merge branch 'main' into fix/162953
2 parents 3d9d9f6 + 4a8dd49 commit c7ee3e3

File tree

3 files changed

+19
-32
lines changed

3 files changed

+19
-32
lines changed

bolt/lib/Passes/FrameAnalysis.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ class FrameAccessAnalysis {
198198
if (CFIStack.empty())
199199
dbgs() << "Assertion is about to fail: " << BF.getPrintName() << "\n";
200200
assert(!CFIStack.empty() && "Corrupt CFI stack");
201-
std::pair<int64_t, uint16_t> &Elem = CFIStack.top();
201+
std::pair<int64_t, uint16_t> Elem = CFIStack.top();
202202
CFIStack.pop();
203203
CfaOffset = Elem.first;
204204
CfaReg = Elem.second;

bolt/lib/Passes/ShrinkWrapping.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -402,7 +402,7 @@ void StackLayoutModifier::classifyCFIs() {
402402
break;
403403
case MCCFIInstruction::OpRestoreState: {
404404
assert(!CFIStack.empty() && "Corrupt CFI stack");
405-
std::pair<int64_t, uint16_t> &Elem = CFIStack.top();
405+
std::pair<int64_t, uint16_t> Elem = CFIStack.top();
406406
CFIStack.pop();
407407
CfaOffset = Elem.first;
408408
CfaReg = Elem.second;

clang/unittests/Basic/DiagnosticTest.cpp

Lines changed: 17 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
#include "llvm/Support/VirtualFileSystem.h"
2222
#include "gmock/gmock.h"
2323
#include "gtest/gtest.h"
24-
#include <algorithm>
2524
#include <memory>
2625
#include <optional>
2726
#include <vector>
@@ -296,35 +295,23 @@ TEST_F(SuppressionMappingTest, EmitCategoryIsExcluded) {
296295
}
297296

298297
TEST_F(SuppressionMappingTest, LongestMatchWins) {
299-
StringRef Lines[] = {
300-
"[unused]",
301-
"src:*clang/*",
302-
"src:*clang/lib/Sema/*",
303-
"src:*clang/lib/Sema/*=emit",
304-
"src:*clang/lib/Sema/foo*",
305-
};
306-
llvm::MutableArrayRef<StringRef> Rules = Lines;
307-
Rules = Rules.drop_front();
308-
llvm::sort(Rules);
309-
310-
do {
311-
Diags.getDiagnosticOptions().DiagnosticSuppressionMappingsFile = "foo.txt";
312-
std::string Contents = join(std::begin(Lines), std::end(Lines), "\n");
313-
FS->addFile("foo.txt", /*ModificationTime=*/{},
314-
llvm::MemoryBuffer::getMemBuffer(Contents));
315-
clang::ProcessWarningOptions(Diags, Diags.getDiagnosticOptions(), *FS);
316-
EXPECT_THAT(diags(), IsEmpty());
317-
318-
EXPECT_TRUE(Diags.isSuppressedViaMapping(
319-
diag::warn_unused_function, locForFile("clang/lib/Basic/foo.h")))
320-
<< Contents;
321-
EXPECT_FALSE(Diags.isSuppressedViaMapping(
322-
diag::warn_unused_function, locForFile("clang/lib/Sema/bar.h")))
323-
<< Contents;
324-
EXPECT_TRUE(Diags.isSuppressedViaMapping(
325-
diag::warn_unused_function, locForFile("clang/lib/Sema/foo.h")))
326-
<< Contents;
327-
} while (std::next_permutation(Rules.begin(), Rules.end()));
298+
llvm::StringLiteral SuppressionMappingFile = R"(
299+
[unused]
300+
src:*clang/*
301+
src:*clang/lib/Sema/*=emit
302+
src:*clang/lib/Sema/foo*)";
303+
Diags.getDiagnosticOptions().DiagnosticSuppressionMappingsFile = "foo.txt";
304+
FS->addFile("foo.txt", /*ModificationTime=*/{},
305+
llvm::MemoryBuffer::getMemBuffer(SuppressionMappingFile));
306+
clang::ProcessWarningOptions(Diags, Diags.getDiagnosticOptions(), *FS);
307+
EXPECT_THAT(diags(), IsEmpty());
308+
309+
EXPECT_TRUE(Diags.isSuppressedViaMapping(
310+
diag::warn_unused_function, locForFile("clang/lib/Basic/foo.h")));
311+
EXPECT_FALSE(Diags.isSuppressedViaMapping(
312+
diag::warn_unused_function, locForFile("clang/lib/Sema/bar.h")));
313+
EXPECT_TRUE(Diags.isSuppressedViaMapping(diag::warn_unused_function,
314+
locForFile("clang/lib/Sema/foo.h")));
328315
}
329316

330317
TEST_F(SuppressionMappingTest, LongShortMatch) {

0 commit comments

Comments
 (0)