From nobody Thu Apr 25 20:10:59 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of _spf.google.com designates 209.85.221.45 as permitted sender) client-ip=209.85.221.45; envelope-from=philippe.mathieu.daude@gmail.com; helo=mail-wr1-f45.google.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.45 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1605791909; cv=none; d=zohomail.com; s=zohoarc; b=MvCTrYdDGfc0C32DgAEo0aqURHwGkRO8o5JRZWDgEWU684BeuU2/Fs2uS7G35ZBi1mT462yUkd2eHlL9GSu0881A1OvHaj03T0z7G+UeJCvC91HByTmyma1UiLcaIiso1C64vdZXFoYsBzggrV4HREuuT/xSSH5Xd4FvgaBDxsA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1605791909; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:MIME-Version:Message-ID:Sender:Subject:To; bh=O+P15iR/bWrJBHOJx33YiIQBU3fpyBSJHI3jMMJ+Wa4=; b=QGGwMcs4hOXZQUaK1poZJkJewlX+PQ19fXcCtMmpSyDK0Vu2l9HD8A1Ybo2CRtAS3ybIjSGYHWeUjSvoLdlG1k8jMeVWCaqhhOnxWCTHWBdsuXxysEOdO+FrFpTyJjsHnigOYfchwm3ZRu0qb8FqMDpsX1G4XXG1pVYlSMhyF8g= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of _spf.google.com designates 209.85.221.45 as permitted sender) smtp.mailfrom=philippe.mathieu.daude@gmail.com Received: from mail-wr1-f45.google.com (mail-wr1-f45.google.com [209.85.221.45]) by mx.zohomail.com with SMTPS id 1605791909701414.8606103117562; Thu, 19 Nov 2020 05:18:29 -0800 (PST) Received: by mail-wr1-f45.google.com with SMTP id k2so6457048wrx.2 for ; Thu, 19 Nov 2020 05:18:28 -0800 (PST) Return-Path: Return-Path: Received: from localhost.localdomain (234.red-83-42-66.dynamicip.rima-tde.net. [83.42.66.234]) by smtp.gmail.com with ESMTPSA id j8sm35148282wrx.11.2020.11.19.05.18.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Nov 2020 05:18:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=O+P15iR/bWrJBHOJx33YiIQBU3fpyBSJHI3jMMJ+Wa4=; b=PyRluMnB6sOSJC/aVzwP5aBGsCZO3No5faIa2Dr4W3eh/FdGks9RH1oU1OeywoT1Pf bdIVr3R89a1AWoMbTFynL9kNwgdoqBueN9rbBGxmzFC+uQN4RlEhX8WjYpB8HrWWDWug f29bZbgTED9xB4zE1if6OZ1u8VM5x+MupkM6sd5T6n+l8kNVSMIVfRSq+1KmbndpGYzl Y5rjcWZj9CauVMBn1aAfbOuYj8cnGRRfpKsXahlklxXkTfRFBpUwbsZyJxwLbLZoRYYs 0YxYFMNRR8z76CqFv12STwcuysk+T43FIZZ+iqhGbaYGVFN6Rzh75fzZQqLNUK6CY5Qw AE9w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :mime-version:content-transfer-encoding; bh=O+P15iR/bWrJBHOJx33YiIQBU3fpyBSJHI3jMMJ+Wa4=; b=X1ghM9xxFiG5FUzZWK2jqy9BIyJ5dDWUCaPrGPjxiVRWdWuiB8MfQk79z36lYi4u5/ qRoqYIKjR8hsHjyjrqJlOTIHjTgdy3hYrxo/nv51sO/qdRrkVTQgOo1evcjSG61PjJKI qmba9FwTZImmI8SUbG1Zi1dlaNcxsr3nXge6MKAuJ0NJvOwoz6qWV6riMRj1xYDynEUz CmNC0dJiF4mF2K8jlVAmV5JfzCSb8WqGLg8NO795iaTbwKHnDO39gc36/0yAYAeaIeIv MQiqCshXICiPU/JfxBvwKUZsFOYOjRErzBF/5c2QJotZnQICM6gCAph+zpfOWZFL+zSx S9pA== X-Gm-Message-State: AOAM530MYXU5mHGUfDfj1OPll0zvLrzh+fs/Zr/Cm8pLzuS5AqEhB52P ze5JMh6oUxRpZ4Lx8IR/OLQ= X-Google-Smtp-Source: ABdhPJy3V3xPkabk19+hgK5VKCGDd+vjfYak3+1kkTRArv1dEXLBqC2KJOlpwiSyUd7s9Zr23PAyBQ== X-Received: by 2002:adf:e54f:: with SMTP id z15mr10037808wrm.159.1605791906842; Thu, 19 Nov 2020 05:18:26 -0800 (PST) Sender: =?UTF-8?Q?Philippe_Mathieu=2DDaud=C3=A9?= From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Aleksandar Rikalo , Laurent Vivier , Aurelien Jarno , Jiaxun Yang , Richard Henderson Subject: [PATCH] target/mips/helper: Also display exception names in user-mode Date: Thu, 19 Nov 2020 14:18:24 +0100 Message-Id: <20201119131824.1898439-1-f4bug@amsat.org> X-Mailer: git-send-email 2.26.2 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @gmail.com) Currently MIPS exceptions are displayed as string in system-mode emulation, but as number in user-mode. Unify by extracting the current system-mode code as excp_name() and use that in user-mode. Signed-off-by: Philippe Mathieu-Daud=C3=A9 --- target/mips/helper.c | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/target/mips/helper.c b/target/mips/helper.c index 063b65c0528..f566bd6da50 100644 --- a/target/mips/helper.c +++ b/target/mips/helper.c @@ -978,6 +978,7 @@ hwaddr cpu_mips_translate_address(CPUMIPSState *env, ta= rget_ulong address, return physical; } } +#endif =20 static const char * const excp_names[EXCP_LAST + 1] =3D { [EXCP_RESET] =3D "reset", @@ -1018,7 +1019,14 @@ static const char * const excp_names[EXCP_LAST + 1] = =3D { [EXCP_MSADIS] =3D "MSA disabled", [EXCP_MSAFPE] =3D "MSA floating point", }; -#endif + +static const char *excp_name(int32_t exception) +{ + if (exception < 0 || exception > EXCP_LAST) { + return "unknown"; + } + return excp_names[exception]; +} =20 target_ulong exception_resume_pc(CPUMIPSState *env) { @@ -1091,19 +1099,14 @@ void mips_cpu_do_interrupt(CPUState *cs) bool update_badinstr =3D 0; target_ulong offset; int cause =3D -1; - const char *name; =20 if (qemu_loglevel_mask(CPU_LOG_INT) && cs->exception_index !=3D EXCP_EXT_INTERRUPT) { if (cs->exception_index < 0 || cs->exception_index > EXCP_LAST) { - name =3D "unknown"; - } else { - name =3D excp_names[cs->exception_index]; - } - qemu_log("%s enter: PC " TARGET_FMT_lx " EPC " TARGET_FMT_lx " %s exception\n", - __func__, env->active_tc.PC, env->CP0_EPC, name); + __func__, env->active_tc.PC, env->CP0_EPC, + excp_name(cs->exception_index)); } if (cs->exception_index =3D=3D EXCP_EXT_INTERRUPT && (env->hflags & MIPS_HFLAG_DM)) { @@ -1490,8 +1493,8 @@ void QEMU_NORETURN do_raise_exception_err(CPUMIPSStat= e *env, { CPUState *cs =3D env_cpu(env); =20 - qemu_log_mask(CPU_LOG_INT, "%s: %d %d\n", - __func__, exception, error_code); + qemu_log_mask(CPU_LOG_INT, "%s: %d (%s) %d\n", + __func__, exception, excp_name(exception), error_code); cs->exception_index =3D exception; env->error_code =3D error_code; =20 --=20 2.26.2