Skip to content

Commit 62178df

Browse files
committed
Update bolt/unittests/Core/MCPlusBuilder.cpp
1 parent b030705 commit 62178df

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, AArch64_CmpJE) {
@@ -273,15 +269,13 @@ INSTANTIATE_TEST_SUITE_P(X86, MCPlusBuilderTester,
273269
::testing::Values(Triple::x86_64));
274270

275271
TEST_P(MCPlusBuilderTester, AliasAX) {
276-
uint64_t AliasesAX[] = {X86::RAX, X86::EAX, X86::AX, X86::AL, X86::AH};
277-
size_t AliasesAXCount = sizeof(AliasesAX) / sizeof(*AliasesAX);
278-
testRegAliases(Triple::x86_64, X86::AX, AliasesAX, AliasesAXCount);
272+
testRegAliases(Triple::x86_64, X86::AX,
273+
{X86::RAX, X86::EAX, X86::AX, X86::AL, X86::AH});
279274
}
280275

281276
TEST_P(MCPlusBuilderTester, AliasSmallerAX) {
282-
uint64_t AliasesAX[] = {X86::AX, X86::AL, X86::AH};
283-
size_t AliasesAXCount = sizeof(AliasesAX) / sizeof(*AliasesAX);
284-
testRegAliases(Triple::x86_64, X86::AX, AliasesAX, AliasesAXCount, true);
277+
testRegAliases(Triple::x86_64, X86::AX, {X86::AX, X86::AL, X86::AH},
278+
/*OnlySmaller=*/true);
285279
}
286280

287281
TEST_P(MCPlusBuilderTester, ReplaceRegWithImm) {

0 commit comments

Comments
 (0)