Skip to content

Commit 83334f0

Browse files
committed
Update bolt/unittests/Core/MCPlusBuilder.cpp
1 parent 1692dd6 commit 83334f0

File tree

1 file changed

+12
-18
lines changed

1 file changed

+12
-18
lines changed

bolt/unittests/Core/MCPlusBuilder.cpp

Lines changed: 12 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -87,15 +87,13 @@ struct MCPlusBuilderTester : public testing::TestWithParam<Triple::ArchType> {
8787
}
8888

8989
void testRegAliases(Triple::ArchType Arch, uint64_t Register,
90-
uint64_t *Aliases, size_t Count,
90+
std::initializer_list<MCPhysReg> ExpectedAliases,
9191
bool OnlySmaller = false) {
9292
if (GetParam() != Arch)
9393
GTEST_SKIP();
9494

9595
const BitVector &BV = BC->MIB->getAliases(Register, OnlySmaller);
96-
ASSERT_EQ(BV.count(), Count);
97-
for (size_t I = 0; I < Count; ++I)
98-
ASSERT_TRUE(BV[Aliases[I]]);
96+
assertRegMask(BV, ExpectedAliases);
9997
}
10098

10199
char ElfBuf[sizeof(typename ELF64LE::Ehdr)] = {};
@@ -110,17 +108,15 @@ INSTANTIATE_TEST_SUITE_P(AArch64, MCPlusBuilderTester,
110108
::testing::Values(Triple::aarch64));
111109

112110
TEST_P(MCPlusBuilderTester, AliasX0) {
113-
uint64_t AliasesX0[] = {AArch64::W0, AArch64::W0_HI,
114-
AArch64::X0, AArch64::W0_W1,
115-
AArch64::X0_X1, AArch64::X0_X1_X2_X3_X4_X5_X6_X7};
116-
size_t AliasesX0Count = sizeof(AliasesX0) / sizeof(*AliasesX0);
117-
testRegAliases(Triple::aarch64, AArch64::X0, AliasesX0, AliasesX0Count);
111+
testRegAliases(Triple::aarch64, AArch64::X0,
112+
{AArch64::W0, AArch64::W0_HI, AArch64::X0, AArch64::W0_W1,
113+
AArch64::X0_X1, AArch64::X0_X1_X2_X3_X4_X5_X6_X7});
118114
}
119115

120116
TEST_P(MCPlusBuilderTester, AliasSmallerX0) {
121-
uint64_t AliasesX0[] = {AArch64::W0, AArch64::W0_HI, AArch64::X0};
122-
size_t AliasesX0Count = sizeof(AliasesX0) / sizeof(*AliasesX0);
123-
testRegAliases(Triple::aarch64, AArch64::X0, AliasesX0, AliasesX0Count, true);
117+
testRegAliases(Triple::aarch64, AArch64::X0,
118+
{AArch64::W0, AArch64::W0_HI, AArch64::X0},
119+
/*OnlySmaller=*/true);
124120
}
125121

126122
TEST_P(MCPlusBuilderTester, testAccessedRegsImplicitDef) {
@@ -225,15 +221,13 @@ INSTANTIATE_TEST_SUITE_P(X86, MCPlusBuilderTester,
225221
::testing::Values(Triple::x86_64));
226222

227223
TEST_P(MCPlusBuilderTester, AliasAX) {
228-
uint64_t AliasesAX[] = {X86::RAX, X86::EAX, X86::AX, X86::AL, X86::AH};
229-
size_t AliasesAXCount = sizeof(AliasesAX) / sizeof(*AliasesAX);
230-
testRegAliases(Triple::x86_64, X86::AX, AliasesAX, AliasesAXCount);
224+
testRegAliases(Triple::x86_64, X86::AX,
225+
{X86::RAX, X86::EAX, X86::AX, X86::AL, X86::AH});
231226
}
232227

233228
TEST_P(MCPlusBuilderTester, AliasSmallerAX) {
234-
uint64_t AliasesAX[] = {X86::AX, X86::AL, X86::AH};
235-
size_t AliasesAXCount = sizeof(AliasesAX) / sizeof(*AliasesAX);
236-
testRegAliases(Triple::x86_64, X86::AX, AliasesAX, AliasesAXCount, true);
229+
testRegAliases(Triple::x86_64, X86::AX, {X86::AX, X86::AL, X86::AH},
230+
/*OnlySmaller=*/true);
237231
}
238232

239233
TEST_P(MCPlusBuilderTester, ReplaceRegWithImm) {

0 commit comments

Comments
 (0)