[lldb] Use std::size instead of llvm::array_lengthof

LLVM contains a helpful function for getting the size of a C-style
array: `llvm::array_lengthof`. This is useful prior to C++17, but not as
helpful for C++17 or later: `std::size` already has support for C-style
arrays.

Change call sites to use `std::size` instead.

Differential Revision: https://reviews.llvm.org/D133501
This commit is contained in:
Joe Loser
2022-09-08 09:05:04 -06:00
parent e413eb6cf8
commit 47b76631e7
38 changed files with 114 additions and 123 deletions

View File

@@ -76,7 +76,7 @@ static_assert((sizeof(g_format_infos) / sizeof(g_format_infos[0])) ==
kNumFormats,
"All formats must have a corresponding info entry.");
static uint32_t g_num_format_infos = llvm::array_lengthof(g_format_infos);
static uint32_t g_num_format_infos = std::size(g_format_infos);
static bool GetFormatFromFormatChar(char format_char, Format &format) {
for (uint32_t i = 0; i < g_num_format_infos; ++i) {

View File

@@ -81,7 +81,7 @@ Status MainLoopPosix::RunImpl::Poll() {
EV_SET(&in_events[i++], fd.first, EVFILT_READ, EV_ADD, 0, 0, 0);
num_events = kevent(loop.m_kqueue, in_events.data(), in_events.size(),
out_events, llvm::array_lengthof(out_events), nullptr);
out_events, std::size(out_events), nullptr);
if (num_events < 0) {
if (errno == EINTR) {

View File

@@ -188,9 +188,8 @@ size_t ConnectionGenericFile::Read(void *dst, size_t dst_len,
? std::chrono::duration_cast<std::chrono::milliseconds>(*timeout)
.count()
: INFINITE;
DWORD wait_result =
::WaitForMultipleObjects(llvm::array_lengthof(m_event_handles),
m_event_handles, FALSE, milliseconds);
DWORD wait_result = ::WaitForMultipleObjects(
std::size(m_event_handles), m_event_handles, FALSE, milliseconds);
// All of the events are manual reset events, so make sure we reset them
// to non-signalled.
switch (wait_result) {

View File

@@ -561,7 +561,7 @@ void CommandInterpreter::LoadCommandDictionary() {
"breakpoint set --name '%1'"}};
// clang-format on
size_t num_regexes = llvm::array_lengthof(break_regexes);
size_t num_regexes = std::size(break_regexes);
std::unique_ptr<CommandObjectRegexCommand> break_regex_cmd_up(
new CommandObjectRegexCommand(

View File

@@ -1186,8 +1186,7 @@ static const RegisterInfo g_register_infos[] = {
nullptr,
}};
static const uint32_t k_num_register_infos =
llvm::array_lengthof(g_register_infos);
static const uint32_t k_num_register_infos = std::size(g_register_infos);
const lldb_private::RegisterInfo *
ABIMacOSX_arm::GetRegisterInfoArray(uint32_t &count) {
@@ -1235,7 +1234,7 @@ bool ABIMacOSX_arm::PrepareTrivialCall(Thread &thread, addr_t sp,
llvm::ArrayRef<addr_t>::iterator ai = args.begin(), ae = args.end();
for (size_t i = 0; i < llvm::array_lengthof(reg_names); ++i) {
for (size_t i = 0; i < std::size(reg_names); ++i) {
if (ai == ae)
break;

View File

@@ -1189,8 +1189,7 @@ static const RegisterInfo g_register_infos[] = {
nullptr,
}};
static const uint32_t k_num_register_infos =
llvm::array_lengthof(g_register_infos);
static const uint32_t k_num_register_infos = std::size(g_register_infos);
const lldb_private::RegisterInfo *
ABISysV_arm::GetRegisterInfoArray(uint32_t &count) {
@@ -1240,7 +1239,7 @@ bool ABISysV_arm::PrepareTrivialCall(Thread &thread, addr_t sp,
llvm::ArrayRef<addr_t>::iterator ai = args.begin(), ae = args.end();
for (size_t i = 0; i < llvm::array_lengthof(reg_names); ++i) {
for (size_t i = 0; i < std::size(reg_names); ++i) {
if (ai == ae)
break;

View File

@@ -503,8 +503,7 @@ static const RegisterInfo g_register_infos[] = {
},
};
static const uint32_t k_num_register_infos =
llvm::array_lengthof(g_register_infos);
static const uint32_t k_num_register_infos = std::size(g_register_infos);
const lldb_private::RegisterInfo *
ABISysV_mips::GetRegisterInfoArray(uint32_t &count) {
@@ -560,7 +559,7 @@ bool ABISysV_mips::PrepareTrivialCall(Thread &thread, addr_t sp,
llvm::ArrayRef<addr_t>::iterator ai = args.begin(), ae = args.end();
// Write arguments to registers
for (size_t i = 0; i < llvm::array_lengthof(reg_names); ++i) {
for (size_t i = 0; i < std::size(reg_names); ++i) {
if (ai == ae)
break;

View File

@@ -503,8 +503,7 @@ static const RegisterInfo g_register_infos_mips64[] = {
},
};
static const uint32_t k_num_register_infos =
llvm::array_lengthof(g_register_infos_mips64);
static const uint32_t k_num_register_infos = std::size(g_register_infos_mips64);
const lldb_private::RegisterInfo *
ABISysV_mips64::GetRegisterInfoArray(uint32_t &count) {

View File

@@ -204,8 +204,7 @@ static const RegisterInfo g_register_infos[] = {
nullptr,
}};
static const uint32_t k_num_register_infos =
llvm::array_lengthof(g_register_infos);
static const uint32_t k_num_register_infos = std::size(g_register_infos);
const lldb_private::RegisterInfo *
ABISysV_ppc::GetRegisterInfoArray(uint32_t &count) {

View File

@@ -53,10 +53,10 @@ LLDB_PLUGIN_DEFINE(ABISysV_ppc64)
const lldb_private::RegisterInfo *
ABISysV_ppc64::GetRegisterInfoArray(uint32_t &count) {
if (GetByteOrder() == lldb::eByteOrderLittle) {
count = llvm::array_lengthof(g_register_infos_ppc64le);
count = std::size(g_register_infos_ppc64le);
return g_register_infos_ppc64le;
} else {
count = llvm::array_lengthof(g_register_infos_ppc64);
count = std::size(g_register_infos_ppc64);
return g_register_infos_ppc64;
}
}

View File

@@ -172,8 +172,7 @@ static const RegisterInfo g_register_infos[] = {
DEFINE_REG(f15, 8, nullptr, LLDB_INVALID_REGNUM),
};
static const uint32_t k_num_register_infos =
llvm::array_lengthof(g_register_infos);
static const uint32_t k_num_register_infos = std::size(g_register_infos);
const lldb_private::RegisterInfo *
ABISysV_s390x::GetRegisterInfoArray(uint32_t &count) {

View File

@@ -406,7 +406,7 @@ DynamicLoaderDarwinKernel::ReadMachHeader(addr_t addr, Process *process, llvm::M
const uint32_t magicks[] = { llvm::MachO::MH_MAGIC_64, llvm::MachO::MH_MAGIC, llvm::MachO::MH_CIGAM, llvm::MachO::MH_CIGAM_64};
bool found_matching_pattern = false;
for (size_t i = 0; i < llvm::array_lengthof (magicks); i++)
for (size_t i = 0; i < std::size(magicks); i++)
if (::memcmp (&header.magic, &magicks[i], sizeof (uint32_t)) == 0)
found_matching_pattern = true;

View File

@@ -13188,7 +13188,7 @@ EmulateInstructionARM::GetARMOpcodeForInstruction(const uint32_t opcode,
&EmulateInstructionARM::EmulateRFE, "rfe{<amode>} <Rn>{!}"}
};
static const size_t k_num_arm_opcodes = llvm::array_lengthof(g_arm_opcodes);
static const size_t k_num_arm_opcodes = std::size(g_arm_opcodes);
for (size_t i = 0; i < k_num_arm_opcodes; ++i) {
if ((g_arm_opcodes[i].mask & opcode) == g_arm_opcodes[i].value &&
@@ -13739,7 +13739,7 @@ EmulateInstructionARM::GetThumbOpcodeForInstruction(const uint32_t opcode,
&EmulateInstructionARM::EmulateUXTH, "uxth<c>.w <Rd>,<Rm>{,<rotation>}"},
};
const size_t k_num_thumb_opcodes = llvm::array_lengthof(g_thumb_opcodes);
const size_t k_num_thumb_opcodes = std::size(g_thumb_opcodes);
for (size_t i = 0; i < k_num_thumb_opcodes; ++i) {
if ((g_thumb_opcodes[i].mask & opcode) == g_thumb_opcodes[i].value &&
(g_thumb_opcodes[i].variants & arm_isa) != 0)

View File

@@ -52,7 +52,7 @@ using namespace lldb_private;
LLDB_PLUGIN_DEFINE_ADV(EmulateInstructionARM64, InstructionARM64)
static bool LLDBTableGetRegisterInfo(uint32_t reg_num, RegisterInfo &reg_info) {
if (reg_num >= llvm::array_lengthof(g_register_infos_arm64_le))
if (reg_num >= std::size(g_register_infos_arm64_le))
return false;
reg_info = g_register_infos_arm64_le[reg_num];
return true;
@@ -360,7 +360,7 @@ EmulateInstructionARM64::GetOpcodeForInstruction(const uint32_t opcode) {
"TBNZ <R><t>, #<imm>, <label>"},
};
static const size_t k_num_arm_opcodes = llvm::array_lengthof(g_opcodes);
static const size_t k_num_arm_opcodes = std::size(g_opcodes);
for (size_t i = 0; i < k_num_arm_opcodes; ++i) {
if ((g_opcodes[i].mask & opcode) == g_opcodes[i].value)

View File

@@ -59,7 +59,7 @@ bool EmulateInstructionPPC64::SetTargetTriple(const ArchSpec &arch) {
}
static bool LLDBTableGetRegisterInfo(uint32_t reg_num, RegisterInfo &reg_info) {
if (reg_num >= llvm::array_lengthof(g_register_infos_ppc64le))
if (reg_num >= std::size(g_register_infos_ppc64le))
return false;
reg_info = g_register_infos_ppc64le[reg_num];
return true;
@@ -147,7 +147,7 @@ EmulateInstructionPPC64::GetOpcodeForInstruction(uint32_t opcode) {
"addi RT, RA, SI"},
{0xfc000003, 0xe8000000, &EmulateInstructionPPC64::EmulateLD,
"ld RT, DS(RA)"}};
static const size_t k_num_ppc_opcodes = llvm::array_lengthof(g_opcodes);
static const size_t k_num_ppc_opcodes = std::size(g_opcodes);
for (size_t i = 0; i < k_num_ppc_opcodes; ++i) {
if ((g_opcodes[i].mask & opcode) == g_opcodes[i].value)

View File

@@ -656,7 +656,7 @@ AppleObjCTrampolineHandler::AppleObjCTrampolineHandler(
// array into a template table, and populate the DispatchFunction
// map from there.
for (size_t i = 0; i != llvm::array_lengthof(g_dispatch_functions); i++) {
for (size_t i = 0; i != std::size(g_dispatch_functions); i++) {
ConstString name_const_str(g_dispatch_functions[i].name);
const Symbol *msgSend_symbol =
m_objc_module_sp->FindFirstSymbolWithNameAndType(name_const_str,
@@ -674,9 +674,9 @@ AppleObjCTrampolineHandler::AppleObjCTrampolineHandler(
m_msgSend_map.insert(std::pair<lldb::addr_t, int>(sym_addr, i));
}
}
// Similarly, cache the addresses of the "optimized dispatch" function.
for (size_t i = 0; i != llvm::array_lengthof(g_opt_dispatch_names); i++) {
for (size_t i = 0; i != std::size(g_opt_dispatch_names); i++) {
ConstString name_const_str(g_opt_dispatch_names[i]);
const Symbol *msgSend_symbol =
m_objc_module_sp->FindFirstSymbolWithNameAndType(name_const_str,

View File

@@ -743,7 +743,7 @@ bool ObjectFilePECOFF::ParseSectionHeaders(
}
llvm::StringRef ObjectFilePECOFF::GetSectionName(const section_header_t &sect) {
llvm::StringRef hdr_name(sect.name, llvm::array_lengthof(sect.name));
llvm::StringRef hdr_name(sect.name, std::size(sect.name));
hdr_name = hdr_name.split('\0').first;
if (hdr_name.consume_front("/")) {
lldb::offset_t stroff;

View File

@@ -167,7 +167,7 @@ uint32_t EHProgramBuilder::ConvertMachineToLLDBRegister(uint8_t machine_reg) {
lldb_r8_x86_64, lldb_r9_x86_64, lldb_r10_x86_64, lldb_r11_x86_64,
lldb_r12_x86_64, lldb_r13_x86_64, lldb_r14_x86_64, lldb_r15_x86_64};
if (machine_reg >= llvm::array_lengthof(machine_to_lldb_register))
if (machine_reg >= std::size(machine_to_lldb_register))
return LLDB_INVALID_REGNUM;
return machine_to_lldb_register[machine_reg];
@@ -182,7 +182,7 @@ uint32_t EHProgramBuilder::ConvertXMMToLLDBRegister(uint8_t xmm_reg) {
lldb_xmm12_x86_64, lldb_xmm13_x86_64, lldb_xmm14_x86_64,
lldb_xmm15_x86_64};
if (xmm_reg >= llvm::array_lengthof(xmm_to_lldb_register))
if (xmm_reg >= std::size(xmm_to_lldb_register))
return LLDB_INVALID_REGNUM;
return xmm_to_lldb_register[xmm_reg];

View File

@@ -652,7 +652,7 @@ BreakpointSP PlatformDarwin::SetThreadCreationBreakpoint(Target &target) {
"libSystem.B.dylib"};
FileSpecList bp_modules;
for (size_t i = 0; i < llvm::array_lengthof(g_bp_modules); i++) {
for (size_t i = 0; i < std::size(g_bp_modules); i++) {
const char *bp_module = g_bp_modules[i];
bp_modules.EmplaceBack(bp_module);
}
@@ -661,9 +661,9 @@ BreakpointSP PlatformDarwin::SetThreadCreationBreakpoint(Target &target) {
bool hardware = false;
LazyBool skip_prologue = eLazyBoolNo;
bp_sp = target.CreateBreakpoint(&bp_modules, nullptr, g_bp_names,
llvm::array_lengthof(g_bp_names),
eFunctionNameTypeFull, eLanguageTypeUnknown,
0, skip_prologue, internal, hardware);
std::size(g_bp_names), eFunctionNameTypeFull,
eLanguageTypeUnknown, 0, skip_prologue,
internal, hardware);
bp_sp->SetBreakpointKind("thread-creation");
return bp_sp;

View File

@@ -856,7 +856,7 @@ static uint32_t g_exc_regnums[] = {
exc_exception, exc_fsr, exc_far,
};
static size_t k_num_register_infos = llvm::array_lengthof(g_register_infos);
static size_t k_num_register_infos = std::size(g_register_infos);
RegisterContextDarwin_arm::RegisterContextDarwin_arm(
Thread &thread, uint32_t concrete_frame_idx)
@@ -897,9 +897,9 @@ const RegisterInfo *RegisterContextDarwin_arm::GetRegisterInfos() {
}
// Number of registers in each register set
const size_t k_num_gpr_registers = llvm::array_lengthof(g_gpr_regnums);
const size_t k_num_fpu_registers = llvm::array_lengthof(g_fpu_regnums);
const size_t k_num_exc_registers = llvm::array_lengthof(g_exc_regnums);
const size_t k_num_gpr_registers = std::size(g_gpr_regnums);
const size_t k_num_fpu_registers = std::size(g_fpu_regnums);
const size_t k_num_exc_registers = std::size(g_exc_regnums);
// Register set definitions. The first definitions at register set index of
// zero is for all registers, followed by other registers sets. The register
@@ -911,7 +911,7 @@ static const RegisterSet g_reg_sets[] = {
{"Floating Point Registers", "fpu", k_num_fpu_registers, g_fpu_regnums},
{"Exception State Registers", "exc", k_num_exc_registers, g_exc_regnums}};
const size_t k_num_regsets = llvm::array_lengthof(g_reg_sets);
const size_t k_num_regsets = std::size(g_reg_sets);
size_t RegisterContextDarwin_arm::GetRegisterSetCount() {
return k_num_regsets;

View File

@@ -90,8 +90,7 @@ static uint32_t g_fpu_regnums[] = {
static uint32_t g_exc_regnums[] = {exc_far, exc_esr, exc_exception};
static size_t k_num_register_infos =
llvm::array_lengthof(g_register_infos_arm64_le);
static size_t k_num_register_infos = std::size(g_register_infos_arm64_le);
RegisterContextDarwin_arm64::RegisterContextDarwin_arm64(
Thread &thread, uint32_t concrete_frame_idx)
@@ -132,9 +131,9 @@ const RegisterInfo *RegisterContextDarwin_arm64::GetRegisterInfos() {
}
// Number of registers in each register set
const size_t k_num_gpr_registers = llvm::array_lengthof(g_gpr_regnums);
const size_t k_num_fpu_registers = llvm::array_lengthof(g_fpu_regnums);
const size_t k_num_exc_registers = llvm::array_lengthof(g_exc_regnums);
const size_t k_num_gpr_registers = std::size(g_gpr_regnums);
const size_t k_num_fpu_registers = std::size(g_fpu_regnums);
const size_t k_num_exc_registers = std::size(g_exc_regnums);
// Register set definitions. The first definitions at register set index of
// zero is for all registers, followed by other registers sets. The register
@@ -146,7 +145,7 @@ static const RegisterSet g_reg_sets[] = {
{"Floating Point Registers", "fpu", k_num_fpu_registers, g_fpu_regnums},
{"Exception State Registers", "exc", k_num_exc_registers, g_exc_regnums}};
const size_t k_num_regsets = llvm::array_lengthof(g_reg_sets);
const size_t k_num_regsets = std::size(g_reg_sets);
size_t RegisterContextDarwin_arm64::GetRegisterSetCount() {
return k_num_regsets;

View File

@@ -363,7 +363,7 @@ static RegisterInfo g_register_infos[] = {
nullptr,
}};
static size_t k_num_register_infos = llvm::array_lengthof(g_register_infos);
static size_t k_num_register_infos = std::size(g_register_infos);
RegisterContextDarwin_i386::RegisterContextDarwin_i386(
Thread &thread, uint32_t concrete_frame_idx)
@@ -421,9 +421,9 @@ static uint32_t g_fpu_regnums[] = {
static uint32_t g_exc_regnums[] = {exc_trapno, exc_err, exc_faultvaddr};
// Number of registers in each register set
const size_t k_num_gpr_registers = llvm::array_lengthof(g_gpr_regnums);
const size_t k_num_fpu_registers = llvm::array_lengthof(g_fpu_regnums);
const size_t k_num_exc_registers = llvm::array_lengthof(g_exc_regnums);
const size_t k_num_gpr_registers = std::size(g_gpr_regnums);
const size_t k_num_fpu_registers = std::size(g_fpu_regnums);
const size_t k_num_exc_registers = std::size(g_exc_regnums);
// Register set definitions. The first definitions at register set index of
// zero is for all registers, followed by other registers sets. The register
@@ -435,7 +435,7 @@ static const RegisterSet g_reg_sets[] = {
{"Floating Point Registers", "fpu", k_num_fpu_registers, g_fpu_regnums},
{"Exception State Registers", "exc", k_num_exc_registers, g_exc_regnums}};
const size_t k_num_regsets = llvm::array_lengthof(g_reg_sets);
const size_t k_num_regsets = std::size(g_reg_sets);
size_t RegisterContextDarwin_i386::GetRegisterSetCount() {
return k_num_regsets;

View File

@@ -420,7 +420,7 @@ static RegisterInfo g_register_infos[] = {
nullptr,
}};
static size_t k_num_register_infos = llvm::array_lengthof(g_register_infos);
static size_t k_num_register_infos = std::size(g_register_infos);
RegisterContextDarwin_x86_64::RegisterContextDarwin_x86_64(
Thread &thread, uint32_t concrete_frame_idx)
@@ -477,9 +477,9 @@ static uint32_t g_fpu_regnums[] = {
static uint32_t g_exc_regnums[] = {exc_trapno, exc_err, exc_faultvaddr};
// Number of registers in each register set
const size_t k_num_gpr_registers = llvm::array_lengthof(g_gpr_regnums);
const size_t k_num_fpu_registers = llvm::array_lengthof(g_fpu_regnums);
const size_t k_num_exc_registers = llvm::array_lengthof(g_exc_regnums);
const size_t k_num_gpr_registers = std::size(g_gpr_regnums);
const size_t k_num_fpu_registers = std::size(g_fpu_regnums);
const size_t k_num_exc_registers = std::size(g_exc_regnums);
// Register set definitions. The first definitions at register set index of
// zero is for all registers, followed by other registers sets. The register
@@ -491,7 +491,7 @@ static const RegisterSet g_reg_sets[] = {
{"Floating Point Registers", "fpu", k_num_fpu_registers, g_fpu_regnums},
{"Exception State Registers", "exc", k_num_exc_registers, g_exc_regnums}};
const size_t k_num_regsets = llvm::array_lengthof(g_reg_sets);
const size_t k_num_regsets = std::size(g_reg_sets);
size_t RegisterContextDarwin_x86_64::GetRegisterSetCount() {
return k_num_regsets;

View File

@@ -78,11 +78,11 @@ const RegisterInfo *RegisterContextWindows_i386::GetRegisterInfo() const {
}
uint32_t RegisterContextWindows_i386::GetRegisterCount() const {
return llvm::array_lengthof(g_register_infos_i386);
return std::size(g_register_infos_i386);
}
uint32_t RegisterContextWindows_i386::GetUserRegisterCount() const {
return llvm::array_lengthof(g_register_infos_i386);
return std::size(g_register_infos_i386);
}
size_t RegisterContextWindows_i386::GetGPRSize() const { return sizeof(GPR); }

View File

@@ -141,11 +141,11 @@ const RegisterInfo *RegisterContextWindows_x86_64::GetRegisterInfo() const {
}
uint32_t RegisterContextWindows_x86_64::GetRegisterCount() const {
return llvm::array_lengthof(g_register_infos_x86_64);
return std::size(g_register_infos_x86_64);
}
uint32_t RegisterContextWindows_x86_64::GetUserRegisterCount() const {
return llvm::array_lengthof(g_register_infos_x86_64);
return std::size(g_register_infos_x86_64);
}
size_t RegisterContextWindows_x86_64::GetGPRSize() const { return sizeof(GPR); }

View File

@@ -37,8 +37,8 @@ static const uint32_t g_gpr_regnums_WoW64[] = {
};
static const RegisterSet g_reg_sets_WoW64[] = {
{"General Purpose Registers", "gpr",
llvm::array_lengthof(g_gpr_regnums_WoW64) - 1, g_gpr_regnums_WoW64},
{"General Purpose Registers", "gpr", std::size(g_gpr_regnums_WoW64) - 1,
g_gpr_regnums_WoW64},
};
enum { k_num_register_sets = 1 };

View File

@@ -68,10 +68,10 @@ static_assert(((sizeof g_fpr_regnums_arm / sizeof g_fpr_regnums_arm[0]) - 1) ==
"g_fpu_regnums_arm has wrong number of register infos");
static const RegisterSet g_reg_sets_arm[] = {
{"General Purpose Registers", "gpr",
llvm::array_lengthof(g_gpr_regnums_arm) - 1, g_gpr_regnums_arm},
{"Floating Point Registers", "fpr",
llvm::array_lengthof(g_fpr_regnums_arm) - 1, g_fpr_regnums_arm},
{"General Purpose Registers", "gpr", std::size(g_gpr_regnums_arm) - 1,
g_gpr_regnums_arm},
{"Floating Point Registers", "fpr", std::size(g_fpr_regnums_arm) - 1,
g_fpr_regnums_arm},
};
enum { k_num_register_sets = 2 };

View File

@@ -84,10 +84,10 @@ static_assert(((sizeof g_fpr_regnums_arm64 / sizeof g_fpr_regnums_arm64[0]) -
"g_fpu_regnums_arm64 has wrong number of register infos");
static const RegisterSet g_reg_sets_arm64[] = {
{"General Purpose Registers", "gpr",
llvm::array_lengthof(g_gpr_regnums_arm64) - 1, g_gpr_regnums_arm64},
{"Floating Point Registers", "fpr",
llvm::array_lengthof(g_fpr_regnums_arm64) - 1, g_fpr_regnums_arm64},
{"General Purpose Registers", "gpr", std::size(g_gpr_regnums_arm64) - 1,
g_gpr_regnums_arm64},
{"Floating Point Registers", "fpr", std::size(g_fpr_regnums_arm64) - 1,
g_fpr_regnums_arm64},
};
enum { k_num_register_sets = 2 };

View File

@@ -37,8 +37,8 @@ static const uint32_t g_gpr_regnums_i386[] = {
};
static const RegisterSet g_reg_sets_i386[] = {
{"General Purpose Registers", "gpr",
llvm::array_lengthof(g_gpr_regnums_i386) - 1, g_gpr_regnums_i386},
{"General Purpose Registers", "gpr", std::size(g_gpr_regnums_i386) - 1,
g_gpr_regnums_i386},
};
enum { k_num_register_sets = 1 };

View File

@@ -48,10 +48,10 @@ static const uint32_t g_fpr_regnums_x86_64[] = {
};
static const RegisterSet g_reg_sets_x86_64[] = {
{"General Purpose Registers", "gpr",
llvm::array_lengthof(g_gpr_regnums_x86_64) - 1, g_gpr_regnums_x86_64},
{"Floating Point Registers", "fpr",
llvm::array_lengthof(g_fpr_regnums_x86_64) - 1, g_fpr_regnums_x86_64}};
{"General Purpose Registers", "gpr", std::size(g_gpr_regnums_x86_64) - 1,
g_gpr_regnums_x86_64},
{"Floating Point Registers", "fpr", std::size(g_fpr_regnums_x86_64) - 1,
g_fpr_regnums_x86_64}};
enum { k_num_register_sets = 2 };

View File

@@ -41,7 +41,7 @@ using namespace lldb_private;
#include "Plugins/Process/Utility/RegisterInfos_arm.h"
#undef DECLARE_REGISTER_INFOS_ARM_STRUCT
static size_t k_num_register_infos = llvm::array_lengthof(g_register_infos_arm);
static size_t k_num_register_infos = std::size(g_register_infos_arm);
// Array of lldb register numbers used to define the set of all General Purpose
// Registers
@@ -68,9 +68,9 @@ uint32_t g_fpu_reg_indices[] = {
};
RegisterSet g_register_sets[] = {
{"General Purpose Registers", "gpr",
llvm::array_lengthof(g_gpr_reg_indices), g_gpr_reg_indices},
{"Floating Point Registers", "fpu", llvm::array_lengthof(g_fpu_reg_indices),
{"General Purpose Registers", "gpr", std::size(g_gpr_reg_indices),
g_gpr_reg_indices},
{"Floating Point Registers", "fpu", std::size(g_fpu_reg_indices),
g_fpu_reg_indices},
};
@@ -82,7 +82,7 @@ RegisterContextWindows_arm::RegisterContextWindows_arm(
RegisterContextWindows_arm::~RegisterContextWindows_arm() {}
size_t RegisterContextWindows_arm::GetRegisterCount() {
return llvm::array_lengthof(g_register_infos_arm);
return std::size(g_register_infos_arm);
}
const RegisterInfo *
@@ -93,7 +93,7 @@ RegisterContextWindows_arm::GetRegisterInfoAtIndex(size_t reg) {
}
size_t RegisterContextWindows_arm::GetRegisterSetCount() {
return llvm::array_lengthof(g_register_sets);
return std::size(g_register_sets);
}
const RegisterSet *RegisterContextWindows_arm::GetRegisterSet(size_t reg_set) {

View File

@@ -44,8 +44,7 @@ using namespace lldb_private;
#include "Plugins/Process/Utility/RegisterInfos_arm64.h"
#undef DECLARE_REGISTER_INFOS_ARM64_STRUCT
static size_t k_num_register_infos =
llvm::array_lengthof(g_register_infos_arm64_le);
static size_t k_num_register_infos = std::size(g_register_infos_arm64_le);
// Array of lldb register numbers used to define the set of all General Purpose
// Registers
@@ -82,9 +81,9 @@ uint32_t g_fpu_reg_indices[] = {
};
RegisterSet g_register_sets[] = {
{"General Purpose Registers", "gpr",
llvm::array_lengthof(g_gpr_reg_indices), g_gpr_reg_indices},
{"Floating Point Registers", "fpu", llvm::array_lengthof(g_fpu_reg_indices),
{"General Purpose Registers", "gpr", std::size(g_gpr_reg_indices),
g_gpr_reg_indices},
{"Floating Point Registers", "fpu", std::size(g_fpu_reg_indices),
g_fpu_reg_indices},
};
@@ -96,7 +95,7 @@ RegisterContextWindows_arm64::RegisterContextWindows_arm64(
RegisterContextWindows_arm64::~RegisterContextWindows_arm64() {}
size_t RegisterContextWindows_arm64::GetRegisterCount() {
return llvm::array_lengthof(g_register_infos_arm64_le);
return std::size(g_register_infos_arm64_le);
}
const RegisterInfo *
@@ -107,7 +106,7 @@ RegisterContextWindows_arm64::GetRegisterInfoAtIndex(size_t reg) {
}
size_t RegisterContextWindows_arm64::GetRegisterSetCount() {
return llvm::array_lengthof(g_register_sets);
return std::size(g_register_sets);
}
const RegisterSet *

View File

@@ -262,7 +262,7 @@ RegisterInfo g_register_infos[] = {
{DEFINE_FPU_XMM(xmm14)},
{DEFINE_FPU_XMM(xmm15)}};
static size_t k_num_register_infos = llvm::array_lengthof(g_register_infos);
static size_t k_num_register_infos = std::size(g_register_infos);
// Array of lldb register numbers used to define the set of all General Purpose
// Registers
@@ -303,10 +303,10 @@ uint32_t g_fpu_reg_indices[] = {
};
RegisterSet g_register_sets[] = {
{"General Purpose Registers", "gpr",
llvm::array_lengthof(g_gpr_reg_indices), g_gpr_reg_indices},
{"Floating Point Registers", "fpu",
llvm::array_lengthof(g_fpu_reg_indices), g_fpu_reg_indices}};
{"General Purpose Registers", "gpr", std::size(g_gpr_reg_indices),
g_gpr_reg_indices},
{"Floating Point Registers", "fpu", std::size(g_fpu_reg_indices),
g_fpu_reg_indices}};
}
// Constructors and Destructors
@@ -317,7 +317,7 @@ RegisterContextWindows_x64::RegisterContextWindows_x64(
RegisterContextWindows_x64::~RegisterContextWindows_x64() {}
size_t RegisterContextWindows_x64::GetRegisterCount() {
return llvm::array_lengthof(g_register_infos);
return std::size(g_register_infos);
}
const RegisterInfo *
@@ -328,7 +328,7 @@ RegisterContextWindows_x64::GetRegisterInfoAtIndex(size_t reg) {
}
size_t RegisterContextWindows_x64::GetRegisterSetCount() {
return llvm::array_lengthof(g_register_sets);
return std::size(g_register_sets);
}
const RegisterSet *RegisterContextWindows_x64::GetRegisterSet(size_t reg_set) {

View File

@@ -118,7 +118,7 @@ RegisterInfo g_register_infos[] = {
nullptr,
},
};
static size_t k_num_register_infos = llvm::array_lengthof(g_register_infos);
static size_t k_num_register_infos = std::size(g_register_infos);
// Array of lldb register numbers used to define the set of all General Purpose
// Registers
@@ -129,8 +129,8 @@ uint32_t g_gpr_reg_indices[] = {eRegisterIndexEax, eRegisterIndexEbx,
eRegisterIndexEip, eRegisterIndexEflags};
RegisterSet g_register_sets[] = {
{"General Purpose Registers", "gpr",
llvm::array_lengthof(g_gpr_reg_indices), g_gpr_reg_indices},
{"General Purpose Registers", "gpr", std::size(g_gpr_reg_indices),
g_gpr_reg_indices},
};
}
@@ -142,7 +142,7 @@ RegisterContextWindows_x86::RegisterContextWindows_x86(
RegisterContextWindows_x86::~RegisterContextWindows_x86() {}
size_t RegisterContextWindows_x86::GetRegisterCount() {
return llvm::array_lengthof(g_register_infos);
return std::size(g_register_infos);
}
const RegisterInfo *
@@ -153,7 +153,7 @@ RegisterContextWindows_x86::GetRegisterInfoAtIndex(size_t reg) {
}
size_t RegisterContextWindows_x86::GetRegisterSetCount() {
return llvm::array_lengthof(g_register_sets);
return std::size(g_register_sets);
}
const RegisterSet *RegisterContextWindows_x86::GetRegisterSet(size_t reg_set) {

View File

@@ -336,7 +336,7 @@ static RegisterInfo g_reg_infos[] = {
DEF_Q(14),
DEF_Q(15)};
constexpr size_t k_num_reg_infos = llvm::array_lengthof(g_reg_infos);
constexpr size_t k_num_reg_infos = std::size(g_reg_infos);
// ARM general purpose registers.
const uint32_t g_gpr_regnums[] = {
@@ -445,26 +445,26 @@ const uint32_t g_fpu_regnums[] = {
};
// Skip the last LLDB_INVALID_REGNUM in each count below by subtracting 1
constexpr size_t k_num_gpr_regs = llvm::array_lengthof(g_gpr_regnums) - 1;
constexpr size_t k_num_fpu_regs = llvm::array_lengthof(g_fpu_regnums) - 1;
constexpr size_t k_num_gpr_regs = std::size(g_gpr_regnums) - 1;
constexpr size_t k_num_fpu_regs = std::size(g_fpu_regnums) - 1;
static RegisterSet g_reg_sets[] = {
{"General Purpose Registers", "gpr", k_num_gpr_regs, g_gpr_regnums},
{"Floating Point Registers", "fpu", k_num_fpu_regs, g_fpu_regnums},
};
constexpr size_t k_num_reg_sets = llvm::array_lengthof(g_reg_sets);
constexpr size_t k_num_reg_sets = std::size(g_reg_sets);
RegisterContextMinidump_ARM::RegisterContextMinidump_ARM(
lldb_private::Thread &thread, const DataExtractor &data, bool apple)
: RegisterContext(thread, 0), m_apple(apple) {
lldb::offset_t offset = 0;
m_regs.context_flags = data.GetU32(&offset);
for (unsigned i = 0; i < llvm::array_lengthof(m_regs.r); ++i)
for (unsigned i = 0; i < std::size(m_regs.r); ++i)
m_regs.r[i] = data.GetU32(&offset);
m_regs.cpsr = data.GetU32(&offset);
m_regs.fpscr = data.GetU64(&offset);
for (unsigned i = 0; i < llvm::array_lengthof(m_regs.d); ++i)
for (unsigned i = 0; i < std::size(m_regs.d); ++i)
m_regs.d[i] = data.GetU64(&offset);
lldbassert(k_num_regs == k_num_reg_infos);
}

View File

@@ -544,7 +544,7 @@ static RegisterInfo g_reg_infos[] = {
DEF_H(31),
};
constexpr size_t k_num_reg_infos = llvm::array_lengthof(g_reg_infos);
constexpr size_t k_num_reg_infos = std::size(g_reg_infos);
// ARM64 general purpose registers.
const uint32_t g_gpr_regnums[] = {
@@ -751,15 +751,15 @@ const uint32_t g_fpu_regnums[] = {
};
// Skip the last LLDB_INVALID_REGNUM in each count below by subtracting 1
constexpr size_t k_num_gpr_regs = llvm::array_lengthof(g_gpr_regnums) - 1;
constexpr size_t k_num_fpu_regs = llvm::array_lengthof(g_fpu_regnums) - 1;
constexpr size_t k_num_gpr_regs = std::size(g_gpr_regnums) - 1;
constexpr size_t k_num_fpu_regs = std::size(g_fpu_regnums) - 1;
static RegisterSet g_reg_sets[] = {
{"General Purpose Registers", "gpr", k_num_gpr_regs, g_gpr_regnums},
{"Floating Point Registers", "fpu", k_num_fpu_regs, g_fpu_regnums},
};
constexpr size_t k_num_reg_sets = llvm::array_lengthof(g_reg_sets);
constexpr size_t k_num_reg_sets = std::size(g_reg_sets);
RegisterContextMinidump_ARM64::RegisterContextMinidump_ARM64(
lldb_private::Thread &thread, const DataExtractor &data)

View File

@@ -340,9 +340,9 @@ static const ArchDefinitionEntry g_macho_arch_entries[] = {
{ArchSpec::eCore_uknownMach64, llvm::MachO::CPU_ARCH_ABI64, 0, 0xFF000000u, 0x00000000u}};
// clang-format on
static const ArchDefinition g_macho_arch_def = {
eArchTypeMachO, llvm::array_lengthof(g_macho_arch_entries),
g_macho_arch_entries, "mach-o"};
static const ArchDefinition g_macho_arch_def = {eArchTypeMachO,
std::size(g_macho_arch_entries),
g_macho_arch_entries, "mach-o"};
//===----------------------------------------------------------------------===//
// A table that gets searched linearly for matches. This table is used to
@@ -410,7 +410,7 @@ static const ArchDefinitionEntry g_elf_arch_entries[] = {
static const ArchDefinition g_elf_arch_def = {
eArchTypeELF,
llvm::array_lengthof(g_elf_arch_entries),
std::size(g_elf_arch_entries),
g_elf_arch_entries,
"elf",
};
@@ -436,7 +436,7 @@ static const ArchDefinitionEntry g_coff_arch_entries[] = {
static const ArchDefinition g_coff_arch_def = {
eArchTypeCOFF,
llvm::array_lengthof(g_coff_arch_entries),
std::size(g_coff_arch_entries),
g_coff_arch_entries,
"pe-coff",
};
@@ -468,7 +468,7 @@ static const CoreDefinition *FindCoreDefinition(llvm::StringRef name) {
}
static inline const CoreDefinition *FindCoreDefinition(ArchSpec::Core core) {
if (core < llvm::array_lengthof(g_core_definitions))
if (core < std::size(g_core_definitions))
return &g_core_definitions[core];
return nullptr;
}

View File

@@ -72,7 +72,7 @@ TEST(StatusTest, ErrorWin32) {
EXPECT_TRUE(success.Success());
WCHAR name[128]{};
ULONG nameLen = llvm::array_lengthof(name);
ULONG nameLen = std::size(name);
ULONG langs = 0;
GetUserPreferredUILanguages(MUI_LANGUAGE_NAME, &langs,
reinterpret_cast<PZZWSTR>(&name), &nameLen);