mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-08 02:03:56 -06:00
tcg/loongarch64: Check the host supports unaligned accesses
This should be true of all loongarch64 running Linux. Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
a0d99b3f47
commit
81f004b223
1 changed files with 9 additions and 0 deletions
|
@ -30,6 +30,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "../tcg-ldst.c.inc"
|
#include "../tcg-ldst.c.inc"
|
||||||
|
#include <asm/hwcap.h>
|
||||||
|
|
||||||
#ifdef CONFIG_DEBUG_TCG
|
#ifdef CONFIG_DEBUG_TCG
|
||||||
static const char * const tcg_target_reg_names[TCG_TARGET_NB_REGS] = {
|
static const char * const tcg_target_reg_names[TCG_TARGET_NB_REGS] = {
|
||||||
|
@ -1674,6 +1675,14 @@ static void tcg_target_qemu_prologue(TCGContext *s)
|
||||||
|
|
||||||
static void tcg_target_init(TCGContext *s)
|
static void tcg_target_init(TCGContext *s)
|
||||||
{
|
{
|
||||||
|
unsigned long hwcap = qemu_getauxval(AT_HWCAP);
|
||||||
|
|
||||||
|
/* Server and desktop class cpus have UAL; embedded cpus do not. */
|
||||||
|
if (!(hwcap & HWCAP_LOONGARCH_UAL)) {
|
||||||
|
error_report("TCG: unaligned access support required; exiting");
|
||||||
|
exit(EXIT_FAILURE);
|
||||||
|
}
|
||||||
|
|
||||||
tcg_target_available_regs[TCG_TYPE_I32] = ALL_GENERAL_REGS;
|
tcg_target_available_regs[TCG_TYPE_I32] = ALL_GENERAL_REGS;
|
||||||
tcg_target_available_regs[TCG_TYPE_I64] = ALL_GENERAL_REGS;
|
tcg_target_available_regs[TCG_TYPE_I64] = ALL_GENERAL_REGS;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue