blob: 7be9e466b68f246f9013ecf4a1b5340fbf5493ed [file]
/* SPDX-License-Identifier: GPL-2.0-or-later */
#include "qemu/osdep.h"
#include "qemu.h"
#include "loader.h"
#include "target_elf.h"
abi_ulong get_elf_hwcap(CPUState *cs)
{
/*
* The Linux kernel computes ELF_HWCAP as ~amask(-1), which clears a bit
* for each supported ISA extension. env->amask stores exactly those bits
* set for the extensions supported by the emulated CPU model, matching
* the kernel's convention: bit set in AT_HWCAP ↔ extension present.
*/
return cpu_env(cs)->amask;
}
void elf_core_copy_regs(target_elf_gregset_t *r, const CPUAlphaState *env)
{
int i;
for (i = 0; i < 31; i++) {
r->regs[i] = tswap64(env->ir[i]);
}
r->pc = tswap64(env->pc);
r->unique = tswap64(env->unique);
}
const char *get_elf_cpu_model(uint32_t eflags)
{
return "ev67";
}