From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552633; cv=none; d=zohomail.com; s=zohoarc; b=SGxmYm9c7FZgJdgMT9tbVthNDNOsDC0EhveVNYD1LDp0Uk0JkMRJ7QOIQ3QmdKGWBYwcIh/f1zz+bkwvygFLdIOYNnlNaoRo2mwHkR97E9QGInHjj3aKaqmCBx/lOKx1QP3wE0MYefTdicAmjqhYwAjeQEZtVGFZz13CO0gxjpE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552633; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=fTP5GdPijMVLrRP0iA6yBEFGepVL/U+WJ+mrzKQRXGY=; b=i01BYelydvDHmJ5dZj8tCBZ0RDoVRCxRt2AA5D9+nlXW+zN8xw/UsbvPNyWC4wnCWl8gXc8Hnb7RU/1Dg2DmZPOEgdfx3V0i/MGClWCtGKc5DbEdqOhdMquZJYzPaLeGmSj11iQGjFS5546Wk1WKXzgY+nhlDJFHs2+p8niQ7xs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552633192394.8972272000964; Tue, 20 Oct 2026 20:17:13 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMmh-0002ch-9Z; Tue, 20 Oct 2026 23:14:36 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMmY-0002ZP-7N for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:14:27 -0400 Received: from mx0a-0031df01.pphosted.com ([205.220.168.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMmT-0002O5-2p for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:14:24 -0400 Received: from pps.filterd (m0279862.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2F4TA2898164 for ; Wed, 21 Oct 2026 03:14:19 GMT Received: from mail-qk1-f198.google.com (mail-qk1-f198.google.com [209.85.222.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4heda0hq4w-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:14:19 +0000 (GMT) Received: by mail-qk1-f198.google.com with SMTP id af79cd13be357-93ca9b53afaso102620385a.0 for ; Tue, 20 Oct 2026 20:14:19 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4a1fb864dacsm40861235e9.12.2026.10.20.20.14.16 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:14:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= fTP5GdPijMVLrRP0iA6yBEFGepVL/U+WJ+mrzKQRXGY=; b=UMvH1mVInE7egOyp LnidU6vMzxuSCrLx1xTZBuHUvFBw/MK6VGbnvnWTRJb+Coz1wbH2w6NzssU1AVwV nNld6lr+s9mjLHdg66ovZURCaMFUNnv02CrvhF8ITUyJivz/uLJcOy/KwZEJD7Vd L5r2+w/imY+JM7fuBUnBNl9YZINZU6VKubMqpS/T+KYo54UK7naux3bf9iNhrcpV OfgfRaIG34rvCFcBAxINtCYZASd4PU+gfjZnavkDNLct28z+X+tc2YXFkfF9Vq+Z t/ymlnRP5mR4ojr3PCwMvZR2G26YgAvSzTWS0IHQT9JcjrpVPXunWINr9HC3QqJe npq6OA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552458; x=1793157258; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=fTP5GdPijMVLrRP0iA6yBEFGepVL/U+WJ+mrzKQRXGY=; b=JnopNSdVoD6Jye76AggEfuGYN3ooxl8YQzDTsrY+exi82aCjCf5TSOcwxwN0EY2gj4 Eq6Cw+QgaScday9QVv1EFn4+uQvysJlrrTEonaR8Cy4joZhA8Wotf4plX8JC/N2IvL4g gJCg93hCGHd8gpVyhNl8XnOl48l4QmXA4SV8MSWnNubxifzOSrGAO3u1Niu/bxJsMhC6 H5Y0tfnxeC331AVAFE/ZCOEXKj5vMTIDUMLVIycYGoPSCub4tCi18wAySIbwASvkZUue wwGFBhQRri1hrACUmCLA+/00MKx6L47OMZSWlKsSkgjyI65Rq+YWsi5/AeKoF/BgPl6L D2Qw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552458; x=1793157258; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=fTP5GdPijMVLrRP0iA6yBEFGepVL/U+WJ+mrzKQRXGY=; b=qQubWEPfQJKAmyRDyS8deb95B92hYb4UfQ8kxn4cXi+FZ7xe/dq+hebaSTBX6FBLXJ 8tOBQCc+Q5KS67cidMyPSzxQWxgfP4yalCDRyPR0NPSJzSHtfPQrRUMJtPUui2lsnTPn 6oUmFf0XgXak5FmhIH0TNnC6ECSMhSbHrhLqlFw9ewLxSapSkvXWD6QlqsQ+Dd+wkFIO P6/laiIwmv5D/Sjr+DXtFxiDFxxCdRorouBVv2RRsnBW9hPpECywqGYPcqzthQdsH6hs mXoV8RnPqEc8hwxBOYQfuuOD181yVx1ordvTYJ1VIOQZzRx4xnxGHGUALyEhzt+dGna6 APrw== X-Gm-Message-State: AFq9FYIoGI/bl4yaZ+5G+hEL5Jgs6e0NwDA5KhDYqIzomZwKHsFJMbJN IMoQXzCD9gNcqElTyNw02bkGIRqPSae9fV88JSFTg+Ux/XjwbMUl4QMNoxrl6N+dxDT4P6uo/bx vM2z4/Lp8nejppNgtG4D6r7M7BYbsVf3iboHXPaEoY/Dbu1jPd5o0UC1Q2bJsM1Mbh/PX X-Gm-Gg: AYBFou3UvNsHUAfdEXFvN+lJZcn8tLe/xsT2CdXXddNE9mi6dS2G1yrR6ngKSD/dc9g yPXMkWLDF6tbd9dV1G30YeU4KMzthMI9sYWUwTKwSBsD3QAmU5YaZ8JRT6i7trWbdXdn1Q5Hjrf 8iFPSmCw4fDRXG2o/KEY3ocDuRSflodx9nC/vAk5SCEjaxlte1xN+R/iQ84P9qr3kaBwgaysLHx Ciz5xjPEXm7tQtemNLFXyGemOh8d33WozWGW7ZiTu4eKGOmBKuMpRhNoyJV6zVA6ukU7U7Bc1fR A3rjjb0W9Vgi+SBt/ca5IGMOGD+Fk7Xx9R4gY7YBUQeakuJL6NyYeVMEA3aMwNTZ/stIu55A77U qsXl/M5LtOWcnE/wNwWrFzn0G4VEySVop/jNY3TrR X-Received: by 2002:a05:620a:4503:b0:93e:dcb4:c73e with SMTP id af79cd13be357-93f57e3ff66mr224713485a.5.1792552458407; Tue, 20 Oct 2026 20:14:18 -0700 (PDT) X-Received: by 2002:a05:620a:4503:b0:93e:dcb4:c73e with SMTP id af79cd13be357-93f57e3ff66mr224710685a.5.1792552457898; Tue, 20 Oct 2026 20:14:17 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 01/33] qemu/osdep: Add ARRAY_ELEM_OR_NULL() macro Date: Wed, 21 Oct 2026 05:13:34 +0200 Message-ID: <20261021031407.24862-2-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX1usPNEav3cOR +9KboBGaoNPL/gZj8g+c9ErniHe77V1BAo6rb271dGpaP8U+3uGgcOzY8ECBidMKmUzqowy1fGx /jHpvnKEgLQJgkfMen99ahQKEqeRyBBHie8quaheqq3M94NrOv5TZUqPoR0vlY5uA6AOJkLK5gf B3+sBmjSforDDN+qKdb/0NntoiCQt3IDdD0VcVzX7RgUvmz3tlw1lYvwPXVGNxsRt8PevhKAw3L keT+2tZBIJqpp2GeVOg71SsboZrJ8XBfjIlmj/RMbbN3/LQ36pELuAdNeWgZAluYdrzC2T3pO4E VsBmvmsdQK/jnIKQGmDJVSQiMgC7YtCTskY9PQoJo/lmBRHtNOA55gOUl9e0uguWvIOL6Pzu49x n4ojlvowS5dvSrtsiEsjd6OYbtkwnBGG5XTdHIj85pk5uFQskhS7FED6Guty+Ta5H5eolfXoj+9 yp2HvflV83Kmp92R0/g== X-Proofpoint-ORIG-GUID: b5yX698-fOxHbA4czYktAopZA20_tamJ X-Proofpoint-GUID: b5yX698-fOxHbA4czYktAopZA20_tamJ X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX77gNEJyrTwpk bLQwb55EDPJi8O75GxXP47xkYuV317CF+0Qr/vNwL1IvPaFUjc1P5YsJrmf6w1GNBrLnltL1Y3t kpxXgfHQiiZxEstyot2jWVF+sFNLE/8= X-Authority-Analysis: v=2.4 cv=HL5WhYtv c=1 sm=1 tr=0 ts=6ad82e0b cx=c_pps a=qKBjSQ1v91RyAK45QCPf5w==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=_K5XuSEh1TEqbUxoQ0s3:22 a=EUspDBNiAAAA:8 a=_sJYpoIm5FXuGNwjPgMA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=NFOGd7dJGGMPyQGDc5-O:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 lowpriorityscore=0 adultscore=0 impostorscore=0 clxscore=1015 phishscore=0 suspectscore=0 bulkscore=0 malwarescore=0 spamscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.168.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552634406158500 Add a macro returning array[index] or NULL when the index is out of bounds, useful to convert switch statements over enums into static string lookup tables. Suggested-by: Pierrick Bouvier Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- include/qemu/osdep.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h index 1ec5b42230b..993c8ffde0c 100644 --- a/include/qemu/osdep.h +++ b/include/qemu/osdep.h @@ -533,6 +533,18 @@ void QEMU_ERROR("code path is reachable") QEMU_BUILD_BUG_ON_ZERO(!QEMU_IS_ARRAY(x))) #endif =20 +/** + * ARRAY_ELEM_OR_NULL() - Return an array element, or NULL if out of bounds + * @array: array to index + * @index: index of the element to return + * + * Return @array[@index] if @index is a valid index (negative indices + * also yield NULL), otherwise return NULL. Useful to look up entries + * in enum-indexed tables without a prior bounds check. + */ +#define ARRAY_ELEM_OR_NULL(array, index) \ + ((index) < 0 || (index) >=3D ARRAY_SIZE(array) ? NULL : (array)[index]) + int qemu_daemon(int nochdir, int noclose); void *qemu_anon_ram_alloc(size_t size, uint64_t *align, bool shared, bool noreserve); --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552691; cv=none; d=zohomail.com; s=zohoarc; b=dObOiQ7RlCiZfeRnl+NR2VP/5Xn32W8eOUktjF0Qopbd+LBthNimMoVMowjqMjm6BQRp89kCd2+gKpEFfXdZpoAglzABpKpw2H8dXLeMdxPdFzw2y7Ll+SuAX1JKb9mQPX02u/BfpKZWS7jcJl5eJwafA6uJ/2Izrhga4nKNnKc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552691; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=GmBaoVMdCwT2LP6J+khBfIaHiJ5Qzmmbvw+E1oGxKnc=; b=SsBfKLfoyZUoKLt5mVqEWgoo/TLd89xvI0yAx/W6Uj+G8skGrESRfl7FLG/3gog6Pac9ArHfVk2r90fEgtL8DDzv1nzghs/3VBxYV457pdjupmwDB6W4gsHRtDOmZeTGS07WDXSKfb/VNFlr6AuoI5qmh/rlQyMhCP0ulWdHi8U= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552691413434.1018722442053; Tue, 20 Oct 2026 20:18:11 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMms-0002fl-45; Tue, 20 Oct 2026 23:14:46 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMmd-0002cG-Ji for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:14:31 -0400 Received: from mx0a-0031df01.pphosted.com ([205.220.168.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMmZ-0002P8-KS for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:14:30 -0400 Received: from pps.filterd (m0279864.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2FUrM1957044 for ; Wed, 21 Oct 2026 03:14:26 GMT Received: from mail-qk1-f198.google.com (mail-qk1-f198.google.com [209.85.222.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4he7hvb6j2-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:14:26 +0000 (GMT) Received: by mail-qk1-f198.google.com with SMTP id af79cd13be357-93f26dd2165so96474485a.3 for ; Tue, 20 Oct 2026 20:14:26 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e2581f0bdsm2398029f8f.19.2026.10.20.20.14.23 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:14:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= GmBaoVMdCwT2LP6J+khBfIaHiJ5Qzmmbvw+E1oGxKnc=; b=DcO4fXIQcpROfRoX eDosYQIvVaJ2YkgVHCs9g9b/RBHRL25jajlFbE8xGGAMta25tkjH4AXF+ddV2zuD JvVoWlj6pmrGzKs5PERfq4kMot518eHZxog32uvYOdnGynLZU+K/TIC+DAcWEYoh gRuSpOqKEigTAr0PpN54PNv11CWqDjEMuU+GQKinMWPmzvO7nRhM9x2s/voquKUi UpGGKk+gdc/A0EC/p0IJrhKLeZ8DME0pPulMoJ3d+aTlFSv5UTVtH/7uYAu4DcX2 NM0KGWxOQz6qGd5yGcmGGmghMr20gfx9ScSy2NIdRRBxkRfEyWDawEe5DqNdiktm dCBVww== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552465; x=1793157265; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=GmBaoVMdCwT2LP6J+khBfIaHiJ5Qzmmbvw+E1oGxKnc=; b=jQEQDjvoQY3di3Kkds/+IbAJBLFMFsmZI3vqs0EwXHUfTb0YGCzYHeB5vjrDV94UDt DVggQNqmEN1CwvTgae7njYdiMAnCYFNphVyFFH1arFlzWOAcwxChWxgR/cFpKGzvNzjc DbhWvByZ5O3URtEAbBVuOTlEDvI7krxKiQkIM62z5x6gtQtcryqRIMnUw305SLlhVRmD dx6LQvAwkOvtop9RNjGWF3+T6yJSfR6gBITegWckjAOh0DWGw4dq0gqARvhSJi8G9qzB oLDbgNbV/hnsFqMgKyu6sMMRkSUHivfOcIdGS1mX+0rqsqQbM22ofE0QDddNOLymUTGT 1fJA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552465; x=1793157265; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=GmBaoVMdCwT2LP6J+khBfIaHiJ5Qzmmbvw+E1oGxKnc=; b=R+IJwJaA5GgelMm+FLR3ou5Wo/4kwEKKwyV48MMa77QBoQZ31i1dTZFKlFxG+Kz0P6 ueQ9d/9WfFgimqJVQk9LsPieBZ5hT6+SZ79TJZTn65hkFoV79qBNGkK7xpK/pOA7L3eI 3NPBNNxkQRzLzO5K3rlqxxpJ0yrBNHWtZ+AEx9BRgmI6nKxgE6dA39uLEoYUuD/zYMKs GyzPDc3wfOLRDO/uIJ+lHZv9h4kyOwIG6gFx3EiXvhSqOuX5hNZAUW2hHq6ufT6zMcU0 oD8tXfH318nl7I3ZeEwdndzU5p04kgorAYBRLwBVjOjLntbaJnRYfgA4BKlm0dVB+qVu Dv7w== X-Gm-Message-State: AFq9FYL/pH/FKo5ZZvYdm1YE/hBg0ojBHZ7J47So/OO/m+pfp/gMJDMX EikpsRoWq5VTnMAEO5YuAoJp9ZEJVZUwALo9XyCJ/69inFwoDJQVmkpEsPuPiOR1DpH+dOxipo+ uxozNputh0VXHc2FZBm2bwwLqEeJMKnkRBcat+cqvECX3320Wj59d2JdSY/qPyt+hMwZ+ X-Gm-Gg: AYBFou36OBreKydGaojgc0iTvtu67mcaBExeNX1sXVyGyJo1MRcrM3Yfr647zFk/hz1 YfUVdcBdOm2+7RctqWjPr3dYfMUhpwofsq0wc26jzXem41MWXjLnqVPm2IGSjciR47zm2jV255z knGFl56SMf2fN+VCJCIuMph1/Ku3igHNfdd0BsvPzDuYPwYuS6sdY3W4bKfi6KVy1MARsI7G914 j0FJHD12BL0Q+y0J7u7pilZdWjAEHkA8vVyUMZJ1cK/YMyILC5pLvupefkYJGwyvhO2GIbyAaII wsiym2ubLp9ereuhst9svgnyUQj7ll+a1JehU9bVqmgOhrKk1pEbnH5U561TFERR1uAS0wZDyUF WWZQLEEW4UMyeG02x/Zqo25U1w7z2BsUMmvdMeHIT X-Received: by 2002:a05:620a:2a04:b0:93e:c12c:fbb7 with SMTP id af79cd13be357-93f57f92f86mr230674585a.68.1792552465416; Tue, 20 Oct 2026 20:14:25 -0700 (PDT) X-Received: by 2002:a05:620a:2a04:b0:93e:c12c:fbb7 with SMTP id af79cd13be357-93f57f92f86mr230671685a.68.1792552464998; Tue, 20 Oct 2026 20:14:24 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 02/33] cpus: Add helper to log raised exceptions with '-d int' Date: Wed, 21 Oct 2026 05:13:35 +0200 Message-ID: <20261021031407.24862-3-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXwdosWQEFEVqg ItdvvHmj3Le9F6I6WDxVX9rEi4VJSVd1P+UKhQF+tnOe3jyknRQHm+aFQv9czf1Ls09+Lx+6BL7 ly2CZnTzvQDrqtBdCe/35a/dq4fFPZ+OX++nog8CdExCBABIzneeSoEr9iDOsAV5iTR4pn4jvlZ TYOzJaUFWPZUJ/t3AXM9zfWZp1MBwniTxemx5coztjknf8FbmPwsoVTVh8Yi+2gq6VdORde9ipG B//GLJCXVTqenYf36LrcOPcAZQG2bdKWGzFbVd8veEJHcXBhiiEEyp2ltwVHaxb4pSedyZRr+8D 0lhl2NhtE6V7zjFXNhdkjllLlFAMjAV7kBWxlamrBovTyK6ik8DErR24ANQjnZ8z3U1Qcvqw3+5 5tWuNX0KQigGzjl18Q2tvwdtj1wFDxn8F9/dS6RTFL89l43Q97eY5/eC66H53rY3ImUBaP3viTv SVq/UEGMY7XzL8Jgcdg== X-Proofpoint-ORIG-GUID: NAiDjK3mHmM03Qy4k9UrnE7Djho9iMpS X-Proofpoint-GUID: NAiDjK3mHmM03Qy4k9UrnE7Djho9iMpS X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX+EjYYKbUVNdX 5hQnNwSW9h24599e2xBQxFgP8gW5PKPUI8jXuNkKmjEX+P8GkG/vOLMdmElbxBuDeEHP+3PVkLl 7RwwR5Dq4fmzQLxaiuWV4/Y/9DlKmhs= X-Authority-Analysis: v=2.4 cv=NppE4MdJ c=1 sm=1 tr=0 ts=6ad82e12 cx=c_pps a=qKBjSQ1v91RyAK45QCPf5w==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=DJpcGTmdVt4CTyJn9g5Z:22 a=EUspDBNiAAAA:8 a=0xCBr3yVtZFRf-pbA1IA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=NFOGd7dJGGMPyQGDc5-O:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 malwarescore=0 spamscore=0 priorityscore=1501 clxscore=1015 suspectscore=0 phishscore=0 lowpriorityscore=0 adultscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.168.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552693472158500 Add log_raise_exception(), a common helper cpu_loop_*() can call to log a raised exception when '-d int' is used, and qemu_excp_name() to resolve QEMU-internal exceptions to names. Use it in cpu_loop_exit_atomic() to log the EXCP_ATOMIC reason. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- accel/tcg/cpu-exec-common.c | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/accel/tcg/cpu-exec-common.c b/accel/tcg/cpu-exec-common.c index 68077c8fd9d..2ac8380d0bb 100644 --- a/accel/tcg/cpu-exec-common.c +++ b/accel/tcg/cpu-exec-common.c @@ -89,6 +89,37 @@ void tcg_update_all_cflags(void) } } =20 +#define EXCP_QEMU_INTERNAL 0x10000 + +static const char *qemu_excp_name(int excp) +{ + static const char *excp_name[] =3D { + [EXCP_INTERRUPT - EXCP_QEMU_INTERNAL] =3D "async interruption", + [EXCP_HLT - EXCP_QEMU_INTERNAL] =3D "hlt instruction", + [EXCP_DEBUG - EXCP_QEMU_INTERNAL] =3D "debug", + [EXCP_HALTED - EXCP_QEMU_INTERNAL] =3D "halted", + [EXCP_YIELD - EXCP_QEMU_INTERNAL] =3D "yield", + [EXCP_ATOMIC - EXCP_QEMU_INTERNAL] =3D "emulate atomic", + }; + assert(excp >=3D EXCP_QEMU_INTERNAL); + excp -=3D EXCP_QEMU_INTERNAL; + if ((excp < ARRAY_SIZE(excp_name)) && excp_name[excp]) { + return excp_name[excp]; + } + return "undocumented"; +} + +static void log_raise_exception(const CPUState *cpu, int excp) +{ + if (!qemu_loglevel_mask(CPU_LOG_INT)) { + return; + } + if (excp >=3D EXCP_QEMU_INTERNAL) { + qemu_log_mask(CPU_LOG_INT, "raise exception: 0x%x (internal: %s)\n= ", + excp, qemu_excp_name(excp)); + } +} + /* exit the current TB, but without causing any exception to be raised */ void cpu_loop_exit_noexc(CPUState *cpu) { @@ -118,5 +149,6 @@ void cpu_loop_exit_atomic(CPUState *cpu, uintptr_t pc) /* Prevent looping if already executing in a serial context. */ g_assert(!cpu_in_serial_context(cpu)); cpu->exception_index =3D EXCP_ATOMIC; + log_raise_exception(cpu, EXCP_ATOMIC); cpu_loop_exit_restore(cpu, pc); } --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552657; cv=none; d=zohomail.com; s=zohoarc; b=cBYFHlTZi3OijZeo8giGLpLWBTKGbUvrh95WpqNIXF1S2JOZxYcqB/NUDhTwGzZeF42QUT3udbBbJn8+UtjuM7Y6H2wjqHuKijZWVefoAWSEWww93Y4zOvMNm0XxArOMweEGMMnxCBsVh57O6kkFA1VAd4w47dP/8rB1LhrG4n8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552657; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=HJHtdVy5wVxjfhiD2204eyvZWcyoZdZQUrEb1ToGTMw=; b=a8hL06blJgZWPGl49PNwowLXqh/z+WjIAHk6Xmz7/o4GSPrhALCkxi+K2FDyqq/KVhM3oVeHwmynsdE0jPlbyfHPt+nknMeYaWIBhUcf2lF8afjALDBpxGLw2BRGoVWBjCU/2H3VFXBBbevXyy4XEw5k9hKq04twvC8pefpvlL8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552657961799.615381135551; Tue, 20 Oct 2026 20:17:37 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMn8-0002pf-MD; Tue, 20 Oct 2026 23:15:02 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMmt-0002gT-Ll for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:14:47 -0400 Received: from mx0a-0031df01.pphosted.com ([205.220.168.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMms-0002QA-3f for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:14:47 -0400 Received: from pps.filterd (m0279863.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2Eu3q3469268 for ; Wed, 21 Oct 2026 03:14:35 GMT Received: from mail-qk1-f197.google.com (mail-qk1-f197.google.com [209.85.222.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4he7h2ba43-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:14:34 +0000 (GMT) Received: by mail-qk1-f197.google.com with SMTP id af79cd13be357-93caa0ce0cdso40465485a.2 for ; Tue, 20 Oct 2026 20:14:34 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e2581eedesm2246455f8f.14.2026.10.20.20.14.31 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:14:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= HJHtdVy5wVxjfhiD2204eyvZWcyoZdZQUrEb1ToGTMw=; b=XJ0SyRc75PL9B26I 9DRVFMCLNzNkigtjSeuveIqW0wrfhRZqXRy2EI0WU/QQpeNgAus/4Y0gT+S1Bk9d 2NfoX35MJdBet1wnvkuvrJ1dLn4eMyf+vbqtlHCUY+XxS7++hZ2UpFQSo618uowN FDjb4aT/q9JPJVqHOrXkMHbz85U5/sJOlMBw9SPUpmwUtmmqUrvgJJE+u5Y6Nwef Iqd+vnr9L5K7M0dvq/9YcW1qkOvNedl67xjQ0Kt8VHWZkxjnqYneho0SaZR5RZkV i1wJPtdCorKeIWS6/hkwcrrelvrDKUUhu4+FHDbFoCWXP9iS9vZpobuGzJOQi8Db xoj76Q== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552473; x=1793157273; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=HJHtdVy5wVxjfhiD2204eyvZWcyoZdZQUrEb1ToGTMw=; b=Jmk23Fl/cpG14cVideIl7m5Xu0FGzcAvzYPCZBt785Qgyz8BPYwBEZ3rGXmF/MuEiT VdujIQwqpDvHsVmsh6k8JS9qK7Fotv7lJqZParPQSna6e0baOjzSg/2a69hP31FODJRM YSwJSf7pSXkC2NYEFzpnDEXFPyWZRVl9rvBHBWihFN3n+O+X2KS3ekRqYLJJRS3AxDyr XjtXgRFfE2opHf0t7M4VT6pjDEWHdoBAcHDRWa08S1nul56r6R6nRFC6Hv8vIEKbfuSV HeKUb9CtVXywPnHVD/XmIOGTtP9w/5/8x6eSQW3rVMWpuxzxly0fm9WT+wjwQz7F/j9S tvXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552473; x=1793157273; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=HJHtdVy5wVxjfhiD2204eyvZWcyoZdZQUrEb1ToGTMw=; b=cfWOSuf8ymtX9KL1TpXYeo9yrRuc0XfIbUqEuqRdUivI0kFvZFLbUqZOVUQHOFIfph NuINMFEaH5qMtjdtM5iYkwYZP/5vPEQnyj9oKgISax3ZNMLwqBlCKv3RyA50Qq0EtrQ3 pUbrfxZOw6Zjft8L6JZeaNg+ayvwMHgAoViejj4Wpq38cAq5P4FaiWUOElrrekT3I9iR oeVYUrh925GWeet2mDqGEknuXWoyJKzDWpC+eBpWB1CXdJy+JZIbiCDy0xREOJAqVTsq XJhPkWtq/QnkEIdaomDOmVcMqc/CwZ0bJ0cgGiHEsX5r7qZ5t9Mpn1IlUYkLPjQei9oV svNA== X-Gm-Message-State: AFq9FYIIV80txqCN5CCgKFPRzuqfFqXTM0iKtS2RjcQZLq6A4vf3Z8qR uCfiEEj94wkYWeED1mW7VhcvuIMBMQV5CAgFLsRVaXz/uKdajlGRwOYgP1sVCrJFmdmW9aeUZsm 9YchZcXcduRiHfgZoH5YqYTg3djriUT8h0nfoWSi83FQ+fcFcV54bF6VvTxJohDf7bCXQ X-Gm-Gg: AYBFou2/B5vss7TNQ+5KYFM7nuPQ5ZtGC6Pc+vGfGwL49GK3tN9lpT89S6a6FNSVaUX DgiXqbgqPCFltcFPJ6Lrm5ettGqEbkf+ja2FNZHdodfBVp8K/W9GX2qfBcEJbPsXQ1SLmCB8BAy tOPLU7c6fgzm87pUUN6n+MSYG2RUbF6708wZ01swnG++OQiGtlbRcHUzgiRY1+KWCnzR67DgkZz TNJPh4ttKQFf4Qzvf+R7dpBZZwQ+2iUvjvfzl7a1nOQHr+7Igek7BIfJXi4Qq1lTFg4n7Tjp+jw IJSHG7R5Uaynjc3oM0ol2Ewd4YK77bZuXsAFwbJufKZolN575Ijiy2FxIjRqVWTqNEUcs9Iiw7a nARmqSlyDrOLYmJhm6HwMjXyHtJn9HU/u/WpBLhcI X-Received: by 2002:a05:620a:45a1:b0:93f:32c5:69b0 with SMTP id af79cd13be357-93f57fa3df6mr187622185a.60.1792552473419; Tue, 20 Oct 2026 20:14:33 -0700 (PDT) X-Received: by 2002:a05:620a:45a1:b0:93f:32c5:69b0 with SMTP id af79cd13be357-93f57fa3df6mr187620785a.60.1792552472925; Tue, 20 Oct 2026 20:14:32 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 03/33] cpus: Introduce CPUClass::exception_name() handler Date: Wed, 21 Oct 2026 05:13:36 +0200 Message-ID: <20261021031407.24862-4-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-GUID: PhO-mfw3GwFJ3kJJ5zPC3TEL65dupwtE X-Proofpoint-ORIG-GUID: PhO-mfw3GwFJ3kJJ5zPC3TEL65dupwtE X-Authority-Analysis: v=2.4 cv=EuJHPicA c=1 sm=1 tr=0 ts=6ad82e1a cx=c_pps a=50t2pK5VMbmlHzFWWp8p/g==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=yOCtJkima9RkubShWh1s:22 a=EUspDBNiAAAA:8 a=nqYS7Cp7_YcMA-VLD7UA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=IoWCM6iH3mJn3m4BftBB:22 X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXwppD29PPk24Z HVxjRVaY/qyFtmZdb9RKQ5zA7zB98mX98uF/PfEvMEddD8HV1pMFQ0LAh6uTg+EhYRCklY/QLTY FHnP+zFGj3sZwpB5twQWfMuADxhp2sI= X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX5wGsSHt5rxHg 0AbhbypOHs9ux9dkzMi/yCAWCkwyiHOFnHloPNywhPUBP9+XeIrutXIUw4GjKm2DteQCQ6bg5Et t5lkCvYk7MPzmyjTyfxtvNcDarDBHQxn2dwBCuLTuv2NqrOy2+hkYTB/U1dPPgCts0EeDt2Zp1B fvfDNug9N/CujMFdEVs9Ozd04Pwg7sX1G/jLUHJRvkHCIp6DiA3h6YlVO0nOYnCJUsK8jie5uGR ejS4keWpNF5Pa3Yc7ozVhM0kyHwjFUX9iG8ja4muUMd/A57gkLMiMJNYlbS0l4rKyOcC2rJYmRj kGT6nYGOGnQPbDYKlW5ZyYYZHo8nxqYnKByCI2AyXQ6vqrwzrzh4asGRZ+O9S8B8qkKOCusGu60 lH5P88ztkwa/HR0pdYMSZEzd+gDbmmDtzKG7hqIJ2laanaJUAoxXskXx4YIAPK2aF+Wx0iTOcel ikIFOi2eQgHDn58BJVA== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 impostorscore=0 clxscore=1015 spamscore=0 adultscore=0 priorityscore=1501 lowpriorityscore=0 suspectscore=0 phishscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.168.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552658804158500 Have targets register a helper to resolve their exceptions. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- include/hw/core/cpu.h | 2 ++ accel/tcg/cpu-exec-common.c | 8 +++++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/include/hw/core/cpu.h b/include/hw/core/cpu.h index 456154df6f6..9d71db16d2f 100644 --- a/include/hw/core/cpu.h +++ b/include/hw/core/cpu.h @@ -108,6 +108,7 @@ struct SemihostingCPUOps; * @list_cpus: list available CPU models and flags. * @parse_features: Callback to parse command line arguments. * @reset_dump_flags: #CPUDumpFlags to use for reset logging. + * @exception_name: Callback for getting architecture exception name. * @memory_rw_debug: Callback for GDB memory access. * @dump_state: Callback for dumping state. * @query_cpu_fast: @@ -178,6 +179,7 @@ struct CPUClass { const char * (*gdb_arch_name)(CPUState *cpu); const char * (*gdb_get_core_xml_file)(CPUState *cpu); =20 + const char *(*exception_name)(int exception); void (*disas_set_info)(const CPUState *cpu, disassemble_info *info); =20 const char *deprecation_note; diff --git a/accel/tcg/cpu-exec-common.c b/accel/tcg/cpu-exec-common.c index 2ac8380d0bb..a347dc244d8 100644 --- a/accel/tcg/cpu-exec-common.c +++ b/accel/tcg/cpu-exec-common.c @@ -106,7 +106,7 @@ static const char *qemu_excp_name(int excp) if ((excp < ARRAY_SIZE(excp_name)) && excp_name[excp]) { return excp_name[excp]; } - return "undocumented"; + return "unknown"; } =20 static void log_raise_exception(const CPUState *cpu, int excp) @@ -117,6 +117,12 @@ static void log_raise_exception(const CPUState *cpu, i= nt excp) if (excp >=3D EXCP_QEMU_INTERNAL) { qemu_log_mask(CPU_LOG_INT, "raise exception: 0x%x (internal: %s)\n= ", excp, qemu_excp_name(excp)); + } else { + const CPUClass *cc =3D cpu->cc; + const char *name =3D cc->exception_name ? cc->exception_name(excp) + : "unknown"; + + qemu_log_mask(CPU_LOG_INT, "raise exception: %d (%s)\n", excp, nam= e); } } =20 --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552694; cv=none; d=zohomail.com; s=zohoarc; b=G8BnZiRGmEdQwsMy7AzW1Fuvp08Bzctgc/MCl3bssG00ak+bBqfDc1gG/QGk2rkT6KhkdB6XpyfNj3SpEpNYK2AWBXigUsNlcQAPyv6JSg5Xlfjtx7OtVNOad9/r+IE+gEULyGMI+ZEI9hDKmtJg3MIAN5ohanVl2KzXd9tJoBg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552694; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=POX/WJTfRTtj1QzagZdqMLjkjh6Nnt7ofKB6ovVu0AM=; b=b8ARTII/6ElY56aO7S8mc6EdiD1qlybYkp9/3Tf3z1lNANauqaqsQJoWNB6J79VTvXRE3yDj1F46kGmIBGxkRozj1w/vZFZ1E25nYyboR0TtpBd4leSYLaS3DMUx0Y52Zbq7L6ZCg6C/nO09ur3Ow53w6aJ/l4hFCiDfyiVXkK4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552694603688.1358764237041; Tue, 20 Oct 2026 20:18:14 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMmx-0002ja-Tb; Tue, 20 Oct 2026 23:14:53 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMms-0002gD-7z for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:14:47 -0400 Received: from mx0b-0031df01.pphosted.com ([205.220.180.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMmq-0002Qw-2P for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:14:45 -0400 Received: from pps.filterd (m0279869.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2EwJK3904785 for ; Wed, 21 Oct 2026 03:14:42 GMT Received: from mail-qv1-f71.google.com (mail-qv1-f71.google.com [209.85.219.71]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4hegs00x6m-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:14:42 +0000 (GMT) Received: by mail-qv1-f71.google.com with SMTP id 6a1803df08f44-917b7dd3f1dso6635056d6.3 for ; Tue, 20 Oct 2026 20:14:42 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e25834086sm2450046f8f.34.2026.10.20.20.14.39 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:14:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= POX/WJTfRTtj1QzagZdqMLjkjh6Nnt7ofKB6ovVu0AM=; b=C3NvxhqNFEPpSP59 mPIo7kpDhTVHp68q46OvB2S72eK1hYMNKDBanL7C6bxDpgr/zpKd/sqaOXPYu9jG 7HOa85LuK2LYVs/Qx5MMrT8QzoFajkdxz9cCPHVaT/w267GawgM9LvGyIykVpuGo RcoHZDwN8akAiQ3vZY7TZdm34sAkqMefhg2P0wno89Zbr/phEk0gYkaDxoF5xZrz 4FfICWvVqfNulQc8fALg6lEPdTrAhNOkWuoJ41uTLdo4+k30wmyCbltsLeyb+ol8 JHImfURkK05+NDOaF8DVcWovNpXnrpm9BkrD7P9PEOlB8NeEIAW2RuU7o5bWXP/I hdjZJw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552482; x=1793157282; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=POX/WJTfRTtj1QzagZdqMLjkjh6Nnt7ofKB6ovVu0AM=; b=b8kmINLq1mggIux/Rw0hyh21+2lUgIrkPziiDeDvuez7DZtMi0KFtx+dKWy+ymOcqY 1RDrpuW+UnO5vVs/eUI932CnqHS4Ak/1DS7Yncl7cvL1a4zZAYGWoviwL9mYkZXPiVgh r1/AUaOV0hk8Rvvi1/kaLUhS4vJR9X0ZDEKXetgqiMJhdZi5BKVw6wF+C+jBIOaKxpbL MZ+3PxecuTOjcrH+WAwoaf9zDIIIEoyDBVFV7FVxX0xdwxav5q2zF4By3PRIT8ARtyzs PWiBvusNHvSPiGipvN6N4cdSnxbsktOuOoze4lvWUtmYRThTMPNG3hwOcWs2cCgWXSTJ ju4g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552482; x=1793157282; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=POX/WJTfRTtj1QzagZdqMLjkjh6Nnt7ofKB6ovVu0AM=; b=Kn/vetIPl5f5X+J71F0xAtR6hk8x+hp9DlKb2E8gyIdyfwAUAAtND1lehwWZ8mgEHd s2581tkcQMXQba7v4tHdqMX23LiIy1Q9QvDk8D5YZBe10WxDU017LGiVC/YM/zHWXUbx E7DPpcdfAc7uaj8fXjQCDFSFTT9PEQn5fov01yHOUbHkm+hbR4npKaR2vq1XVyfuyymU KzwKxbwIi/F2B8oc5qgqw6e+quGgoyh90mr2cFOQ055diH3Wd3Tg8dk0EGxmoA4MzTNY oP/5uYx/orNyx1bjqwmnoKSGUG2BWcoix9uFgkvZMFJrCYA2o5fgcDeQq1L0X0r4BcEs 82CA== X-Gm-Message-State: AFq9FYJmc03EtXeRc3uRBpAFygo6xQwon6bUJaWXbBlXR87I3rzvyee/ wb6bnmsHvttOJ3GfDYx0LPtumyCqFC7DknJyyssYxIqqvBp1iA6WeLnUNLWuQpuETTtQsGVVIY/ 0wwKRfiQfUdzsakpJTpThso8jrcO4KZGz55qVVoFT7PWoYIQ63TkD0DKVCRAxFFIPUwS9 X-Gm-Gg: AYBFou1BgxsO9jsxDic64EO6eY68r+dzZS+i/p+dNkNC0efAuv9/OB/02CJEZTxlj1G +DVEYhfY+ewod8Pg8imhW3Mu9lykGWySAUbQETteZ2X9wQR0N1qn1k/iOrbqir5Rok4mxGR1XGg JQ51fWv+lFUkzaXpuUwNKZuBJty9Rp5yG2HLwyhL8KHhhZ/MuW2y2Pq2MWlw1pIkX3VRFywmLaQ KEfGQytNI/uD5L/ZJ32QwQgsd2TX+iZoGYx5av0MvrjZdXoKBoZeI7WvNioaAAB04oy9PQa6B7z xCzD2335JZiceVMSPEvINMsNP3Muu6L9jV100UkqWd1XDQ2NX64RmXRybOkZnBmgRkbPc4oHcwt /U739tp7mJYxPa9dG8hn2/GomT96nIP+l+tCy8c8z X-Received: by 2002:a05:620a:17ac:b0:93f:2cf4:e6dd with SMTP id af79cd13be357-93f57f935abmr222677985a.51.1792552481605; Tue, 20 Oct 2026 20:14:41 -0700 (PDT) X-Received: by 2002:a05:620a:17ac:b0:93f:2cf4:e6dd with SMTP id af79cd13be357-93f57f935abmr222674885a.51.1792552481017; Tue, 20 Oct 2026 20:14:41 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 04/33] target/alpha: Register CPUClass::exception_name() handler Date: Wed, 21 Oct 2026 05:13:37 +0200 Message-ID: <20261021031407.24862-5-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Authority-Analysis: v=2.4 cv=S/NMU4sP c=1 sm=1 tr=0 ts=6ad82e22 cx=c_pps a=UgVkIMxJMSkC9lv97toC5g==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=_glEPmIy2e8OvE2BGh3C:22 a=EUspDBNiAAAA:8 a=kVf6GzFcR4OVXmdlW0QA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=1HOtulTD9v-eNWfpl4qZ:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX3PXEOu82zBjC oB3sCm3ciURRVEoT4t1o3LXOEONmJSDK1Wf1r231KiYBNkl4vmOI6XfIZpvoKEkhqR3xoBw6Mbr eZB+z02+7ZO2TISKnLCPad+UQ1gGSlH5adpF6eA8fFdVSzKXEFe89m6cG/zoeFeiLBxt2p9U3WA K9nI6wAhfDrVO/9QppHU0QtqfaepKfRewhf1kOnXXA4kSl0BP1ZdkPCvmFF7keCzlXX7wfdKlUL 7klGZ8dJI1epcKcJRSDFQDn00u5ax34Hb2Xa3RivegcQ5UKqX3/6wdaY7+eCYt6bGppFontmRlg fr6u1NFfXCRMvWlS68bkVrPg/I3h80zuAVfTQ+Sw8WLZ3ysACzrr2/faGZ5JPCZkmfp+FTPj4tI bAmmS2V757T5sfqInFZWyNMXcJd6/tfgaPEAOoMXwUQP9Ng2E+EPCU/Nw80FfEVrnfS7gmhGraJ 3DQDAgj8qJ0N+kcOc8A== X-Proofpoint-ORIG-GUID: 7iK0J7fqqD56c-v_so1rbcDylcPNmTaX X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX4eRgkEdSWzZF jgX1+hvlTFXauyvjqWrQnmp8yOGgUTrXe4TToi6QxYYX9bGbq/zJhd1Uj/ytvkDd6kcvUKLGGS2 otNRFaUmdXLYBolDO8BdJJFwZXt2D0A= X-Proofpoint-GUID: 7iK0J7fqqD56c-v_so1rbcDylcPNmTaX X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 clxscore=1015 priorityscore=1501 spamscore=0 bulkscore=0 lowpriorityscore=0 malwarescore=0 phishscore=0 impostorscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.180.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0b-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552695634158500 Factor alpha_exception_name() out of alpha_cpu_do_interrupt() and register it as the CPUClass::exception_name() handler, so the common exception logging can resolve Alpha exception codes to names. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/alpha/cpu.h | 1 + target/alpha/cpu.c | 1 + target/alpha/helper.c | 82 ++++++++++++++++++++++++------------------- 3 files changed, 48 insertions(+), 36 deletions(-) diff --git a/target/alpha/cpu.h b/target/alpha/cpu.h index 378bd96d941..8f780502476 100644 --- a/target/alpha/cpu.h +++ b/target/alpha/cpu.h @@ -284,6 +284,7 @@ void alpha_cpu_do_interrupt(CPUState *cpu); bool alpha_cpu_exec_interrupt(CPUState *cpu, int int_req); hwaddr alpha_cpu_get_phys_addr_debug(CPUState *cpu, vaddr addr); #endif /* !CONFIG_USER_ONLY */ +const char *alpha_exception_name(int exception); void alpha_cpu_dump_state(CPUState *cs, FILE *f, int flags); int alpha_cpu_gdb_read_register(CPUState *cpu, GByteArray *buf, int reg); int alpha_cpu_gdb_write_register(CPUState *cpu, uint8_t *buf, int reg); diff --git a/target/alpha/cpu.c b/target/alpha/cpu.c index 12e86021663..f9936315fa2 100644 --- a/target/alpha/cpu.c +++ b/target/alpha/cpu.c @@ -283,6 +283,7 @@ static void alpha_cpu_class_init(ObjectClass *oc, const= void *data) &acc->parent_realize); =20 cc->class_by_name =3D alpha_cpu_class_by_name; + cc->exception_name =3D alpha_exception_name; cc->dump_state =3D alpha_cpu_dump_state; cc->set_pc =3D alpha_cpu_set_pc; cc->get_pc =3D alpha_cpu_get_pc; diff --git a/target/alpha/helper.c b/target/alpha/helper.c index c3614ecafda..cedb0006892 100644 --- a/target/alpha/helper.c +++ b/target/alpha/helper.c @@ -35,6 +35,51 @@ #define CONVERT_BIT(X, SRC, DST) \ (SRC > DST ? (X) / (SRC / DST) & (DST) : ((X) & SRC) * (DST / SRC)) =20 +const char *alpha_exception_name(int excp) +{ + const char *name; + + switch (excp) { + case EXCP_RESET: + name =3D "reset"; + break; + case EXCP_MCHK: + name =3D "mchk"; + break; + case EXCP_SMP_INTERRUPT: + name =3D "smp_interrupt"; + break; + case EXCP_CLK_INTERRUPT: + name =3D "clk_interrupt"; + break; + case EXCP_DEV_INTERRUPT: + name =3D "dev_interrupt"; + break; + case EXCP_MMFAULT: + name =3D "mmfault"; + break; + case EXCP_UNALIGN: + name =3D "unalign"; + break; + case EXCP_OPCDEC: + name =3D "opcdec"; + break; + case EXCP_ARITH: + name =3D "arith"; + break; + case EXCP_FEN: + name =3D "fen"; + break; + case EXCP_CALL_PAL: + name =3D "call_pal"; + break; + default: + name =3D ""; + break; + } + return name; +} + uint64_t cpu_alpha_load_fpcr(CPUAlphaState *env) { return (uint64_t)env->fpcr << 32; @@ -343,43 +388,8 @@ void alpha_cpu_do_interrupt(CPUState *cs) =20 if (qemu_loglevel_mask(CPU_LOG_INT)) { static int count; - const char *name =3D ""; + const char *name =3D alpha_exception_name(i); =20 - switch (i) { - case EXCP_RESET: - name =3D "reset"; - break; - case EXCP_MCHK: - name =3D "mchk"; - break; - case EXCP_SMP_INTERRUPT: - name =3D "smp_interrupt"; - break; - case EXCP_CLK_INTERRUPT: - name =3D "clk_interrupt"; - break; - case EXCP_DEV_INTERRUPT: - name =3D "dev_interrupt"; - break; - case EXCP_MMFAULT: - name =3D "mmfault"; - break; - case EXCP_UNALIGN: - name =3D "unalign"; - break; - case EXCP_OPCDEC: - name =3D "opcdec"; - break; - case EXCP_ARITH: - name =3D "arith"; - break; - case EXCP_FEN: - name =3D "fen"; - break; - case EXCP_CALL_PAL: - name =3D "call_pal"; - break; - } qemu_log("INT %6d: %s(%#x) cpu=3D%d pc=3D%016" PRIx64 " sp=3D%016" PRIx64 "\n", ++count, name, env->error_code, cs->cpu_index, --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552939; cv=none; d=zohomail.com; s=zohoarc; b=Ngsx4c8An+FTkdI8FnT58dcBGCMzSguSB6uatSTfQLdkhV3Ag55hny6gj122Xo0Hx5GmChacVORFk0nCbA3m82bRhb7mJdQItyHhdtYxMiLkWGnEpEUwSIdfkPEcel+ZgKDx7r2QKIh+rZvebgEC2x6Evh/cE175EZUYhMWglXM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552939; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=U3DpMGeowCythJkDTUUiIMfi9/HZiEN+pyCuaLt1qk4=; b=cNE5RZs8ZmznCEERthluC9tYIL8wrg+QV8cRnXsLEdMrPaQ4fvRMYfgkXiVzCC0ZJfMEmC6xaZ6TiVOm+uyv0QduaouE6TnzU9vc7OmqapvZ4iiJGpRyCRPjoSKlPpk64XGC3xtTzHZUcfCJ3+aHXAYzlZyrVsTl9iQdhC3m7bU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552939940145.59447788781551; Tue, 20 Oct 2026 20:22:19 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMnu-0003LK-QK; Tue, 20 Oct 2026 23:15:51 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMnC-0002rb-6y for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:15:08 -0400 Received: from mx0a-0031df01.pphosted.com ([205.220.168.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMn9-0002SU-9Z for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:15:05 -0400 Received: from pps.filterd (m0279864.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2FUXK1957073 for ; Wed, 21 Oct 2026 03:14:51 GMT Received: from mail-qk1-f197.google.com (mail-qk1-f197.google.com [209.85.222.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4he7hvb6ke-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:14:51 +0000 (GMT) Received: by mail-qk1-f197.google.com with SMTP id af79cd13be357-93c5ab5c136so54424485a.3 for ; Tue, 20 Oct 2026 20:14:51 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e2584c374sm2209623f8f.58.2026.10.20.20.14.47 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:14:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= U3DpMGeowCythJkDTUUiIMfi9/HZiEN+pyCuaLt1qk4=; b=Es1xt8k1MR2Gkpbu zSVDIOv4PfVYq8jiCEH/qUAllZs/ZZfBZDbwTJqTFtRA6VCgpfiwodnajlz4n/kF BknLgXUzjPRaablG7bjwzDZYB4w86HRvqBu99Y4yD40A7MDadm/raOgQAUum7nB2 owyhkqmvYLSA0wdQMi6VS9K0QEka1s17Qe69CjJa/rtHc+VTwAWps0GU3rC4/0CD tAlzCFtSqlms3Ro86bxpf7JQ9UxnPqasMxR69l+9zTFnzqqEAErVL8Rvztmku+rH AL+F+FCKM6P0rQ7gnnuwmG/G59FviFe5F+colQl3EHol/kmW0wPCxJBnzZsGpVF4 C3HdRA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552490; x=1793157290; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=U3DpMGeowCythJkDTUUiIMfi9/HZiEN+pyCuaLt1qk4=; b=c4AlUyqaiiRq3NMJ2jo6teNf/x1TSeznw5DwwW2mNjV88fyMs9DhoLKmTjeE/Gb6uc OHEug3W8iqpRKhHJDU2n3X+4IWzF1sQW7ftznO8S+tFkA69NiChfxcXZLs/ZwF1MU6MK 9RJpkE3KGNEb9nEimkAe+OX2RCmKbDXehnxpPs2AQjqGL3oKGtEhJ2tA2hV5qcbeiuWy bXVHjecTP5dQHzNVzBvf8+janxLmCpJ4gWIq8ljCrwInp0CUAO5q29osEbR342SCSqdU mfqfe4BFRXnxx9ZVVl/0ModkS6u+L8myKoRZEY01hSDZ0xI1R749MJ6TkKqpyNl+hTXZ dIfg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552490; x=1793157290; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=U3DpMGeowCythJkDTUUiIMfi9/HZiEN+pyCuaLt1qk4=; b=kSxMASGxYVPu967amNp5LOuy+F3XeGEMHl7igI4xLDu5VbupWhLhJ5YGF9XGtoR+vX 3KCLj4xZlN7zNqT9z9D+5kMAHHGNqcP6ktmfUgAs9zZtpxHQhdXRL6XcCDZxNac9wc1F 3M0q8dl30arKDS5YtBbx96UEZ5I4Jcsy0JeD/KemG5dFwerBS15sbPG+4mZDyLWNebzC me9Tn0j851gdp4O1GcaL/EJHDem5KUuw2AFwhd+mnxkWHBjx7AsbT6NyE8tHBU6HNHqG PG63+Dec0a6abYax63gd2YYkEtuVNmV09dZwRBdP6bXfZICwbmtX3EnZ5UPu6AsrHstg 5NZA== X-Gm-Message-State: AFq9FYJ4mtyrbKWpBPzXvyHn5IAhJEqvrRXS7hyAzUKq4blTLX+Ivboh 2/N+I/zEUu5xyxhuE0J53q+8+5Ull7O3NLPLlYGHn9zRD03/ksTPJ8N+ZRzWERlhcpWe1lbmXgG 3+hWFlhZ9ekZzDVioUKsz/z2+ubXbps8M33IC+V5drp+8yMgVfDMdfmLe00wZEFomFwzy X-Gm-Gg: AYBFou3zFOtbGaVo3lAqWp/umGVHKLIHdKEcYSvpOS4YxLtV23soCTZU7fzPmxzjEe/ VGNplTCEpN0z48TbtjB33C3pvRDlMOUiin4KcpKewgie4derKkHMJwNNwf+/gXYc0bUD36oAnLw Q/36Yi/Z8bJ+rJm6JNZrsln1o4kAzIW4q/6WVysJ4yBYuCUVlEWEeUHSOWbcC9M+Tg1hk8RiI5+ naMPtICQsEWQIc4hg1guNjdLEhiWjU1eTE2ChEF2y/5pJBVlFIdcegNZi0suEee+UhSMPAejsGx ExfziqByt1rNocM/c6Xm0V1KEd0SMvK0kDG5zowINTo89ukRWfzIWz6dlQOxdhms/dO9SQw6GVV ZG2+PzN62+ds9Ev705EfAMKV9IBqC3imPGf1obRJ0 X-Received: by 2002:a05:620a:4547:b0:93b:d7a0:d9db with SMTP id af79cd13be357-93f57ff06e0mr202367685a.53.1792552490237; Tue, 20 Oct 2026 20:14:50 -0700 (PDT) X-Received: by 2002:a05:620a:4547:b0:93b:d7a0:d9db with SMTP id af79cd13be357-93f57ff06e0mr202365585a.53.1792552489696; Tue, 20 Oct 2026 20:14:49 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 05/33] target/alpha: Use a static table in alpha_exception_name() Date: Wed, 21 Oct 2026 05:13:38 +0200 Message-ID: <20261021031407.24862-6-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX+xF+wTRE0/tY tMVMsS+F/bYCpgaMP0+imRtNCgZ9E+5y0Oq06pKYV8YIVMQIQaXdofA15GHDeuNy0HotUa9KFJa z5YRaw4wXqk601PMOKuO/dJefqYiRSA5SVEpdxpxwh0Sta60rSHDn+8eKOvzieyvtH1/RA5mPDN XXekQHT4b9mp7GaqaqN+le3jkGHKuD+kT0QD9gDW2SqX4Z2ONnEmxktxCS0KgevVmuyVD4QyWBA w7bAb3FwbyO8TshdFn8l+YbnaWBuY4b62TB7r4Nh/GTwwt8236G5E3GqwcAvWkYRpanybQs7k8h mgjSVKYvKeCwX8RswCz0Ri82+IQjtoCjnPX90anTUwjovmN8WeN8XTMcncGXHoje+6A2k/9ga9s Pc0JNZkIebAXYrbMiD0f9tkbr2ZRgPjryMrHybs7lTtaYkS9PDuAn8f7RqsihoK1Z39+R+rpLxP BiPBIK6PVS7i+nw93vw== X-Proofpoint-ORIG-GUID: _452U2BJIg6lKC3FpuIGT0QDGHLRY4aC X-Proofpoint-GUID: _452U2BJIg6lKC3FpuIGT0QDGHLRY4aC X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX24xXvZZt87P/ /U9sDXE25w3iyQb9G9PQirDmbEgBp6e96satkSwma23Io0KCLYZiDNw0goF70AUHuKEw8l0lp+W kEvB2j0j13ju0CWIEPvZwTJiCMfa7QU= X-Authority-Analysis: v=2.4 cv=NppE4MdJ c=1 sm=1 tr=0 ts=6ad82e2b cx=c_pps a=50t2pK5VMbmlHzFWWp8p/g==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=DJpcGTmdVt4CTyJn9g5Z:22 a=EUspDBNiAAAA:8 a=-Zoeorw8py2zlXck_4IA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=IoWCM6iH3mJn3m4BftBB:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 malwarescore=0 spamscore=0 priorityscore=1501 clxscore=1015 suspectscore=0 phishscore=0 lowpriorityscore=0 adultscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.168.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552940369158500 Replace the switch statement with a static lookup table. Suggested-by: Pierrick Bouvier Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/alpha/helper.c | 54 +++++++++++-------------------------------- 1 file changed, 14 insertions(+), 40 deletions(-) diff --git a/target/alpha/helper.c b/target/alpha/helper.c index cedb0006892..0fdb73074ad 100644 --- a/target/alpha/helper.c +++ b/target/alpha/helper.c @@ -37,47 +37,21 @@ =20 const char *alpha_exception_name(int excp) { - const char *name; + static const char * const excp_names[] =3D { + [EXCP_RESET] =3D "reset", + [EXCP_MCHK] =3D "mchk", + [EXCP_SMP_INTERRUPT] =3D "smp_interrupt", + [EXCP_CLK_INTERRUPT] =3D "clk_interrupt", + [EXCP_DEV_INTERRUPT] =3D "dev_interrupt", + [EXCP_MMFAULT] =3D "mmfault", + [EXCP_UNALIGN] =3D "unalign", + [EXCP_OPCDEC] =3D "opcdec", + [EXCP_ARITH] =3D "arith", + [EXCP_FEN] =3D "fen", + [EXCP_CALL_PAL] =3D "call_pal", + }; =20 - switch (excp) { - case EXCP_RESET: - name =3D "reset"; - break; - case EXCP_MCHK: - name =3D "mchk"; - break; - case EXCP_SMP_INTERRUPT: - name =3D "smp_interrupt"; - break; - case EXCP_CLK_INTERRUPT: - name =3D "clk_interrupt"; - break; - case EXCP_DEV_INTERRUPT: - name =3D "dev_interrupt"; - break; - case EXCP_MMFAULT: - name =3D "mmfault"; - break; - case EXCP_UNALIGN: - name =3D "unalign"; - break; - case EXCP_OPCDEC: - name =3D "opcdec"; - break; - case EXCP_ARITH: - name =3D "arith"; - break; - case EXCP_FEN: - name =3D "fen"; - break; - case EXCP_CALL_PAL: - name =3D "call_pal"; - break; - default: - name =3D ""; - break; - } - return name; + return ARRAY_ELEM_OR_NULL(excp_names, excp) ?: "unknown"; } =20 uint64_t cpu_alpha_load_fpcr(CPUAlphaState *env) --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552582; cv=none; d=zohomail.com; s=zohoarc; b=DBYWj1CzwYzMYetaCes/hhovJtVua7pntqe3uiETnKGDzmJg3g1MU8oRT54clNPLQTGqFoXdzMmsAhx+HWzAdkc56rKhtztZLan1ztNZvpD7su4ZpoO5cYZtNHnuBwrtrhmTka8bCrIlTc/1lKUaxaZrCKT6XGRti14UoRIrLbE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552582; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=TyexEBPMQhHa25gvne1aS7MprTFHqB40T82Zul38+kE=; b=jmlUaH/KGvFBMye4mYOq5tW/22wfJgLpaxlPUjsQ2c9OAUAbiy0fsr9Os/zitdO45MCj7IXkhaJuQjiJTcRJ9U16aJ4Su09S5VIMbEvh7VsgW1YA3rX2X/LFCNKxe9blVwDj1nyolmZpVHoHH74E+w23+y0O8ktE0DCAYfoId3M= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552582798615.5914018797947; Tue, 20 Oct 2026 20:16:22 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMo1-0003VY-Pk; Tue, 20 Oct 2026 23:15:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMne-00030t-6G for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:15:34 -0400 Received: from mx0a-0031df01.pphosted.com ([205.220.168.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMnF-0002TE-Po for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:15:22 -0400 Received: from pps.filterd (m0279865.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2EtnY299889 for ; Wed, 21 Oct 2026 03:14:58 GMT Received: from mail-qk1-f200.google.com (mail-qk1-f200.google.com [209.85.222.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4heda4spt0-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:14:58 +0000 (GMT) Received: by mail-qk1-f200.google.com with SMTP id af79cd13be357-93cbf2fd504so54826385a.2 for ; Tue, 20 Oct 2026 20:14:58 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4a1fb864dacsm40890855e9.12.2026.10.20.20.14.55 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:14:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= TyexEBPMQhHa25gvne1aS7MprTFHqB40T82Zul38+kE=; b=jAuTI6Ebjm0Zb8er AmZ3yRTVMs4bF2WDqqpzdVETA5YMVvYSkuKj+rmJylPr4qGezKONfH7vFh2YeMS0 uIH5fD4XHAy3YNjRSI1xgHZwvOR01WymUgVD1jE4EXm6o3GkSXPegLwgPYNpExki 8WsGPw7M94wkie8IjPQpZbQ9ICJ8t1/d4vmMBe7Ik8TleA6swkVgbYlbDQKYamKb pf7o8QOLZw5xURWfYFWhr857oTzrNc8NB/kp4KBAl75wKJ8yuJLl0dXdTyiuACqG wGVKz3/Qe+yLfRgoEPm1XZAOXHuSQfmdnY7nNWWgWPP+fZBwh5+SCpzfmt/LQPQR CSrH1w== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552497; x=1793157297; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=TyexEBPMQhHa25gvne1aS7MprTFHqB40T82Zul38+kE=; b=PNsL0u3KKjc2sOUyyZryq5mFZTb2hz4DBvYfd0YX8lkBY05txd4GyUZ/qLZrFQOWcd iMx9fn86Mtkp6k1SfOwPBC475aKr44XXyhvgR+f7+c5gMNhBwgHt1x+rWc2NFaDHIarR bs69IU/M0RqeACMV10IjLeW+Xk2KNC+39vi5Lsrb3DzhbTKObyr8xPE+eCAf3KkaA0Qn +FikK5SaOBSBFxoCfBb/3tKntDjDq2lwjSVd6vigJZdR39UzY6oPOJaZhmgI6lUuld7b oeOl8HuNhQVFFIvuCa/RTZQvlf2NxYmWicxifaTfg+VJ0cwl6M0gTMdVBmf+7Ze4Yiqk q4Eg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552497; x=1793157297; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=TyexEBPMQhHa25gvne1aS7MprTFHqB40T82Zul38+kE=; b=OsLriyZ3t6O+1i1i3i6hYoL4IimbpaKLPfQVAnMsixT6e/O2vBnjestC4LDJzUGFXY 4IXfZd/Csppe1H8F7lMonmMtG9zl+t8ck1eOfCJk+q6gf8ZCkACAS6yR4Vcmv5NCSf2F noEXGYbdiZ0ShaGL3KGn8bLsyogNAqMbYa6pq+Dz7M2SeH0OXph5ARNVkTneXaQPh5rl lmHESsNoMdGDisBw09xbB1uUXXtrJduZlzWYNj1dSzhLuzQf2ahfSYPFWVgdW5Vjyi9q vJS1U3U4duuI2fHuHfHXfPzMufJZqJFO9DbAqT0kpRg7/nIbgNg+3JVcB4Bw92rqeV63 9O0g== X-Gm-Message-State: AFq9FYKolLScSRkacEBpsyC/BD6DmrDPyVyKn3zBEu+C0OwDLxYWrk31 lSLkwnAOh8o7lG/4XhoVphaVKwrReERDaN3un3rdBz0GfPWhGS8dN8osw9sCw8xhcdfC7WKUwDa QqdPsCKuJV7JKmRqnWSrW0OtNft6T2tBrUXK31Q7DuGucmkUBm/Duv08g++ja80uYMQlE X-Gm-Gg: AYBFou1IWVmdFMjGNVMprxRr9GS9l+24AqE8pZQ2bKGP74xDn2Azm8NpR1gwVITGP7J Kt+XYzwvBs6xCM3fe23AwBSC6OslUfgA4McB5Gv4PN6LXCsQaOyjuG09TGlOjBckjiZTf+hE61D wtE0wYN0wjhjm+77H9fEXvvM/yIHcdFVmrHs+vwZiDP1S1483oHyXWaOcSXNyHtewPl0atIbCiS FsanpX76sOd2EHqqpMM8IV2U1MCLJ7I8iKRQcbYX6pnOjo6Cfsqc0m090TWBZLaMZ6s8UDHz00+ vORFfqDb15Ek9WZB2OLFiT2LljeWGbXGJ5LLvPKAWXva3/oz8BcfbSHmnJpoVS6DuwsaEzQaJu5 LIkT60cl26l8wySN4tLjX5juHBFshnxT2khV8C9lm X-Received: by 2002:a05:620a:4541:b0:93f:54e4:6d43 with SMTP id af79cd13be357-93f57e5e1b5mr213136785a.6.1792552497443; Tue, 20 Oct 2026 20:14:57 -0700 (PDT) X-Received: by 2002:a05:620a:4541:b0:93f:54e4:6d43 with SMTP id af79cd13be357-93f57e5e1b5mr213134685a.6.1792552497000; Tue, 20 Oct 2026 20:14:57 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 06/33] target/arm: Register CPUClass::exception_name() handler Date: Wed, 21 Oct 2026 05:13:39 +0200 Message-ID: <20261021031407.24862-7-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-ORIG-GUID: VAPSkHnbLpmIBPhpKRSptgyRt2ubN1C4 X-Proofpoint-GUID: VAPSkHnbLpmIBPhpKRSptgyRt2ubN1C4 X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXyfMrbye3FGwB Q9iTF9pI9+hMmackkxxYhDn5OOvLNMDzjUolIG5CkjkUkx1JkUMhAK2DPdEl0IP9AR2Utcs32oF XeXjEgHQlA3Ii0uCvZ/uk5TIE66i2fI= X-Authority-Analysis: v=2.4 cv=R7aWitRX c=1 sm=1 tr=0 ts=6ad82e32 cx=c_pps a=hnmNkyzTK/kJ09Xio7VxxA==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=Um2Pa8k9VHT-vaBCBUpS:22 a=EUspDBNiAAAA:8 a=QvePOBYGvqDf6_zMoJUA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=PEH46H7Ffwr30OY-TuGO:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX09QpuRuUZAyB 1ohKxPKkBOiNsGzSczFBgCF+/ccePnUIioYAKLlY6O9fPsjvk7PQRbRszCAAyI53U95mqLyW7Ck gF89DPXHWzO18SL+YKKjsrpBngqD0z2oASmxU0iY9PD2Mw/r3HaRIQjASZuBvMQcq9fWmh0FUvm GmUCXqZ7XNaDKBoL8UaHD9CiDGiRA3b+i466x4fzDuOt/MFEx2Ga/hmV0VEu58h9QQxLPMOQ3jg 46Yo5jXUE/nE0eozWY563W4tV1ZPojzvnIunySPlKb2A9tgaU/6lEamU+C3shY2UDzErYM7bfjH Rnb+PNcJmf+Y9Q2yFW3TqPdw742Hfy5v5qeifxuf1jtLkQ0REE53LwhfbzHUrHe5Yh0snkT68jF P58JG5utkAEoEbIlRGOHpTTOH1FfKC76//q5tTA0O5jmfn3DEK+LEW2hnZRgyF36qTUVlOzzAoh HWlJ7AWUr6Gti+2BVcg== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 adultscore=0 priorityscore=1501 lowpriorityscore=0 clxscore=1015 impostorscore=0 bulkscore=0 spamscore=0 suspectscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.168.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552583504158500 Factor arm_exception_name() out of arm_log_exception() and register it as the CPUClass::exception_name() handler, so the common exception logging can resolve ARM exception codes to names. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/arm/cpu.h | 2 ++ target/arm/cpu.c | 1 + target/arm/helper.c | 76 ++++++++++++++++++++++----------------------- 3 files changed, 40 insertions(+), 39 deletions(-) diff --git a/target/arm/cpu.h b/target/arm/cpu.h index a0355ba9e1a..d76554dfc1f 100644 --- a/target/arm/cpu.h +++ b/target/arm/cpu.h @@ -67,6 +67,8 @@ #define EXCP_MON_TRAP 29 /* AArch32 trap to Monitor mode */ /* NB: add new EXCP_ defines to the array in arm_log_exception() too */ =20 +const char *arm_exception_name(int excp); + #define ARMV7M_EXCP_RESET 1 #define ARMV7M_EXCP_NMI 2 #define ARMV7M_EXCP_HARD 3 diff --git a/target/arm/cpu.c b/target/arm/cpu.c index 81ec1ce21c6..8efbf673a92 100644 --- a/target/arm/cpu.c +++ b/target/arm/cpu.c @@ -2647,6 +2647,7 @@ static void arm_cpu_class_init(ObjectClass *oc, const= void *data) &acc->parent_phases); =20 cc->class_by_name =3D arm_cpu_class_by_name; + cc->exception_name =3D arm_exception_name; cc->dump_state =3D arm_cpu_dump_state; cc->set_pc =3D arm_cpu_set_pc; cc->get_pc =3D arm_cpu_get_pc; diff --git a/target/arm/helper.c b/target/arm/helper.c index 7ac21108d1c..824f0a75d04 100644 --- a/target/arm/helper.c +++ b/target/arm/helper.c @@ -8841,46 +8841,8 @@ void arm_log_exception(CPUState *cs) int idx =3D cs->exception_index; =20 if (qemu_loglevel_mask(CPU_LOG_INT)) { - const char *exc =3D NULL; - static const char * const excnames[] =3D { - [EXCP_UDEF] =3D "Undefined Instruction", - [EXCP_SWI] =3D "SVC", - [EXCP_PREFETCH_ABORT] =3D "Prefetch Abort", - [EXCP_DATA_ABORT] =3D "Data Abort", - [EXCP_IRQ] =3D "IRQ", - [EXCP_FIQ] =3D "FIQ", - [EXCP_BKPT] =3D "Breakpoint", - [EXCP_EXCEPTION_EXIT] =3D "QEMU v7M exception exit", - [EXCP_KERNEL_TRAP] =3D "QEMU intercept of kernel commpage", - [EXCP_HVC] =3D "Hypervisor Call", - [EXCP_HYP_TRAP] =3D "Hypervisor Trap", - [EXCP_SMC] =3D "Secure Monitor Call", - [EXCP_VIRQ] =3D "Virtual IRQ", - [EXCP_VFIQ] =3D "Virtual FIQ", - [EXCP_SEMIHOST] =3D "Semihosting call", - [EXCP_NOCP] =3D "v7M NOCP UsageFault", - [EXCP_INVSTATE] =3D "v7M INVSTATE UsageFault", - [EXCP_STKOF] =3D "v8M STKOF UsageFault", - [EXCP_LAZYFP] =3D "v7M exception during lazy FP stacking", - [EXCP_LSERR] =3D "v8M LSERR UsageFault", - [EXCP_UNALIGNED] =3D "v7M UNALIGNED UsageFault", - [EXCP_DIVBYZERO] =3D "v7M DIVBYZERO UsageFault", - [EXCP_VSERR] =3D "Virtual SERR", - [EXCP_GPC] =3D "Granule Protection Check", - [EXCP_NMI] =3D "NMI", - [EXCP_VINMI] =3D "Virtual IRQ NMI", - [EXCP_VFNMI] =3D "Virtual FIQ NMI", - [EXCP_MON_TRAP] =3D "Monitor Trap", - }; - - if (idx >=3D 0 && idx < ARRAY_SIZE(excnames)) { - exc =3D excnames[idx]; - } - if (!exc) { - exc =3D "unknown"; - } qemu_log_mask(CPU_LOG_INT, "Taking exception %d [%s] on CPU %d\n", - idx, exc, cs->cpu_index); + idx, arm_exception_name(idx), cs->cpu_index); } } =20 @@ -9967,6 +9929,42 @@ void arm_cpu_do_interrupt(CPUState *cs) } #endif /* !CONFIG_USER_ONLY */ =20 +const char *arm_exception_name(int excp) +{ + static const char * const excnames[] =3D { + [EXCP_UDEF] =3D "Undefined Instruction", + [EXCP_SWI] =3D "SVC", + [EXCP_PREFETCH_ABORT] =3D "Prefetch Abort", + [EXCP_DATA_ABORT] =3D "Data Abort", + [EXCP_IRQ] =3D "IRQ", + [EXCP_FIQ] =3D "FIQ", + [EXCP_BKPT] =3D "Breakpoint", + [EXCP_EXCEPTION_EXIT] =3D "QEMU v7M exception exit", + [EXCP_KERNEL_TRAP] =3D "QEMU intercept of kernel commpage", + [EXCP_HVC] =3D "Hypervisor Call", + [EXCP_HYP_TRAP] =3D "Hypervisor Trap", + [EXCP_SMC] =3D "Secure Monitor Call", + [EXCP_VIRQ] =3D "Virtual IRQ", + [EXCP_VFIQ] =3D "Virtual FIQ", + [EXCP_SEMIHOST] =3D "Semihosting call", + [EXCP_NOCP] =3D "v7M NOCP UsageFault", + [EXCP_INVSTATE] =3D "v7M INVSTATE UsageFault", + [EXCP_STKOF] =3D "v8M STKOF UsageFault", + [EXCP_LAZYFP] =3D "v7M exception during lazy FP stacking", + [EXCP_LSERR] =3D "v8M LSERR UsageFault", + [EXCP_UNALIGNED] =3D "v7M UNALIGNED UsageFault", + [EXCP_DIVBYZERO] =3D "v7M DIVBYZERO UsageFault", + [EXCP_VSERR] =3D "Virtual SERR", + [EXCP_GPC] =3D "Granule Protection Check", + [EXCP_NMI] =3D "NMI", + [EXCP_VINMI] =3D "Virtual IRQ NMI", + [EXCP_VFNMI] =3D "Virtual FIQ NMI", + [EXCP_MON_TRAP] =3D "Monitor Trap", + }; + + return ARRAY_ELEM_OR_NULL(excnames, excp) ?: "unknown"; +} + uint64_t arm_sctlr(CPUARMState *env, int el) { /* Only EL0 needs to be adjusted for EL1&0 or EL2&0 or EL3&0 */ --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552709; cv=none; d=zohomail.com; s=zohoarc; b=Fh5fgP1EFSi40IGUVXznTn9sf2GvbyBm3AIvW62sdlLCX5114NUhit4gef0KC2KyWcItEHlT+j4cFi5FSwKxLSSD+pr71cV9DnfxwOxhhTM/VECrrp1qqk4vTm4SFbdHN5o2G76MqPrc5bE+h57s3WlCeCBrTCMZpvH+dEuwvUg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552709; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=R64IH3GOCKtnA3P9h0NKSf6oM61YX9jVt5CpSJTP1eQ=; b=jzbaohHQeBmtNdFFr225yeNvWFBwfBeShm9uB5L1ZuQY9VgRmFGzs7+ZUOQGgQ/mMALZtRnhKwiYGRDmHBKlHGaQxlDfaYfVq07VWbrZYWAN64OGkaejGjvwjUFA0SOXAFopeND8aaf7QOp8xCJ5u4XFhk+U11uzQKBX0VpkzVA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552709904496.0868959588114; Tue, 20 Oct 2026 20:18:29 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMpe-0005RT-Oi; Tue, 20 Oct 2026 23:17:39 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMno-0003Dn-89 for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:15:47 -0400 Received: from mx0a-0031df01.pphosted.com ([205.220.168.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMnd-0002fI-Or for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:15:41 -0400 Received: from pps.filterd (m0279867.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2F5SX336955 for ; Wed, 21 Oct 2026 03:15:06 GMT Received: from mail-qv1-f72.google.com (mail-qv1-f72.google.com [209.85.219.72]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4hedabhrcv-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:15:06 +0000 (GMT) Received: by mail-qv1-f72.google.com with SMTP id 6a1803df08f44-917a3c27c9bso6335536d6.0 for ; Tue, 20 Oct 2026 20:15:05 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4a1fb80e859sm42414075e9.4.2026.10.20.20.15.03 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:15:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= R64IH3GOCKtnA3P9h0NKSf6oM61YX9jVt5CpSJTP1eQ=; b=RVnlZDltJRr35kB3 Dxs5Z/rbZuYthS8vjvP/tJ2WZZL20qhqrjPJZAGe26BYPP4VAm18dZaoAOfXD7JL 1smAuPBCA6mqZISNx0E2yJyzNy8lm3pJXdaXe6tdXwlB+J05V3q9YtN/djju6orS DJifLRh9BS24WRZVA3pb3WVC0V9CgyxN1Teh3YJoUebUYHnAdxrGqw59Mye1C8oe RbOrNERSMBNKufqVOQeTOHUkSG1VZ6lnBx9EtF1Q6212pG8VjqXedl0QiMguAO9H iYHzqWTzpaKX4ZIUUYDK7eS2/tZR+ks0GD5rVxqd80rt0oTYSqjOuFz6k4rmZ1vz G/KAHg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552505; x=1793157305; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=R64IH3GOCKtnA3P9h0NKSf6oM61YX9jVt5CpSJTP1eQ=; b=DoknxeNy7fUzKqjffFocQVUiGbXROnJovqBG37fls4OSD0ImnLMTGre3UiMxxr9EQu tP3qLVqU93YjZaLEUKa2zg8UmEcwxMo0PJxdb8vhXd/7KPJ3LTzLgSrqeeAmJrDGjcZS SKOov3UhpSnSn7qHo4ZJDbfh7h5dbwCJQ5vOAt0IM96xWFCwUH0HpeSMjUPy9Rc6Px8g tEv/TfR6BDnaUcU0xNJfOdHunlW24TDPK2rLgQJkZEutBiI40dvtGgf6XwuXzuSuRNDW vxW5hO1J3gEZ2anclTM1+wWtR5vnG8YJRjiEdmv5ujWfOwQGCquZGw0qNH7VpIF586SZ 8klw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552505; x=1793157305; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=R64IH3GOCKtnA3P9h0NKSf6oM61YX9jVt5CpSJTP1eQ=; b=msvDzy3AbrZUv6KRQ0L3kZRAkWW4djfBhSP1r1cE/Iif/6pz+H8q7ZmuDHPZVkbKb9 UxZmccPIRJ5FpwFRdWI5dIx1u/id1DYPLWYkJmyL5cGzOXfN4byHXFxg9HpdYt7Lg8gS a7LVxYIfAMYFppUwP2qsHnfA0CTCqzxoO1eR4bnXZoLJ0EcgpK8kvqZxIqqkE046gya2 4JGzUHr6mCLDwK0hce8K9Kjkz44iHhRku1AniEEKDOJS2KTKcIQBUe1U/jWZG2QxyHlD DVg1fLN7lZAhZVnt5w0QcGzkvozhlthL6ZlbSL8zOa4pqVgCQ+snIPFlTOuIVmWhe7QZ Tvjg== X-Gm-Message-State: AFq9FYKfuHd75/woA4E/IWzob+DiCvAloG80HTvsGAlRShE76R1g4sMQ j+3wbkxacHIEJnAKs1nxoXyQnOrOTzjxeWWpFgxMyHALw2/vA2p7gOnU8bjfmBcjGWcsRLTf7q3 wpz1osPJVMMaiBaqo48tHaXlEVfyrKxVRGEvjMSZvY+TcCZ60jEvB4zBm2+BvbCJ6lIIb X-Gm-Gg: AYBFou1BAytjS+AsGJHfqg88y0fV8rqu0ewIBh5Vo8fcSr5hX8SLPvWHU2MSnZQL8vx po5CU3Gt+UxJdPKlk8UJ7PzF35sy06S+9cDc0s2aHG4+iHY7cGTuGxm/Cx4JbcbdnI/HHinQJHr 04vI2ywiBWi240dx2uiVoor/ZrhIQRixFhDqswG1AAf1IRoavJHcvrxc1rjOZ7yq9vkwarhrCJl SmFA1MBDWzSr4WN8RxCp+Iw/cPwqAlgfVNt4Cc3156o+49/LkFWPEaVNLg5bNq/jsQ6K4S87m6z faBnoMay+7Vg1q/GFShPzQshQ+c8VwVTDLDbfm6HSekLWtjI3xSyRj5wCs1aFOsnxMFyBJhguEx iZTEusUZ9dO1xcDuCyHerTI7tfA6HuZ+EBh4ib/+M X-Received: by 2002:a05:620a:2907:b0:93e:6b9e:6167 with SMTP id af79cd13be357-93f57fa0e8fmr228025985a.16.1792552504728; Tue, 20 Oct 2026 20:15:04 -0700 (PDT) X-Received: by 2002:a05:620a:2907:b0:93e:6b9e:6167 with SMTP id af79cd13be357-93f57fa0e8fmr228022985a.16.1792552504251; Tue, 20 Oct 2026 20:15:04 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 07/33] target/avr: Implement and register CPUClass::exception_name() Date: Wed, 21 Oct 2026 05:13:40 +0200 Message-ID: <20261021031407.24862-8-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXxEDdwDXH4vlr DQL+NXoYRbXaZnCHn1DJCSwisGcN3dbqJ5j4JYr+qhCexwpnFjBn0oX38lsJm/VPpwT2SlKP6tt YgdrJ8yTIieSxjPEtg30c2LrYRiDnEA= X-Proofpoint-ORIG-GUID: aK0nm4u0IkxZRsHuJD1NgawTnll178RS X-Proofpoint-GUID: aK0nm4u0IkxZRsHuJD1NgawTnll178RS X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX1xJiwq206mGe EH0wzX6mwPDRScM/g1XjMlKNfSO0zBMH4NsNnGULpsUyTIRKgdPrzR9j7BJkEtqy+HvTP7aWsod CwIYZx9wTmhMQk5+y4Kmkx49lEXIMcdTem7O6Vw9WEvngHX7kyvsEbr5FLX2QBBZMFPzksvXdYU EC0IoQlPZ9hXF5TTNnGutlckdS6YLFlXRJMVJlvcKlBq04VmfCJNoBy/MRfY3Dbmj4iQwT+GUza kFFJS05e+PvLpSlTfNom1/8eRrZH+ldCQr26LumKsGzdAfVT4MSrD51w46JaXUcw26HRpvoEhg3 uLeF5z9NvclUtmiQq6xbLs91D2ObQNWp8nUpPMWxtwZKjyWj4clFDl1eIV2jexZp4RmFdPsGxVn txwxAs+QWT3zNK+Dox0empTTlGsZh3YMs/gUrVgUQnQVR5usPRqOHqST8cxtlxWxRGyeuczPLKB NYa1LHj9FuX1Cx34n0Q== X-Authority-Analysis: v=2.4 cv=NLpAaE6g c=1 sm=1 tr=0 ts=6ad82e3a cx=c_pps a=7E5Bxpl4vBhpaufnMqZlrw==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=eoimf2acIAo5FJnRuUoq:22 a=EUspDBNiAAAA:8 a=52sdbkR6oSSg4JP1pMIA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=pJ04lnu7RYOZP9TFuWaZ:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 priorityscore=1501 malwarescore=0 clxscore=1015 impostorscore=0 phishscore=0 spamscore=0 adultscore=0 lowpriorityscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.168.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552711871158500 Implement avr_exception_name() and register it as the CPUClass::exception_name() handler, so the common exception logging can resolve AVR exception codes to names. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/avr/cpu.h | 2 ++ target/avr/cpu.c | 16 ++++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/target/avr/cpu.h b/target/avr/cpu.h index 1e4e839bd83..b1b5b637617 100644 --- a/target/avr/cpu.h +++ b/target/avr/cpu.h @@ -44,6 +44,8 @@ #define EXCP_RESET 1 #define EXCP_INT(n) (EXCP_RESET + (n) + 1) =20 +const char *avr_exception_name(int excp); + /* Number of CPU registers */ #define NUMBER_OF_CPU_REGISTERS 32 =20 diff --git a/target/avr/cpu.c b/target/avr/cpu.c index f8409f32ab9..485f6ce52dc 100644 --- a/target/avr/cpu.c +++ b/target/avr/cpu.c @@ -258,6 +258,21 @@ static const TCGCPUOps avr_tcg_ops =3D { .pointer_wrap =3D cpu_pointer_wrap_uint32, }; =20 +const char *avr_exception_name(int excp) +{ + static const char * const excp_names[] =3D { + [EXCP_RESET] =3D "RESET", + [EXCP_INT(0)] =3D "INT#0", + [EXCP_INT(1)] =3D "INT#1", + [EXCP_INT(2)] =3D "INT#2", + [EXCP_INT(3)] =3D "INT#3", + [EXCP_INT(4)] =3D "INT#4", + [EXCP_INT(5)] =3D "INT#5", + }; + + return ARRAY_ELEM_OR_NULL(excp_names, excp) ?: "unknown"; +} + static void avr_cpu_class_init(ObjectClass *oc, const void *data) { DeviceClass *dc =3D DEVICE_CLASS(oc); @@ -273,6 +288,7 @@ static void avr_cpu_class_init(ObjectClass *oc, const v= oid *data) &mcc->parent_phases); =20 cc->class_by_name =3D avr_cpu_class_by_name; + cc->exception_name =3D avr_exception_name; =20 cc->dump_state =3D avr_cpu_dump_state; cc->set_pc =3D avr_cpu_set_pc; --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552661; cv=none; d=zohomail.com; s=zohoarc; b=gB4tfSUJOBu74Jeo5JKWwcKuS/4MyFHQYujqoDWBENjB8a+PUJjQCr2jJyHAYuKppARDS0h70AI7zyU8N/yz0Hk1CvXr3Nk0g3Y+IQFBH6la2t0x4+45xznAaXNj64JituVd6apiSNTozZXe9v+1M6/EmRZrFszQRP+7xgyOrqE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552661; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Cf9Hw2+gVq1VRQ9Z2X/nBW/OhfF9R6c39gpwv9fH/lo=; b=VCU2wfeCQfmlFbFkZlDsyTWPTmCEhndwN/N9rcM65temGz3Y0ErNmnVYOEXGC1NmrDFwXJXvCucavIrmy5k1aF9EuF7iLy+S4AtIFE71tTfsY4jp9wJXLgxalCtgrjiov7p52rtQgj5vqCs4cKemdhTnu3I94InY59qE0MV29/8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552661217232.513121094481; Tue, 20 Oct 2026 20:17:41 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMog-0004TD-5v; Tue, 20 Oct 2026 23:16:40 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMnp-0003EQ-QL for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:15:47 -0400 Received: from mx0a-0031df01.pphosted.com ([205.220.168.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMnn-0002fl-Q8 for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:15:45 -0400 Received: from pps.filterd (m0279865.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2EtV2299884 for ; Wed, 21 Oct 2026 03:15:16 GMT Received: from mail-qt1-f200.google.com (mail-qt1-f200.google.com [209.85.160.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4heda4spty-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:15:16 +0000 (GMT) Received: by mail-qt1-f200.google.com with SMTP id d75a77b69052e-5363763b556so6361201cf.3 for ; Tue, 20 Oct 2026 20:15:15 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e258358c1sm2461142f8f.43.2026.10.20.20.15.10 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:15:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= Cf9Hw2+gVq1VRQ9Z2X/nBW/OhfF9R6c39gpwv9fH/lo=; b=A56libe77Orql3Aw mwpY/ja7kudyvJtBurNMlkACiERG9wd5CksHScDNFcsbCl+Ho988SHV0/jIgiF2N 96KgN7dmmqWgfyMDZ6lEcexOVkYmScgeatrzwriZ1GzUAYEgcrV8YW2oGpI7+d23 NIvfcVIOUl38KjZp18eDprrS9l8wszaML849B4/xeld6VczHSccZ6yfAeR9SlyKj nGLZqz4J4yy6yfcM//YnE+7EsddAHcnmkDqRIb0N8IpNRY8ASz1xFCuhbQX3OlR/ VkBUkwKKsBnEhJCAMPmf++gDmKCGUq5Uf2psmUFGEDi6+zWgNS/ih+7zOutYmoJG M/BS6A== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552514; x=1793157314; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=Cf9Hw2+gVq1VRQ9Z2X/nBW/OhfF9R6c39gpwv9fH/lo=; b=BgH/CfSyKyWuM4moK0G+l3PO6XhRu8g8mWpwTO7YiBSmMotGq7IlVFaksnlCJkgKq+ UwMrYtJjCYd74EpqR5h42CnTOx2/oiaZ5/5FeHJezzVr2OfQNljyKZzy16fIceeAOhE8 s8Z9LaazZF4dALFkGiNx/wHW1Vo8rXRnQztiCl7JPEJk0GxLCG1xftT9JrIoUjAFU12h l+xIXDeYc5dGznwECUvKsyiSjZfsI6YU27a8RpetTdWXc3U1IpA1XMnoalpuhihvtmH0 woClIWLa2pbdgDsPcqjGL0DMK7DdaPxy5ltJf47jfGgw5SE43eYLbYHETTxXR3IS3tZT dIlA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552514; x=1793157314; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=Cf9Hw2+gVq1VRQ9Z2X/nBW/OhfF9R6c39gpwv9fH/lo=; b=q247Wvq+5mkZAoBvTN9/TeTJbUGXI11ehUWU5ZdCQT2M9yaG/Ab9OdaFhodmb5nj7+ G3yxil4UwJlpABanhuA6G1R4R2Bgv2yUk+5bIcCamwZS8l9XaHB8mkg4M3hB3aYniigX 6G5YOETDkR7iTNcsQy3154iRfOX/bwJrJH8uVo3pl3SfUYL4sImwbKSI7vJSO8yyVNg2 ++TFvgM4rwCkb+GD8A4QS0xacuFlM5iTX7KwQ7VvugEB/XBWQBdKF/PyN0x5qvlcHaY0 yzhWNI69ZNl/ttqx/3UMOBvM5rqqms3sU1JXFWIYhGJuSOWYGaExo8CG9Px4xBgtn11H 5REA== X-Gm-Message-State: AFq9FYIvXcNpZe3hnZsQRiD2fuqQaNwoLkFvsMVn+NEMhJKY0/Zpiu+C bXRcUKL0QssNkizfi2BOfZuGjXw5HO0dy31bxi4xniMJqKYTypWM5fNc11Ou4cj1Eefrqj+Yd+A zIpngEd28ICVPvhO7ExOTJmuAVS/Jlkgh8qaL/uwetVp0hvmciR+SZIZX3oWJKu3M7215 X-Gm-Gg: AYBFou0LEN7s0ZJf1VEWdKuDbUQCZj/0kXeoL4K9/JNDcFSkXu3Frg9slcwa2O/y/F+ r9CUiLSnmSXQ3/+GOz3SzEsNoLzpuQ/mSzjDaFQSz2pBsyEo91cyQyaW5fI46cn0a1JEwYiMtHk wRm46zUQSFuaktbiBhRApIxnRL7XdkH7cv0TLbDS1uynb/zDgMTmdpFaJQKTaIB6rhrJyvphdqk 589smpvmNtzGhZssZD11rpS6w+x17XC2tvKd19IuNwpAEvrCcm9/sxG7QJ+djzcYh2Tk48rd1gT gzntKQ3bqc75WiNpqJLD4ubpYCIEazVZpLzh2GnZ5IEnaZLeMiHn27PvyS3PEgDvI+dTlLruVFp SVQc7XYgnoOAjlM6ZeeuZ8DCqBs54cAEATfpz/DWV X-Received: by 2002:a05:620a:6087:b0:93f:567b:6157 with SMTP id af79cd13be357-93f57f63035mr220286485a.46.1792552513599; Tue, 20 Oct 2026 20:15:13 -0700 (PDT) X-Received: by 2002:a05:620a:6087:b0:93f:567b:6157 with SMTP id af79cd13be357-93f57f63035mr220283985a.46.1792552513088; Tue, 20 Oct 2026 20:15:13 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 08/33] target/hexagon: Register CPUClass::exception_name() handler Date: Wed, 21 Oct 2026 05:13:41 +0200 Message-ID: <20261021031407.24862-9-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-ORIG-GUID: X7QbFO3WKeuQyHiKPBUn5nlDqlEq_tYP X-Proofpoint-GUID: X7QbFO3WKeuQyHiKPBUn5nlDqlEq_tYP X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX1tlRxTMg9HYW hwbHvdfavzzywWLShgYT4ihZc+Fes7+opPjpHG1UPYw4YkgiHsa/Ub80uKoWK9S578jO0p0Q7kt mMsnZlL8cJqG/Wrl1czVchNeM3nhICE= X-Authority-Analysis: v=2.4 cv=R7aWitRX c=1 sm=1 tr=0 ts=6ad82e44 cx=c_pps a=JbAStetqSzwMeJznSMzCyw==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=Um2Pa8k9VHT-vaBCBUpS:22 a=EUspDBNiAAAA:8 a=L0AECS4D--PbZBcdiJkA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=uxP6HrT_eTzRwkO_Te1X:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX5ped1s9Filq+ OEqqwC+mstllNtzt2ZoSpn/BCrfCPVKEfo3g3pIaLnCDgLtLVqH8XUNHeU7qIFTz/axJgOgx6LU mgAijb+/f8WKzx+m5LXCRe0DTVRZv0uXa9tX0ABwtefLXyNRT6KlJkRE8DqTSI/49NP4VvxCq/T i6ehvKRwnHEbIxhRD44n0TeXE0XA1YL0VtDgdxSWFuCgIDkWQXG+FzW0SwHPuZH67VtsJaN5RJl w/9YUs4zVg+dhmijJD4NMNZBLiK1+VzJhImURftNMavuSkyTVhikU1ap9KoIYsAGGrqeWJBd/Ss dahzRCma1uMTeIKKtvEBsDrkk2H716R1I6hgi2pfK6KqLApvxKSCNbS76Mu7kZhnSZT4I1KgBo0 PwqY6IqUITqEjH2f2z1tafdSDNruxMHm2nyL8mvJwhVn3eHg3+2HkxEOwmEG0e7cvKcxbEKQUlt vx5kmOr2A4h/14opxCQ== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 adultscore=0 priorityscore=1501 lowpriorityscore=0 clxscore=1015 impostorscore=0 bulkscore=0 spamscore=0 suspectscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.168.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552662981158500 Expose the hexagon event_name[] array via a hexagon_event_name() helper and register it as the CPUClass::exception_name() handler, so the common exception logging can resolve Hexagon exception codes to names. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Brian Cain --- target/hexagon/cpu_bits.h | 2 ++ target/hexagon/cpu.c | 34 ++++++++++++++++++++++++++++++++++ target/hexagon/hexswi.c | 30 +----------------------------- 3 files changed, 37 insertions(+), 29 deletions(-) diff --git a/target/hexagon/cpu_bits.h b/target/hexagon/cpu_bits.h index a8fba4aa188..7d1bdfcbc71 100644 --- a/target/hexagon/cpu_bits.h +++ b/target/hexagon/cpu_bits.h @@ -61,6 +61,8 @@ enum hex_event { HEX_EVENT_INTF =3D 0x1f, }; =20 +const char *hexagon_event_name(int event); + enum hex_cause { HEX_CAUSE_NONE =3D -1, HEX_CAUSE_RESET =3D 0x000, diff --git a/target/hexagon/cpu.c b/target/hexagon/cpu.c index f20d6de6f63..962f00bc36c 100644 --- a/target/hexagon/cpu.c +++ b/target/hexagon/cpu.c @@ -318,6 +318,39 @@ void hexagon_debug(CPUHexagonState *env) hexagon_dump(env, stdout, CPU_DUMP_FPU); } =20 +const char *hexagon_event_name(int event) +{ + static const char *event_name[] =3D { + [HEX_EVENT_RESET] =3D "HEX_EVENT_RESET", + [HEX_EVENT_IMPRECISE] =3D "HEX_EVENT_IMPRECISE", + [HEX_EVENT_PRECISE] =3D "HEX_EVENT_PRECISE", + [HEX_EVENT_TLB_MISS_X] =3D "HEX_EVENT_TLB_MISS_X", + [HEX_EVENT_TLB_MISS_RW] =3D "HEX_EVENT_TLB_MISS_RW", + [HEX_EVENT_TRAP0] =3D "HEX_EVENT_TRAP0", + [HEX_EVENT_TRAP1] =3D "HEX_EVENT_TRAP1", + [HEX_EVENT_FPTRAP] =3D "HEX_EVENT_FPTRAP", + [HEX_EVENT_DEBUG] =3D "HEX_EVENT_DEBUG", + [HEX_EVENT_INT0] =3D "HEX_EVENT_INT0", + [HEX_EVENT_INT1] =3D "HEX_EVENT_INT1", + [HEX_EVENT_INT2] =3D "HEX_EVENT_INT2", + [HEX_EVENT_INT3] =3D "HEX_EVENT_INT3", + [HEX_EVENT_INT4] =3D "HEX_EVENT_INT4", + [HEX_EVENT_INT5] =3D "HEX_EVENT_INT5", + [HEX_EVENT_INT6] =3D "HEX_EVENT_INT6", + [HEX_EVENT_INT7] =3D "HEX_EVENT_INT7", + [HEX_EVENT_INT8] =3D "HEX_EVENT_INT8", + [HEX_EVENT_INT9] =3D "HEX_EVENT_INT9", + [HEX_EVENT_INTA] =3D "HEX_EVENT_INTA", + [HEX_EVENT_INTB] =3D "HEX_EVENT_INTB", + [HEX_EVENT_INTC] =3D "HEX_EVENT_INTC", + [HEX_EVENT_INTD] =3D "HEX_EVENT_INTD", + [HEX_EVENT_INTE] =3D "HEX_EVENT_INTE", + [HEX_EVENT_INTF] =3D "HEX_EVENT_INTF", + }; + + return ARRAY_ELEM_OR_NULL(event_name, event) ?: "unknown"; +} + static void hexagon_cpu_set_pc(CPUState *cs, vaddr value) { cpu_env(cs)->gpr[HEX_REG_PC] =3D value; @@ -841,6 +874,7 @@ static void hexagon_cpu_class_init(ObjectClass *c, cons= t void *data) &mcc->parent_phases); =20 cc->class_by_name =3D hexagon_cpu_class_by_name; + cc->exception_name =3D hexagon_event_name; cc->dump_state =3D hexagon_dump_state; cc->set_pc =3D hexagon_cpu_set_pc; cc->get_pc =3D hexagon_cpu_get_pc; diff --git a/target/hexagon/hexswi.c b/target/hexagon/hexswi.c index e7362b56650..19439658392 100644 --- a/target/hexagon/hexswi.c +++ b/target/hexagon/hexswi.c @@ -735,34 +735,6 @@ static void set_addresses(CPUHexagonState *env, uint32= _t pc_offset, env->gpr[HEX_REG_PC] =3D evb | (exception_index << 2); } =20 -static const char *event_name[] =3D { - [HEX_EVENT_RESET] =3D "HEX_EVENT_RESET", - [HEX_EVENT_IMPRECISE] =3D "HEX_EVENT_IMPRECISE", - [HEX_EVENT_PRECISE] =3D "HEX_EVENT_PRECISE", - [HEX_EVENT_TLB_MISS_X] =3D "HEX_EVENT_TLB_MISS_X", - [HEX_EVENT_TLB_MISS_RW] =3D "HEX_EVENT_TLB_MISS_RW", - [HEX_EVENT_TRAP0] =3D "HEX_EVENT_TRAP0", - [HEX_EVENT_TRAP1] =3D "HEX_EVENT_TRAP1", - [HEX_EVENT_FPTRAP] =3D "HEX_EVENT_FPTRAP", - [HEX_EVENT_DEBUG] =3D "HEX_EVENT_DEBUG", - [HEX_EVENT_INT0] =3D "HEX_EVENT_INT0", - [HEX_EVENT_INT1] =3D "HEX_EVENT_INT1", - [HEX_EVENT_INT2] =3D "HEX_EVENT_INT2", - [HEX_EVENT_INT3] =3D "HEX_EVENT_INT3", - [HEX_EVENT_INT4] =3D "HEX_EVENT_INT4", - [HEX_EVENT_INT5] =3D "HEX_EVENT_INT5", - [HEX_EVENT_INT6] =3D "HEX_EVENT_INT6", - [HEX_EVENT_INT7] =3D "HEX_EVENT_INT7", - [HEX_EVENT_INT8] =3D "HEX_EVENT_INT8", - [HEX_EVENT_INT9] =3D "HEX_EVENT_INT9", - [HEX_EVENT_INTA] =3D "HEX_EVENT_INTA", - [HEX_EVENT_INTB] =3D "HEX_EVENT_INTB", - [HEX_EVENT_INTC] =3D "HEX_EVENT_INTC", - [HEX_EVENT_INTD] =3D "HEX_EVENT_INTD", - [HEX_EVENT_INTE] =3D "HEX_EVENT_INTE", - [HEX_EVENT_INTF] =3D "HEX_EVENT_INTF" -}; - void hexagon_cpu_do_interrupt(CPUState *cs) =20 { @@ -775,7 +747,7 @@ void hexagon_cpu_do_interrupt(CPUState *cs) qemu_log_mask(CPU_LOG_INT, "\t%s: event 0x%02x:%s, cause 0x%" PRIx32 "(%" PRIu32 ")= \n", __func__, (unsigned)cs->exception_index, - event_name[cs->exception_index], env->cause_code, + hexagon_event_name(cs->exception_index), env->cause_code, env->cause_code); =20 env->llsc_addr =3D ~0; --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792553080; cv=none; d=zohomail.com; s=zohoarc; b=RaYrwinqSV9oDetrrGwct3wF4z2jagjbkkyzo/TTH0W6K8bzLOhF33dflq8ZoV72Rl35G0Vn57P2fv3Hyv64NTBRqRWbJy0SsW+wsnRiPIIAzSNkOAUZczLvzZ+lJy9r4yNm+DStuG3rkVjozOdC9IssMHa8Rgxg4xf+zq2yho0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792553080; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=eM11e5ZliPQWh5X7FYojwl2XSBT/xIrvqwUdAV/Mepc=; b=hJ40Ya9a5dbRBtqX4sAVsrn18+URoNrUyUwKE5S9/nWIcT/QbbkjWF+T/jyf0/WM8DAxTh5AcFEwixcWzC/3odX7g5RhU4J80ciaGQYmgkRsmkgz+KDa3dKVCpSyCnRRkHNqcqe58JkcB0MEhRrliqiMYlUNEoyNylc6CX2b2RU= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792553080696273.7413648011162; Tue, 20 Oct 2026 20:24:40 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMpj-0005qz-De; Tue, 20 Oct 2026 23:17:43 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMnt-0003Iv-VP for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:15:50 -0400 Received: from mx0a-0031df01.pphosted.com ([205.220.168.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMnn-0002gK-Vo for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:15:49 -0400 Received: from pps.filterd (m0279866.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2ExcM2562800 for ; Wed, 21 Oct 2026 03:15:22 GMT Received: from mail-qv1-f71.google.com (mail-qv1-f71.google.com [209.85.219.71]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4hebyd23qa-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:15:21 +0000 (GMT) Received: by mail-qv1-f71.google.com with SMTP id 6a1803df08f44-91c0f73807eso5564136d6.0 for ; Tue, 20 Oct 2026 20:15:21 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4a1fb96bc7dsm44738385e9.15.2026.10.20.20.15.19 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:15:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= eM11e5ZliPQWh5X7FYojwl2XSBT/xIrvqwUdAV/Mepc=; b=j4/PpTVloVsroJNp 1oJptMlWFU5YoNx6D4uIxWGfRC9CzVrA/VbIDFW+tBYNJ6TvLE295oBlXxlsNu36 7TIlwWBd+4a4A40Ny9QovfDcTQSfSfM/kPcUc6Oo3htJYhGHK190rYVdRXP5//2N 8BSvrbWUoFVPuN8yLx0+rm/zE5Iboui3z2R4HPzMCkfEKaDNr8bM2tC1HuOUBvUE /f4Z4j6NBm8mZ5hptbrSbVo4X00JprEQMpia/lsx5KdXcqAt4gHtkRtAVo4qpd+Z 0E/9bZeHasRuHSNPHFSBXb5vWXhPfu2+XhdplapFoOqnxDFAi/57T7MwqiATT4Zb ZQhxDA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552521; x=1793157321; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=eM11e5ZliPQWh5X7FYojwl2XSBT/xIrvqwUdAV/Mepc=; b=PR2eSRlaR4GC03Z53r/EaQw/W77GiY9DbN5J2GnTfJTnP1XgQEzjIvS27k6hcrFmdg UHAeAbymQukBRb31c0d4N+UWApDyAb9oBHK41CGQc/bQnnut+2V+DVE+bEbnrXPqikFd 7BMjTZZPyGxnYY4LKpo6MNR+APh7uRuO4Syj4kpi3JOeo3CF/WLhOKUAm+eHiFSt9ylt HsyT9cyunhdrwq+FZpSsaIv5EFw/wUt6RCeWESWo3QHG4SzL2f6pq0M1gBhvKeCg2/df NfbFezIm/O4i51gFUgLAFI2eOQimXmZs1XYSOHIKl0JbLwxxOfq6h1yaEadI49ujeKQ/ bCHw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552521; x=1793157321; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=eM11e5ZliPQWh5X7FYojwl2XSBT/xIrvqwUdAV/Mepc=; b=iSJrzS6vIhmEfONLnrFA8XKjqGYmfMBUmEhXvkrfyesHqVYqRfw1Nms4/GvdjgtPOk pqVCXxKDIRceQlMJvPhB9i/xaFWLN/Z6+Zkpd6glb2AyS+TQiY8RqEXJUmoGnNauqD8l 6Uuz8WnL49XomvsN9Bsa5LKM1K4iNQiv4ZErEHwL+snLmhQ+PRYhcZhzLRPx1mCyNSZ0 V48ed3Lsn+2BRDD/GHPlMbkyYLDLbQPQarYp0H9Ka/Zpd9PtTYzy1J768l28DuBc/W7S qyTaEC0TctTnsgSmYSpLu0HrH+cGPE0+Xg9rCNOtsNN66iUiBy8mZtjtPIvfefrt0OjK 4Ewg== X-Gm-Message-State: AFq9FYI2TPMw4dMO47SMf2ViqcfY6ue/rxQgLgQqr+Ub54WzdQkL3R0/ nXj52FbzYj0y10TLMOPwHLl1ap3TvHVoZVIXlpZ1rwRnwlKKhCzhyq0srzIcxW0uEGi+pHJ89qZ jMseQHDk7qhS41r5XW0Fr0l1veJh4Q5VB024Y5yAcP8gg7NFXx07H7+D7Ei19Ulq6Pdxo X-Gm-Gg: AYBFou3JgLxoY1/QsCHz63FGcVI31XK0UcQ+keetgdPMoW6y01+9P1qSsDne5JCmH0r UupyxTaJYJc6yK0gKfwM4x3EoB775F1Tm/ZGY4S9lyJblmehn4cbmsfS1l3X77rHvCiVHfuUT60 NLToCyUNwSot92DUYljvE6Ft0h3yyncVUNGGuRxQWLAlopl/v4zLxrhTZdAEAiYgDYn2RSleRzx AdckbUj1fYzNiFoV+f7aAXEd1SMANYzuxHDy918UJ9yMZfWYyCs7h2nk30z+9/7kZ5ZdjP8A9hh zwAPiSRXAjEsHqz7M9jLKJ9lN2YpS0dI8gCmcQk8DNv5D5TCQbFQx2Mn4RNgWMfug2fan0N9vSc bVNguvuPrP3P4Hg8xyxjLhyY6MbkuFkrqQbEhQ4P1 X-Received: by 2002:a05:620a:46a2:b0:93a:9ef5:d370 with SMTP id af79cd13be357-93f57ebdd8bmr230307385a.1.1792552520879; Tue, 20 Oct 2026 20:15:20 -0700 (PDT) X-Received: by 2002:a05:620a:46a2:b0:93a:9ef5:d370 with SMTP id af79cd13be357-93f57ebdd8bmr230304885a.1.1792552520358; Tue, 20 Oct 2026 20:15:20 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 09/33] target/hppa: Register CPUClass::exception_name() handler Date: Wed, 21 Oct 2026 05:13:42 +0200 Message-ID: <20261021031407.24862-10-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX/AlNP69JFb+5 BLrVe28v3xWjpSGpDbjf7XO5WYN/C/yb/IBn1X3zpLWiJNvCSH/6xw5YNMEx1k2n90DYuSrPgBB Aoi5VsStvPOkj2xrW819JLkQLDncimTE5Y3d8YAaWimR4EbK974ZnNvaW5TSy9uMuYGV0aMyHtu MVlJ2pavQPg0Fc8f8AhAc0jIAhYDQTBf66JxEsPx7W66m3XouMXjBItK6wYtPTI4EGCUCQDoJ9M w2X4eGKUfOBicrapoGT8PQLYgKgBTnMIymyfxZ+BQr6dtFSB7uXcjoY5F15WGvBptjdjmopMvDK SXKsjRCMdSGmxGgY3+9fneIl6OowjidKt3G656vrYlv9AItlsuzC8NVwQKaU7oLUkcsZ/z2FQKI mN5JNDwIVcHXigsMfm/jS5S1gMbNzy+hLwQQ7wahiDMQOoRcsa6XQb/HJ1TlKn7yKLVrYytaMvy //yGsKToDl4mcrdWvAg== X-Authority-Analysis: v=2.4 cv=TdsDJhQh c=1 sm=1 tr=0 ts=6ad82e4a cx=c_pps a=UgVkIMxJMSkC9lv97toC5g==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=YMgV9FUhrdKAYTUUvYB2:22 a=EUspDBNiAAAA:8 a=TU1vJ8DaLJqu0uKs2-8A:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=1HOtulTD9v-eNWfpl4qZ:22 X-Proofpoint-ORIG-GUID: lPp6ZozmMqTZ1CWr5HDfWITW68Hdxy-V X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX4fTvBv2GE1Eu MzA2nln7d3DFy2NrYR+ZB3m+2u2RI+/EsKbKCPqUZ2HPvvdaZUEkHXZr4XsjX5E9itnGAkpzfCF 46SQ4i4ODyyFXjClRklIADvnyAHyviA= X-Proofpoint-GUID: lPp6ZozmMqTZ1CWr5HDfWITW68Hdxy-V X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 adultscore=0 phishscore=0 impostorscore=0 spamscore=0 clxscore=1015 malwarescore=0 priorityscore=1501 lowpriorityscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.168.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792553081228158500 Factor hppa_exception_name() out of hppa_cpu_do_interrupt() and register it as the CPUClass::exception_name() handler, so the common exception logging can resolve HPPA exception codes to names. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/hppa/cpu.h | 2 + target/hppa/cpu.c | 1 + target/hppa/int_helper.c | 88 ++++++++++++++++++++-------------------- 3 files changed, 46 insertions(+), 45 deletions(-) diff --git a/target/hppa/cpu.h b/target/hppa/cpu.h index f453444d7f9..3914b3285c5 100644 --- a/target/hppa/cpu.h +++ b/target/hppa/cpu.h @@ -98,6 +98,8 @@ /* Emulated hardware TOC button */ #define EXCP_TOC 32 /* TOC =3D Transfer of control (NMI) */ =20 +const char *hppa_exception_name(int excp); + #define CPU_INTERRUPT_NMI CPU_INTERRUPT_TGT_EXT_3 /* TOC */ =20 /* Taken from Linux kernel: arch/parisc/include/asm/psw.h */ diff --git a/target/hppa/cpu.c b/target/hppa/cpu.c index 07b49e51326..81eef6a2fc7 100644 --- a/target/hppa/cpu.c +++ b/target/hppa/cpu.c @@ -305,6 +305,7 @@ static void hppa_cpu_class_init(ObjectClass *oc, const = void *data) &acc->parent_phases); =20 cc->class_by_name =3D hppa_cpu_class_by_name; + cc->exception_name =3D hppa_exception_name; cc->dump_state =3D hppa_cpu_dump_state; cc->set_pc =3D hppa_cpu_set_pc; cc->get_pc =3D hppa_cpu_get_pc; diff --git a/target/hppa/int_helper.c b/target/hppa/int_helper.c index 3e87b9a0011..e4297461d55 100644 --- a/target/hppa/int_helper.c +++ b/target/hppa/int_helper.c @@ -90,6 +90,46 @@ void HELPER(write_eirr)(CPUHPPAState *env, target_ulong = val) bql_unlock(); } =20 +const char *hppa_exception_name(int excp) +{ + static const char * const excp_names[] =3D { + [EXCP_HPMC] =3D "high priority machine check", + [EXCP_POWER_FAIL] =3D "power fail interrupt", + [EXCP_RC] =3D "recovery counter trap", + [EXCP_EXT_INTERRUPT] =3D "external interrupt", + [EXCP_LPMC] =3D "low priority machine check", + [EXCP_ITLB_MISS] =3D "instruction tlb miss fault", + [EXCP_IMP] =3D "instruction memory protection trap", + [EXCP_ILL] =3D "illegal instruction trap", + [EXCP_BREAK] =3D "break instruction trap", + [EXCP_PRIV_OPR] =3D "privileged operation trap", + [EXCP_PRIV_REG] =3D "privileged register trap", + [EXCP_OVERFLOW] =3D "overflow trap", + [EXCP_COND] =3D "conditional trap", + [EXCP_ASSIST] =3D "assist exception trap", + [EXCP_DTLB_MISS] =3D "data tlb miss fault", + [EXCP_NA_ITLB_MISS] =3D "non-access instruction tlb miss", + [EXCP_NA_DTLB_MISS] =3D "non-access data tlb miss", + [EXCP_DMP] =3D "data memory protection trap", + [EXCP_DMB] =3D "data memory break trap", + [EXCP_TLB_DIRTY] =3D "tlb dirty bit trap", + [EXCP_PAGE_REF] =3D "page reference trap", + [EXCP_ASSIST_EMU] =3D "assist emulation trap", + [EXCP_HPT] =3D "high-privilege transfer trap", + [EXCP_LPT] =3D "low-privilege transfer trap", + [EXCP_TB] =3D "taken branch trap", + [EXCP_DMAR] =3D "data memory access rights trap", + [EXCP_DMPI] =3D "data memory protection id trap", + [EXCP_UNALIGN] =3D "unaligned data reference trap", + [EXCP_PER_INTERRUPT] =3D "performance monitor interrupt", + [EXCP_SYSCALL] =3D "syscall", + [EXCP_SYSCALL_LWS] =3D "syscall-lws", + [EXCP_TOC] =3D "TOC (transfer of control)", + }; + + return ARRAY_ELEM_OR_NULL(excp_names, excp) ?: "unknown"; +} + void hppa_cpu_do_interrupt(CPUState *cs) { HPPACPU *cpu =3D HPPA_CPU(cs); @@ -235,53 +275,11 @@ void hppa_cpu_do_interrupt(CPUState *cs) } =20 if (qemu_loglevel_mask(CPU_LOG_INT)) { - static const char * const names[] =3D { - [EXCP_HPMC] =3D "high priority machine check", - [EXCP_POWER_FAIL] =3D "power fail interrupt", - [EXCP_RC] =3D "recovery counter trap", - [EXCP_EXT_INTERRUPT] =3D "external interrupt", - [EXCP_LPMC] =3D "low priority machine check", - [EXCP_ITLB_MISS] =3D "instruction tlb miss fault", - [EXCP_IMP] =3D "instruction memory protection trap", - [EXCP_ILL] =3D "illegal instruction trap", - [EXCP_BREAK] =3D "break instruction trap", - [EXCP_PRIV_OPR] =3D "privileged operation trap", - [EXCP_PRIV_REG] =3D "privileged register trap", - [EXCP_OVERFLOW] =3D "overflow trap", - [EXCP_COND] =3D "conditional trap", - [EXCP_ASSIST] =3D "assist exception trap", - [EXCP_DTLB_MISS] =3D "data tlb miss fault", - [EXCP_NA_ITLB_MISS] =3D "non-access instruction tlb miss", - [EXCP_NA_DTLB_MISS] =3D "non-access data tlb miss", - [EXCP_DMP] =3D "data memory protection trap", - [EXCP_DMB] =3D "data memory break trap", - [EXCP_TLB_DIRTY] =3D "tlb dirty bit trap", - [EXCP_PAGE_REF] =3D "page reference trap", - [EXCP_ASSIST_EMU] =3D "assist emulation trap", - [EXCP_HPT] =3D "high-privilege transfer trap", - [EXCP_LPT] =3D "low-privilege transfer trap", - [EXCP_TB] =3D "taken branch trap", - [EXCP_DMAR] =3D "data memory access rights trap", - [EXCP_DMPI] =3D "data memory protection id trap", - [EXCP_UNALIGN] =3D "unaligned data reference trap", - [EXCP_PER_INTERRUPT] =3D "performance monitor interrupt", - [EXCP_SYSCALL] =3D "syscall", - [EXCP_SYSCALL_LWS] =3D "syscall-lws", - [EXCP_TOC] =3D "TOC (transfer of control)", - }; - FILE *logfile =3D qemu_log_trylock(); if (logfile) { - const char *name =3D NULL; - - if (i >=3D 0 && i < ARRAY_SIZE(names)) { - name =3D names[i]; - } - if (name) { - fprintf(logfile, "INT: cpu %d %s\n", cs->cpu_index, name); - } else { - fprintf(logfile, "INT: cpu %d unknown %d\n", cs->cpu_index= , i); - } + const char *name =3D hppa_exception_name(i); + fprintf(logfile, "INT: cpu %d excp %d (%s)\n", + cs->cpu_index, i, name); hppa_cpu_dump_state(cs, logfile, 0); qemu_log_unlock(logfile); } --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552690; cv=none; d=zohomail.com; s=zohoarc; b=GCw432Jk1lhOa+kjNOjCej/2nhugK64nrFyCV42f24S47aceevqvNic4YMmZ4IYpMIflOJ8jwKkwJ/jKvvD8ZnlWGJGpFntK1Mtw+QtQRrAHqczvl4zixTcz4myNKtL4pM4WQrCRCSbEH7J1YmznKlje+7lEm1Hrk2Gwl9Y1Wow= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552690; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=YfBbz1ntshu7HTJMMRGMbG70uprZA/xRojya9HsrRiE=; b=WYpKVb0To0+vuSYI4KDi2ETBAJQH0Nw1CCvH5mghLET15m3s9ENdazRRvcwrkx5rHv86vfj7/Q+sUJl4hTdA6MbbtXrHGqe9CTBsJcAZO+Er/3n2mUWG/fXRDEsSDpVUpXq8huIW+fwnm/zoArgBfgW/C6OpcYlEy5gbbwKvens= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 179255269005653.56425899315377; Tue, 20 Oct 2026 20:18:10 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMoC-00045k-Sf; Tue, 20 Oct 2026 23:16:10 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMnp-0003Dp-H2 for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:15:47 -0400 Received: from mx0a-0031df01.pphosted.com ([205.220.168.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMnn-0002gw-Qg for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:15:45 -0400 Received: from pps.filterd (m0279864.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2FUX81957080 for ; Wed, 21 Oct 2026 03:15:31 GMT Received: from mail-qk1-f199.google.com (mail-qk1-f199.google.com [209.85.222.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4he7hvb6nq-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:15:30 +0000 (GMT) Received: by mail-qk1-f199.google.com with SMTP id af79cd13be357-93ce7a85f04so65047885a.0 for ; Tue, 20 Oct 2026 20:15:30 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e25827087sm2413903f8f.21.2026.10.20.20.15.26 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:15:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= YfBbz1ntshu7HTJMMRGMbG70uprZA/xRojya9HsrRiE=; b=eUxLcP346bJ9nyE0 VDN9BEmJ7YEBDJMyzf0p+DeAbNsyExWygj3eHLz3dNkEQCzE+KGce51T7+fFDVK1 MI9FKbNt9s1cc5wMueEV0+m8BWzwDmXoXXGFrUNdShf6ekumOxq4Z53QuvbgT2VG l8dW79OH90zxmFZThI8hIzqk5x7lJtywNBQaGriwh0lqCVwJi06R5HOlDd6k6m4Q Kl+pC07Q69qzUze7CrMVXeelArpxo6b4ggVBtHoecGb6lpUjXAnU5N9uOzAfsUFX U5RqagfPTlBA9gjDNIPQsc2oZKMGK0tpKpEEuw4uWzIP6vPm4EJU6j0ctxVNLizf ZS5wqQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552530; x=1793157330; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=YfBbz1ntshu7HTJMMRGMbG70uprZA/xRojya9HsrRiE=; b=J8AzBIPwwVFCjbOTnwbxLJMel3vWm30fsS3vaBOjc5Kw0DvXFC/md9Pv4RAw7F2HCQ CE5/Y0oJI0ZU2V2/VSBPcXnbfNMCoGInwY2CsfcVNh10+FDYytHckb8NiSUxJUtP27dO zqoHZpRwvBMe5z6LuIiTQw6QVHR9enJF92tKG14TiM5NSx6kHzCoNY3RALWYFI3OEr9a Me8xQj/sR1AMa+pCY0BG41gW7j4gXvRU2BIu8HeKw15+LKtbgKKXdD6M57eWMi6l32CM 8734dB3VQ5oPAA4UqJdHHxvO/alrA+pJlOTedYg/j971ltWtqmySz2zFf1aGC5141gTB Irhg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552530; x=1793157330; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=YfBbz1ntshu7HTJMMRGMbG70uprZA/xRojya9HsrRiE=; b=r7JByKjMPzYWvElEqbitn5rIMaqiD0ximuD7bXpSemrWGs0/oo1nUcB4ZjqU5z2a2b E4dpyHb7+s+NOO8cPa1PkuPGS28xQibox/2QwnxH53s785aIssdT6wTnMHVSSZhNI9rt HphFncrk9k+QvDBElj/OFibTxgTenEoOPeNHF//+qIqjGd9cRfZ/7T5F7A0Cqd1V1aOf Nfs8xjLZBP7tTVz0jzGpYUMX/P/Q7QZFEkI8cpWtyeU+j1aIhZGdwv9xQnN5IDgjNG5s yYo9kl/5v66/82kkni0kLmVQN22xRV8TmzI49IqQnPBZzYMlCxswDpG0uWj/91Vo/fgL euHA== X-Gm-Message-State: AFq9FYLyofTpPQWzbWAoSEZF4O4tDLeVYjz27ILmxi2a06nYcBUEEf5H ay4DEIN5Hy5oaOhsDtvcVekhOYBFB4zVSm7rvMfzBg6NbOBVtdHFipAHhVVxpzUZa20VGVThND3 UoTvdPEFoaifGuo6aq1qs30GPrQz8hXoLvZedABd3nyjR2EXjptPekp13dDX5iz6ZXAq6 X-Gm-Gg: AYBFou20MoU5VJx4BoMs5ixdIvt4PjmM76rYyaO0fsKllxN0vpCpzg65zodC71t99fS orkEoP827XuJWnQcRa9/dzEXaCYXoRKekE+HIk8EWiP24lYP4Ek8Dwk0egtqqDI7qpcFj6w7pjX Go1oemG6Kkhfm9FEjXSZ0ToSlaGHVnw+Q1TjVRr14ZaaOk+nMIv/iQR16LdGB/PSPByOH/Hg+ku nHA7EBulsqUZKIxYVaTTeovgSwsRRMZ9D0Y6hd0Kn/DaHtgxNKm/WgWDnhxmavSpQ+mgs4pPK0G 36BEaXwnlfTW10xJtTk3iRaRciebhWBnchZVr7I8s51iikDD7U5nh01LdTTxuKviD8CUNeJmDeS l85dGlzypZUJg6MHA5YOAQE5Pv0h+Akbj4OoBFrjY X-Received: by 2002:a05:620a:3703:b0:93f:1dbf:6cfc with SMTP id af79cd13be357-93f57fb8621mr221123485a.36.1792552529796; Tue, 20 Oct 2026 20:15:29 -0700 (PDT) X-Received: by 2002:a05:620a:3703:b0:93f:1dbf:6cfc with SMTP id af79cd13be357-93f57fb8621mr221121585a.36.1792552529285; Tue, 20 Oct 2026 20:15:29 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 10/33] target/i386: Replace magic value by proper EXCP0E_PAGE definition Date: Wed, 21 Oct 2026 05:13:43 +0200 Message-ID: <20261021031407.24862-11-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXzaVJsjcqDSpl mONt789KXPbdhQpLypTayb+kD3NX5YDFkz70JmoARRKzyGmANZL1Q44nM9fVuJglR9TheQ++BL+ yicSkHLiY2n1+JbcGiI1pIWt7VRQiGluvTiVA4qnxX7H87fGnWdkVXwfLao8MuSeNY77WkndfES vVTMGLz6ezPo3WJuEbISF8pgAbLDtpl1ZIA7h2wfYXcq51kbHqtmKjK1nII9ddq4yei6LE/pO8V JuwjO+CKwSrDvNGKa+8YHR96DcuBn8Xw+NpBg4Fw8u24EMkILZ1eeMpkgKpappsMtIu45F0JLsS +jgCeVMQj18j0n03O+zxOS5r1fnZwxxxkRV9sXEE9GHBlwm728j3vP82enxTSVc9cxcWlqWbY3t vKcRvEZCtgpaE8MH/uvOZOlSykxtNzDHILkSxSvWB0D+7XscUPj3wA9cRDwCNoDkovePc4ms+el dcpucp6svf7QTtzFj8w== X-Proofpoint-ORIG-GUID: iB20HoyktRpKEQPyzQdSD7mzl0MGJYB8 X-Proofpoint-GUID: iB20HoyktRpKEQPyzQdSD7mzl0MGJYB8 X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX0v5x1G6qNCYt 6Me7DVdh2J03RyZfrD1IYm9zOsFxsg96RrGD8SJ4Dkndi+oYZojNclk4CVcTicoC8Vf//NJ3s1V PiNHwmQ1nn0WMbj8YY3hfLHY2weoKnY= X-Authority-Analysis: v=2.4 cv=NppE4MdJ c=1 sm=1 tr=0 ts=6ad82e52 cx=c_pps a=HLyN3IcIa5EE8TELMZ618Q==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=DJpcGTmdVt4CTyJn9g5Z:22 a=EUspDBNiAAAA:8 a=2cblKrENZZ9LBr9VnxsA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=bTQJ7kPSJx9SKPbeHEYW:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 malwarescore=0 spamscore=0 priorityscore=1501 clxscore=1015 suspectscore=0 phishscore=0 lowpriorityscore=0 adultscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.168.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552691422158500 No functional change: EXCP0E_PAGE is the 0x0e page-fault vector. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/i386/tcg/seg_helper.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/i386/tcg/seg_helper.c b/target/i386/tcg/seg_helper.c index cad19f9ca6b..c89d97e022b 100644 --- a/target/i386/tcg/seg_helper.c +++ b/target/i386/tcg/seg_helper.c @@ -1215,7 +1215,7 @@ void do_interrupt_all(X86CPU *cpu, int intno, int is_= int, env->segs[R_CS].selector, env->eip, (int)env->segs[R_CS].base + env->eip, env->segs[R_SS].selector, env->regs[R_ESP]); - if (intno =3D=3D 0x0e) { + if (intno =3D=3D EXCP0E_PAGE) { qemu_log(" CR2=3D" TARGET_FMT_lx, env->cr[2]); } else { qemu_log(" env->regs[R_EAX]=3D" TARGET_FMT_lx, env->regs[R= _EAX]); --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552723; cv=none; d=zohomail.com; s=zohoarc; b=V83YL0zMn6xzOLI2seyqxCa4r207owXKdWhSjoOVK5tvDyS8WGog7cGscXPp1qQDUMd0EaJ4wYxoAc11QCuUU9hMSs1B2M8e8IYr0SNTIusAYQ/bemOomFS4PXA6vihEtDy0rteOn+wDpYdwrQilJPDGxNDVsBWmjht1UeNSF3I= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552723; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Pne2na9EiRGo89DzaGA0yc8Yo320EUQ8tAj2hdi/Z74=; b=QQoshlejwwfk9CyyWyDdSx4aE5GQxadMs2LznfeUBzHLaFmjflRywjFpUrSRjQmc64LT20Zl5zr7NerTuDEWYW2RIjgk1TkotHRL5QugcmL+wkEQxsKYYGnLbPHH20s1ZnkavvOlXeNtUnm3sKs1P9uBbJKMefbW3p3CRVfd+KE= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552723442165.50079279539239; Tue, 20 Oct 2026 20:18:43 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMpp-0006B2-7n; Tue, 20 Oct 2026 23:17:49 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMo4-0003jm-Bv for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:16:00 -0400 Received: from mx0a-0031df01.pphosted.com ([205.220.168.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMnx-0002iA-SZ for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:15:59 -0400 Received: from pps.filterd (m0279865.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2EtV7299884 for ; Wed, 21 Oct 2026 03:15:38 GMT Received: from mail-qk1-f197.google.com (mail-qk1-f197.google.com [209.85.222.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4heda4spv6-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:15:37 +0000 (GMT) Received: by mail-qk1-f197.google.com with SMTP id af79cd13be357-93f13c143c8so57057585a.3 for ; Tue, 20 Oct 2026 20:15:37 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4a1f2d85a9bsm131107235e9.15.2026.10.20.20.15.35 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:15:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= Pne2na9EiRGo89DzaGA0yc8Yo320EUQ8tAj2hdi/Z74=; b=mcq1oHhSHRpUAtUC CWSjNh0nMOrMm2XiQIolp3yanTV8C2qMBOeUBpPVj4j9KL6WQaTzhUVq0LRchMGh 02EaRWL0LGtOd2AawduJIoYG6tRtA2CqaJagZiZtn9jxNgZkUp0tjC6QJ+nYJ7oL TAYJbm8PzmJUeX9/gevkdP7puq6Ej2icrs8lwwvZvrUn3aoo8zsRykVRq44EQQN2 DaKNpjvRaGMF3f1eyj4z8r0POLGOaDsVDA6Rq3LO+autZ9AK+YOMoePwAQ1HLr1/ 43Y+21JpiQOzzpBbUZBOaVaW0wlnwnHTwwnPPJQToA23T5zIGrLRouPtDxOl0wpD 0FuOIQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552537; x=1793157337; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=Pne2na9EiRGo89DzaGA0yc8Yo320EUQ8tAj2hdi/Z74=; b=QL/sk9Jroseb2gHkgFC/wbcdBCvuAT61fLq9zg1gOFb4Y19y2zFqPqSy59Pl27Ou5k +Cos39cfZYhoa3iz5uGOLfxSxsV6UQ9qU6cqwUURi3yF6413qJu9J3TGhPD7DanY9H0d g0BZYeS3OHUlcpsx3s0ELacx80aA1I6uPmwY8PcpnoLEFHKcknhzpnpC3KNX+S4JbsEj MYOBuOvqRA0RwQv5GVKQtNHqRs8cT4mPht6Db3zlVDkoBdW6BncLf5N1Fm50miwxhuvg QT4NMh9E1BoU+GdFCsvq7LUr8h+NXwH4+P8D+ac/idItKL04oAnZ/u9m0+AjGlH4tpIJ uedg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552537; x=1793157337; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=Pne2na9EiRGo89DzaGA0yc8Yo320EUQ8tAj2hdi/Z74=; b=wpvKRj/sihqZX8KkrlN4M6O4aWscXOhwlRhd9y8GapalieN/sDDyop63L1ketO5qhg GMt4ux5Js4cNxl4k14gVY2/LMtKB5YbPWQC929lWTAf/6hY5xyzwky84/TnwPmngYcc9 llNTVUYjD+Ypqd0oKZTILAoz+QFQGCwu9cBOsOXfR/fZ/qhXMXn/txxHEr/SWV9XB6Qa LGI4ImXs6r4FtBYhhcqL7S5j6rXxsMpnsgdO08gWBTOfAsO0uBtkXxoDx43PdLlKyMaz F0rhTmtrKOIKd5cUT7ugR5KAGkK4rhAvobiO2nfd8T4s0JcFOsIq3oO6RjC1Pp7rhl3L hifw== X-Gm-Message-State: AFq9FYJDBMCzalHBgZPbSDrivJp5UHgYD+KSiygTt6qVtxjIzRD6cRzy 5Efc+p8TPkHcypMi5lyhzDBORPHtyf6gXLDZbA3NMmNsxhBDw2yMU+I74lu/owl61UrUNDVkBAu TfszhQ9aY2t9xfWeO1vJO8gsdlVzQ4SsXCCbOmsNAs3Z16ZIesbEjsln/c3pCSLiP7o7G X-Gm-Gg: AYBFou0yvzND+MdlgN5Pf7NFeMib81Kp1vUHrH0kzm/JwClGqjwIZfxJzJKm2CQYWR7 6jNZAxxJeIl8Lc3pcPSv+pkGaVsiF2wRrCMtgOd6AcBi5dE+d/9CKUZ5Okq/Z1iGhmmczwlIuSf pxezfNmw5LOMSYT4rvNCYbRLuw7xdfvHUJ6X/F2gnDf/esfoogBrjre/sBKoDV0FOHVK7FVmdXy 8/93AqBJHbRjAtAyyREWjDII+CiKBcbT4mnouwesoFQVRVKOrTpABnI9iEPr0o8G0E9ntZt8/oK e4vaZi4brO7TNhg0QGm5b1+XU9TA/0XAkK1z76oKFMvXrJx6E+3XdBwEZKZRW22dNB7IYcOswZO zU30AgLSw/OsilcfrVpYFG4Au4vcufguIV+HSMpD2 X-Received: by 2002:a05:620a:31a9:b0:93a:1048:7d2f with SMTP id af79cd13be357-93f57f23fafmr213800285a.41.1792552536930; Tue, 20 Oct 2026 20:15:36 -0700 (PDT) X-Received: by 2002:a05:620a:31a9:b0:93a:1048:7d2f with SMTP id af79cd13be357-93f57f23fafmr213797985a.41.1792552536478; Tue, 20 Oct 2026 20:15:36 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 11/33] target/i386: Implement and register CPUClass::exception_name() Date: Wed, 21 Oct 2026 05:13:44 +0200 Message-ID: <20261021031407.24862-12-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-ORIG-GUID: _EJSy5hZKsVS_tTPfU3FklFutGTRzOh3 X-Proofpoint-GUID: _EJSy5hZKsVS_tTPfU3FklFutGTRzOh3 X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX/+AFmqL7wyPc w/FWDCFFUfwGI/F+e1BNYDFNSnDA7yce9JPU3VoqTIfbxMQsCXiOs5+nn45/9Jv6hFmU0aknNFE JZ0S9Gv1WCOZbSl6yQmA82P8aJItUI0= X-Authority-Analysis: v=2.4 cv=R7aWitRX c=1 sm=1 tr=0 ts=6ad82e5a cx=c_pps a=50t2pK5VMbmlHzFWWp8p/g==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=Um2Pa8k9VHT-vaBCBUpS:22 a=EUspDBNiAAAA:8 a=v-QDjpm2zyCjAj2l2PQA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=IoWCM6iH3mJn3m4BftBB:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX+qzw/tkRm/rk NJmcAOT0wmgnMTV/pqMdHsEqpZTrN7Djb8Y5S4GaeM/tHKrZafD8jN6h4ezb94bmx6z54GKpi+u EpL7XyXMNccJl71+LhFYfOG2lNA5D2F+hMbZ2s9jvvW9e0jQcyLd1pN9rlXcMtpvYPVcNskzswG OpuHgF2N/UzuIMyfKhTJFaW7qDJ3WZR6L6a9bI5DpT42f1RJwgG/HbbnDcuFoNRgd/puvBlvDMv RB0O8WiHtl3Z8lZdBiGW6phrzMyCN4Wf6d5EsikFQep2GL8/M6sTVwwL+qUa21jEA+18BA/bXsb 3d8vtc4A7GgendX3K/bi6OPvsjZLNluDr33NlRVczsr760FJ8h8WxyhCdtSfiZ2+VzxJ1DmIext dqGa9Htx8UBPBZdPyYZ6fK23rt2WbgVT/WAyEhq3IVU81a7RMC2XCaUorrdfEGNulh5rnZ+OErO FA2NoInr1gbuqcEVaVQ== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 adultscore=0 priorityscore=1501 lowpriorityscore=0 clxscore=1015 impostorscore=0 bulkscore=0 spamscore=0 suspectscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.168.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552724121158500 Implement x86_exception_name() and register it as the CPUClass::exception_name() handler, so the common exception logging can resolve X86 exception codes to names. Use the new helper in check_exception() and do_interrupt_all(). Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/i386/cpu.h | 2 ++ target/i386/cpu.c | 30 ++++++++++++++++++++++++++++++ target/i386/tcg/excp_helper.c | 5 +++-- target/i386/tcg/seg_helper.c | 6 ++++-- 4 files changed, 39 insertions(+), 4 deletions(-) diff --git a/target/i386/cpu.h b/target/i386/cpu.h index e7a88074c07..3945e90371b 100644 --- a/target/i386/cpu.h +++ b/target/i386/cpu.h @@ -1517,6 +1517,8 @@ uint64_t x86_cpu_get_supported_feature_word(X86CPU *c= pu, FeatureWord w); #define EXCP_SYSCALL 0x101 /* only for user emulation */ #define EXCP_VSYSCALL 0x102 /* only for user emulation */ =20 +const char *x86_exception_name(int excp); + /* i386-specific interrupt pending bits. */ #define CPU_INTERRUPT_POLL CPU_INTERRUPT_TGT_EXT_1 #define CPU_INTERRUPT_SMI CPU_INTERRUPT_TGT_EXT_2 diff --git a/target/i386/cpu.c b/target/i386/cpu.c index 5da80ade70e..1013f98b5a7 100644 --- a/target/i386/cpu.c +++ b/target/i386/cpu.c @@ -9372,6 +9372,35 @@ static bool cpuid_has_xsave_feature(CPUX86State *env= , const ExtSaveArea *esa) return false; } =20 +const char *x86_exception_name(int excp) +{ + static const char * const excp_names[] =3D { + [EXCP00_DIVZ] =3D "DIV#0", + [EXCP01_DB] =3D "DB", + [EXCP02_NMI] =3D "NMI", + [EXCP03_INT3] =3D "INT3", + [EXCP04_INTO] =3D "INTO", + [EXCP05_BOUND] =3D "BOUND", + [EXCP06_ILLOP] =3D "ILLOP", + [EXCP07_PREX] =3D "PREX", + [EXCP08_DBLE] =3D "DBLE", + [EXCP09_XERR] =3D "XERR", + [EXCP0A_TSS] =3D "TSS", + [EXCP0B_NOSEG] =3D "NOSEG", + [EXCP0C_STACK] =3D "STACK", + [EXCP0D_GPF] =3D "GPF", + [EXCP0E_PAGE] =3D "PAGE", + [EXCP10_COPR] =3D "COPR", + [EXCP11_ALGN] =3D "ALGN", + [EXCP12_MCHK] =3D "MCHK", + [EXCP_VMEXIT] =3D "VMEXIT", + [EXCP_SYSCALL] =3D "SYSCALL", + [EXCP_VSYSCALL] =3D "VSYSCALL", + }; + + return ARRAY_ELEM_OR_NULL(excp_names, excp) ?: "unknown"; +} + static void x86_cpu_reset_hold(Object *obj, ResetType type) { CPUState *cs =3D CPU(obj); @@ -10946,6 +10975,7 @@ static void x86_cpu_common_class_init(ObjectClass *= oc, const void *data) cc->reset_dump_flags =3D CPU_DUMP_FPU | CPU_DUMP_CCOP; =20 cc->class_by_name =3D x86_cpu_class_by_name; + cc->exception_name =3D x86_exception_name; cc->list_cpus =3D x86_cpu_list; cc->parse_features =3D x86_cpu_parse_featurestr; cc->dump_state =3D x86_cpu_dump_state; diff --git a/target/i386/tcg/excp_helper.c b/target/i386/tcg/excp_helper.c index d6410d6fc11..3a38366d866 100644 --- a/target/i386/tcg/excp_helper.c +++ b/target/i386/tcg/excp_helper.c @@ -56,8 +56,9 @@ static int check_exception(CPUX86State *env, int intno, i= nt *error_code, int second_contributory =3D intno =3D=3D 0 || (intno >=3D 10 && intno <=3D 13); =20 - qemu_log_mask(CPU_LOG_INT, "check_exception old: 0x%x new 0x%x\n", - env->old_exception, intno); + qemu_log_mask(CPU_LOG_INT, "check_exception old: 0x%x (%s) new 0x%x (%= s)\n", + env->old_exception, x86_exception_name(env->old_exception), + intno, x86_exception_name(intno)); =20 #if !defined(CONFIG_USER_ONLY) if (env->old_exception =3D=3D EXCP08_DBLE) { diff --git a/target/i386/tcg/seg_helper.c b/target/i386/tcg/seg_helper.c index c89d97e022b..006a2ee9cc3 100644 --- a/target/i386/tcg/seg_helper.c +++ b/target/i386/tcg/seg_helper.c @@ -1208,9 +1208,11 @@ void do_interrupt_all(X86CPU *cpu, int intno, int is= _int, if ((env->cr[0] & CR0_PE_MASK)) { static int count; =20 - qemu_log("%6d: v=3D%02x e=3D%04x i=3D%d cpl=3D%d IP=3D%04x:" T= ARGET_FMT_lx + qemu_log("%6d: v=3D%02x (%s) e=3D%04x i=3D%d" + " cpl=3D%d IP=3D%04x:" TARGET_FMT_lx " pc=3D" TARGET_FMT_lx " SP=3D%04x:" TARGET_FMT_lx, - count, intno, error_code, is_int, + count, intno, x86_exception_name(intno), + error_code, is_int, env->hflags & HF_CPL_MASK, env->segs[R_CS].selector, env->eip, (int)env->segs[R_CS].base + env->eip, --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552920; cv=none; d=zohomail.com; s=zohoarc; b=eKF7+5fUfcC4Uyd1BB3fXtPb2YraEj8XdW0p5XOeyII3U8y/kDt3tNcFfQgCoOm1lo1gBMjVbylK4sTUBojlzhzN/RDUvqn0qecmOknzsVgj09UOWtU5uRWLAw8K9Yovgwm4kkj6CGvaW0+TNnEyILGTgjcGyRW16kLvmxbJ7P8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552920; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=fUcHJFh/IdxFzNdGmkVOUtN+Hx71UUYFYuWgT/uaedQ=; b=aMEQ7yP5OP/jg9FwcUu7cVI0KQCGFn5j0i/bwtkpw969EGwYJC9ROhwL6UQnSUujat7MksFj/Ir8aarKNwnA0GuDGTkOEUGC/VlCpyk2CRCYyHOAEWEH1nBravkCYmI3FTPPGF6wtVETSVUBWes8qvS+X5wkOiBp6Ez7JcYAs7Y= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 179255292079156.366365205256784; Tue, 20 Oct 2026 20:22:00 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMpu-0006Xd-Le; Tue, 20 Oct 2026 23:17:54 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMo7-0003uy-87 for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:16:03 -0400 Received: from mx0a-0031df01.pphosted.com ([205.220.168.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMo3-0002ke-9n for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:16:02 -0400 Received: from pps.filterd (m0279862.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2F2N72898065 for ; Wed, 21 Oct 2026 03:15:47 GMT Received: from mail-qk1-f199.google.com (mail-qk1-f199.google.com [209.85.222.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4heda0hq98-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:15:47 +0000 (GMT) Received: by mail-qk1-f199.google.com with SMTP id af79cd13be357-93caf7856ffso75970185a.3 for ; Tue, 20 Oct 2026 20:15:46 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e25828ca3sm2417731f8f.25.2026.10.20.20.15.42 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:15:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= fUcHJFh/IdxFzNdGmkVOUtN+Hx71UUYFYuWgT/uaedQ=; b=bZ3EvuDbmNindqz6 chzsAECgcfOHWwQPfI54tiUmcVtzimJGN/q8wX0m5z0EyOYEynsBIdjVNZyBvt7q jOm8hojOKmqOL8iWy0q58grw0wa4E68+bWJ7qTgbfuOO1ba5pQw3g47B80s3zSGZ Tc0p5UbB0Bwc0gBSwBzyI9j0R1T4PoGMdBWXJ5SeDLpmY9QjfWbX04M8bI2w8noz Ihz5V8AOw8vvK6sRRX4sSTUcs7yzRkITB4ApIUhbEo85FCcxWsoutt6/Ewjk/BlE Knt0l/7VNGfGu9drJOJfn4nmtpHNr4BXbq5UK0gNzHwkVgZP2XR0D1tyzpd/poqx n0O+TA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552546; x=1793157346; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=fUcHJFh/IdxFzNdGmkVOUtN+Hx71UUYFYuWgT/uaedQ=; b=QkWh/i4djXnWHfIaVDoVSlJ9XklKiHZqf0PjS1Q1Owgd3NCfBrQ1qoZDjYOyHbcYTt +k0C7HigIYDBN69ef41ezxk2Xja3hUh3inD2l+xhwZViv4teTfh68NryoOzUv1DDBou1 NahcZzF4rjXsqkGwHjmvxwXumLYwTYsWlrfJqh7sHnp/AS9Zk52mhziFSXK2iLpIBlEq L6TZ9IeXS8hXPKwzc5Hvnpww7WYM5DZWK+7yrwwcnkuPP9mXCerzfjI62H9oEadQhD7B CeMYRKsF5da0hYqaIgNF+IuTubxJvrJAtaxHzjYSVROfljpN+WOaYtsLi6btA2FKFnfD +Q0w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552546; x=1793157346; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=fUcHJFh/IdxFzNdGmkVOUtN+Hx71UUYFYuWgT/uaedQ=; b=ka11uYBLUy+6lC+hKUohqLZ8OkJ9FRU0Ojz6rtzE6jpmOOsGsG77f3wXsUrOeQQBzC gYp4e1pzEDdSwZ60vgQeoKBFBzeeLr4UOamTx8JAkznjCI+aE/p4XJ44M0xgFv2JanrR q+nn1sAU+xVbj9iKtwzGGTlCPEAxsP7JORYasQjgY5dNxwkHK+uF7m64NHtHN62izOs1 HK7qbTFqmTMSJZxR0nB5LNdiFDJ0/bOMbXxIr19cAHpkvGqwRHd1si1669QtBgXYVr0s BpttR0r+H1wjAl7o8mKyZFFYubct7al0Mev7zoqTwuU4EycyO2OTFO6K85eqO3McqggS 5jXA== X-Gm-Message-State: AFq9FYKPXiJ1ZqX5S9heL640V1JCUFEaYZ7Gd2TlaSxo6WHBqWz4T8xo B9iXIpllGbOc8rBvcBqkLmMxr3FvuX0MLr+4d1LHAk/y8iBJ4k6k6TtSR4+f3pCoZNnVXTiWA1Q 4bddF4jypM1wABB7xpwJZ8aMgqLbXEPZN+TBPaXT6uFa0/MZner1kXiGGRaMengaAu3fD X-Gm-Gg: AYBFou3XdqbpPAs6FdMaST+jWtUSC9pgVQOu8235De1nrLQZV3wlwTvrn81ZVPdIaq/ g2njv2junejVZxAfrnH64ttOLiysZ1KZg/9C57yafYA21Mpy4OvVS9zrcTcDBPk3yWyH+WgzV6v nMS0z+E7G8QHXKIvgqmPEkg4e3/ur1pzT59tDiMdQlvFQsrt/DYgtW1Wn4BlUdxqa0fCOtWImBr s23SlQMK4RP/scFpEyudP+x4pmV/3avNY6OAOgsJ6wBLkDIJSodJQZG6lL5xAHs894FcG+zvbUL CHkCM6ixQcbE9cP5nOtz3V0cGGzl5vTmrOFGAIQOw48pBOZwmh26hx3+OB4rJeaNlbW1WJ/jHCy 52/XWko6iCfhkiq/CvOi7Ouc02bps5vM8gUIh3kpb X-Received: by 2002:a05:620a:8390:b0:93f:3978:481a with SMTP id af79cd13be357-93f57f9d4acmr230277885a.51.1792552545993; Tue, 20 Oct 2026 20:15:45 -0700 (PDT) X-Received: by 2002:a05:620a:8390:b0:93f:3978:481a with SMTP id af79cd13be357-93f57f9d4acmr230275385a.51.1792552545534; Tue, 20 Oct 2026 20:15:45 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 12/33] target/loongarch: Register CPUClass::exception_name() handler Date: Wed, 21 Oct 2026 05:13:45 +0200 Message-ID: <20261021031407.24862-13-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXy2zbXguvWsRT I1cSeHOklDV+c7VHjVgz+E0At7J58BBjQN7uo7bKNC8BquxLM/fplOezZ7AyGf8/Hg0B/wG0aYP qZ+JTqcdGglR9XVTrIvo87O5eCCRpFdpiZWpNMWzzqKVa+9CvYV7bytWd4gna9w3ErYGsltiCWs slwd/xIJ0Ey1QwpP8RXHjki1eqqfuteQ4NnYVRniOtaqppDRb0fyLllweobJH130l82sJ0q+pxm mYmRDIwkeXF4lrcpjrGMPujscx7cRU1g5Wjfwfup3XmkOFyGazHv0detvuIugwUtvdu8meOK2se i0qNf7V9B2e5r8joWs2eXUHRkwDTO8e5/L0EEJJ15Gj/aCwbXV8zDLM9JvLs8Q5rALDZW8Ah2VR L7CqIaaZ+j04khRNFkzfTQ4cg1+tpGOeI9nWhSum9gr6/PP35OBHh58mu4BA/jJgAZnhcx9lOXG obAWAxCtMRWk7Qeqeqg== X-Proofpoint-ORIG-GUID: AnofWevqMegNtTyKqsKwEWxlYSTp9lLK X-Proofpoint-GUID: AnofWevqMegNtTyKqsKwEWxlYSTp9lLK X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX78mQXw/h7WGv EDKNWJo8ttpdNy1OUzX1n6HoqM0OChn39PwXe39KkNOtxfL22vRZ6XaDla3T6gRDXD2BlOPScZN xy5GaPlEUNJ6UfV+M22Qm/t6nOLNlMo= X-Authority-Analysis: v=2.4 cv=HL5WhYtv c=1 sm=1 tr=0 ts=6ad82e63 cx=c_pps a=HLyN3IcIa5EE8TELMZ618Q==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=_K5XuSEh1TEqbUxoQ0s3:22 a=EUspDBNiAAAA:8 a=nrwLMCx1wy8-tITOK3kA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=bTQJ7kPSJx9SKPbeHEYW:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 lowpriorityscore=0 adultscore=0 impostorscore=0 clxscore=1015 phishscore=0 suspectscore=0 bulkscore=0 malwarescore=0 spamscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.168.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552921995158500 Move loongarch_exception_name() out of tcg_cpu.c and expose the prototype so non-TCG code path can access it. Register it as the CPUClass::exception_name() handler, so the common exception logging can resolve LoongArch exception codes to names. Remove the qemu_log_mask() call in do_raise_exception() because it would duplicate the one in log_raise_exception(). Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Bibo Mao --- target/loongarch/internals.h | 2 ++ target/loongarch/cpu.c | 38 ++++++++++++++++++++++++++++ target/loongarch/tcg/tcg_cpu.c | 45 ---------------------------------- 3 files changed, 40 insertions(+), 45 deletions(-) diff --git a/target/loongarch/internals.h b/target/loongarch/internals.h index ff956823fd7..e7fed3afde5 100644 --- a/target/loongarch/internals.h +++ b/target/loongarch/internals.h @@ -42,6 +42,8 @@ bool loongarch_cpu_has_work(CPUState *cs); bool cpu_loongarch_hw_interrupts_pending(CPULoongArchState *env); #endif /* !CONFIG_USER_ONLY */ =20 +const char *loongarch_exception_name(int exception); + uint64_t read_fcc(CPULoongArchState *env); void write_fcc(CPULoongArchState *env, uint64_t val); =20 diff --git a/target/loongarch/cpu.c b/target/loongarch/cpu.c index 54c26998979..f275fa1eda6 100644 --- a/target/loongarch/cpu.c +++ b/target/loongarch/cpu.c @@ -835,6 +835,43 @@ static void loongarch_cpu_dump_state(CPUState *cs, FIL= E *f, int flags) } } =20 +static const struct { + int32_t exccode; + const char * const name; +} excp_names[] =3D { + {EXCCODE_INT, "Interrupt"}, + {EXCCODE_PIL, "Page invalid exception for load"}, + {EXCCODE_PIS, "Page invalid exception for store"}, + {EXCCODE_PIF, "Page invalid exception for fetch"}, + {EXCCODE_PME, "Page modified exception"}, + {EXCCODE_PNR, "Page Not Readable exception"}, + {EXCCODE_PNX, "Page Not Executable exception"}, + {EXCCODE_PPI, "Page Privilege error"}, + {EXCCODE_ADEF, "Address error for instruction fetch"}, + {EXCCODE_ADEM, "Address error for Memory access"}, + {EXCCODE_SYS, "Syscall"}, + {EXCCODE_BRK, "Break"}, + {EXCCODE_INE, "Instruction Non-Existent"}, + {EXCCODE_IPE, "Instruction privilege error"}, + {EXCCODE_FPD, "Floating Point Disabled"}, + {EXCCODE_FPE, "Floating Point Exception"}, + {EXCCODE_DBP, "Debug breakpoint"}, + {EXCCODE_BCE, "Bound Check Exception"}, + {EXCCODE_SXD, "128 bit vector instructions Disable exception"}, + {EXCCODE_ASXD, "256 bit vector instructions Disable exception"}, + {EXCP_HLT, "EXCP_HLT"}, +}; + +const char *loongarch_exception_name(int exception) +{ + for (size_t i =3D 0; i < ARRAY_SIZE(excp_names); i++) { + if (excp_names[i].exccode =3D=3D exception) { + return excp_names[i].name; + } + } + return "unknown"; +} + #ifndef CONFIG_USER_ONLY #include "hw/core/sysemu-cpu-ops.h" =20 @@ -875,6 +912,7 @@ static void loongarch_cpu_class_init(ObjectClass *c, co= nst void *data) &lacc->parent_phases); =20 cc->class_by_name =3D loongarch_cpu_class_by_name; + cc->exception_name =3D loongarch_exception_name; cc->dump_state =3D loongarch_cpu_dump_state; cc->set_pc =3D loongarch_cpu_set_pc; cc->get_pc =3D loongarch_cpu_get_pc; diff --git a/target/loongarch/tcg/tcg_cpu.c b/target/loongarch/tcg/tcg_cpu.c index 4b1d44a1644..933b9b2d221 100644 --- a/target/loongarch/tcg/tcg_cpu.c +++ b/target/loongarch/tcg/tcg_cpu.c @@ -18,57 +18,12 @@ #include "tcg_loongarch.h" #include "internals.h" =20 -struct TypeExcp { - int32_t exccode; - const char * const name; -}; - -static const struct TypeExcp excp_names[] =3D { - {EXCCODE_INT, "Interrupt"}, - {EXCCODE_PIL, "Page invalid exception for load"}, - {EXCCODE_PIS, "Page invalid exception for store"}, - {EXCCODE_PIF, "Page invalid exception for fetch"}, - {EXCCODE_PME, "Page modified exception"}, - {EXCCODE_PNR, "Page Not Readable exception"}, - {EXCCODE_PNX, "Page Not Executable exception"}, - {EXCCODE_PPI, "Page Privilege error"}, - {EXCCODE_ADEF, "Address error for instruction fetch"}, - {EXCCODE_ADEM, "Address error for Memory access"}, - {EXCCODE_SYS, "Syscall"}, - {EXCCODE_BRK, "Break"}, - {EXCCODE_INE, "Instruction Non-Existent"}, - {EXCCODE_IPE, "Instruction privilege error"}, - {EXCCODE_FPD, "Floating Point Disabled"}, - {EXCCODE_FPE, "Floating Point Exception"}, - {EXCCODE_DBP, "Debug breakpoint"}, - {EXCCODE_BCE, "Bound Check Exception"}, - {EXCCODE_SXD, "128 bit vector instructions Disable exception"}, - {EXCCODE_ASXD, "256 bit vector instructions Disable exception"}, - {EXCP_HLT, "EXCP_HLT"}, -}; - -static const char *loongarch_exception_name(int32_t exception) -{ - int i; - - for (i =3D 0; i < ARRAY_SIZE(excp_names); i++) { - if (excp_names[i].exccode =3D=3D exception) { - return excp_names[i].name; - } - } - return "Unknown"; -} - void G_NORETURN do_raise_exception(CPULoongArchState *env, uint32_t exception, uintptr_t pc) { CPUState *cs =3D env_cpu(env); =20 - qemu_log_mask(CPU_LOG_INT, "%s: exception: %d (%s)\n", - __func__, - exception, - loongarch_exception_name(exception)); cs->exception_index =3D exception; =20 cpu_loop_exit_restore(cs, pc); --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792553163; cv=none; d=zohomail.com; s=zohoarc; b=QqiddYDSg+7cNlLiAche5eYNe3MVYrwVs6jRejbFJKUnGAmGy9xV4U5HPaDYDvoEO2jU4gKRBkv9gz+rxo7QXipXeGBFVGT7yMR3XjhFNC0Y0wXaSKK9KL7sgRV0WezBZf5f+3UNCsoN7f079FucpTqa9XVxNR7RX8V3flbXvIM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792553163; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=SU/IMfYsvHyCND/D0agwHYqz/dXznICB+LmBjN4T+h8=; b=Fr3Qe71geg6LwPCV69zG/tPsDqBMZaoC4jGZHHSmDPU0LF6IZdnc5zGfB/7yzfizu8KmZhI+UWlsg5TuRMM13T4/utpJXjODpxIMB9bh/OoZcYoVHCfkFDI3T+qzU5KKM2drPPh/pLn6vJ0KSJdfWvUnAxj4afzcOxkVBLVEqAQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792553163700172.25134373137917; Tue, 20 Oct 2026 20:26:03 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMpr-0006Mw-5p; Tue, 20 Oct 2026 23:17:51 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMo5-0003rQ-S7 for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:16:02 -0400 Received: from mx0b-0031df01.pphosted.com ([205.220.180.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMo1-0002nS-Vm for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:16:01 -0400 Received: from pps.filterd (m0279872.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2FJ3L2393978 for ; Wed, 21 Oct 2026 03:15:54 GMT Received: from mail-qk1-f199.google.com (mail-qk1-f199.google.com [209.85.222.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4heeb99grd-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:15:54 +0000 (GMT) Received: by mail-qk1-f199.google.com with SMTP id af79cd13be357-93f37c94ceeso255628885a.1 for ; Tue, 20 Oct 2026 20:15:54 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e25840115sm2344008f8f.48.2026.10.20.20.15.51 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:15:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= SU/IMfYsvHyCND/D0agwHYqz/dXznICB+LmBjN4T+h8=; b=NBnfWMJINd+IyML8 ZWJvmtVkKTmVKHcfO/uV1CV0tHGv7DCFEXTAXulx9s5pjTtRZ9Lv6ffFisX30YS/ 93Cw/DBqNBoGpRa1fGeCDg5vEPBsHcN/1RlP58VNYho0Obi3YQ4WAK93PNIDfh5a Lfpul6aVNVrHIYRh3SY/mTJxWgbSh+lBmAqu41XdqkZ5vjF4BDeNqmdQHsn20op7 4GxatXzqYrPHDIIOE1XvFJU+6G7vwuHknPxlyrobTOU2606xBpODFxba9/Yew2EC XaxvevYYThqKqws5SwExW+5PVVkcEI+KCOfRXxcSkZkfemG0XIN9fErs/sR0O09H q6bbAg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552554; x=1793157354; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=SU/IMfYsvHyCND/D0agwHYqz/dXznICB+LmBjN4T+h8=; b=gYPeypDSfaf0gkgaz7pKergcMxWXiiAVUPCLnUtm1ODN76/x/anHG9Nt8JSM8v2Zn/ NhEcHMU5UqHkwETLXE8vcMSBEcgXLQj5oZa4lPbs1G+a2Gr2Jy8/hvi4qJ7PXP+9y5Nq HJsxFbgalm61/aEvqqbCwGVXjetQhqGVyzktqAfYDOkI3dj9g8phyD3f9ZdR2huRGwoa EzJWx3oMhihm4MuJWqRzJOm/gNDAskv/TxJcAHnvCoHWLjdZvXu85tS4jXzrysQTw27A zqZdtSCgKcQdIOAd0HjJj9HdD8+HS4YvcMWGQcD2n822S3xOxiyyQcvgaLNgPUHfpVXn gwjA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552554; x=1793157354; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=SU/IMfYsvHyCND/D0agwHYqz/dXznICB+LmBjN4T+h8=; b=QR3Tm+5GIj6hO41W6hD5/fl4Q4KJEvJrnDn06gkJ7tw4kAGv/EOoL4rK/B+ZGkeaNH +mtABG8V/9qVOG4H0UIVIzEFrj+yS0UQwO0PLQDmGkcN/5AWOG43NBpV1t+ouucqeq44 a7998UXk0vMMd7YP++wW3nSk87LjGOR6GfTyghu8KtFnZN5sDwNmPtM2FK13zEokg9av lgey4YuBX/dqCI7XRlLm2OKbI/8Sq/CMRIOaY8xdKb7Ow7ju1KXGR2sminKS3dTAVTDZ 8PMM7OZP6uBrwkZw87/blb/w+92DizSfQoc+w3lcoH+X/KjJOrWFIDd/Dy3Pvhyewv/H DlYw== X-Gm-Message-State: AFq9FYKVjOY+Vo4lzdUbY0lSWsykhD8BkPp3M1w4BGLprB9pUu00YKiP QzPflhJahX6fZciETcLB+f5qy+JokhzCigoe/kB9AuqinZOp5KYmZQyxUFpewwDwhzYgzntb5vD qUz4gpKhubtZImx0F5BTjqyjlWd/jvSkQEoYCwoxBxDdXMd6ZGODYb2+7snxpiLxvRzkU X-Gm-Gg: AYBFou0ZJW4Ot8uFlO90q+JF1z/asgSrq0vcxST9a02MRINdHIZpHIAqTBUqNzZ7C9L khu7v8WFlMDoJjlOONAwHKRbAjxuXnx3VlpZyrUiWG8aO0lAMwHqGxvbsaqrEEiYV5N0Fj8qhA0 QYY8WP6mRGruvIpjLqi4MbsOsGOHh4MBaODSgZy4I4Q8z2MaHTVW8mhogaowBIA4mKNxUv78SEl XNopR1pbkihNbiifHDqSYMDnIxs0ZY1X8n2JHZP34PBkWkGPJRCqw8jyumhY0tUmAXOgTF+ly2z 5HVVLafUL4jZvoBreS/2at5s/KwDJRLrNPAQ8Qg/xRjW0uHK6m2rRYBb4bWjWWKm80PIBnkXYp+ NHs6qlXrLzYdXxjKpX9UVwhgxBnCqtW70CHcNgtRu X-Received: by 2002:a05:620a:444b:b0:93c:d209:4ea1 with SMTP id af79cd13be357-93f4c67fe3cmr603051385a.24.1792552554007; Tue, 20 Oct 2026 20:15:54 -0700 (PDT) X-Received: by 2002:a05:620a:444b:b0:93c:d209:4ea1 with SMTP id af79cd13be357-93f4c67fe3cmr603049285a.24.1792552553544; Tue, 20 Oct 2026 20:15:53 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 13/33] target/m68k: Register CPUClass::exception_name() handler Date: Wed, 21 Oct 2026 05:13:46 +0200 Message-ID: <20261021031407.24862-14-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXwFZG5gOOkSx9 IM4aE0NWVqFgClDTMJFRL0KY6gMyr6zWC9oppCJJTGVJKEr+P0NqUEE7r8fKpmueQs+Rf7A9N3Z eZ8uQkBhJIlcDEzZ8r/CwqnV1zcc6E4= X-Proofpoint-GUID: TDWftoOnCA_wgITleqabMnImmD16flW0 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXy/qDg/BC1Iq/ DH10RGzlwB33OIzXJ0C7S/1eWVjzOb95verxRO57q45e3rsW+yR8uwbAw4AoQelI5xbe87jNGLM GvbRxbbaCL/97fL9oKVpuNisM3KLvSnBMpAIuSRRfnjZLP6n1EDFFhc4uNCxrY95rNRCjqYu8lT RWba3rr2Xl7FnOSXy3KUSEBYRIvSfdzeIW6xoM/1py4Ljjltrsc4xwosbo19hFzBJqkaNGgWkxE LrClsqM/LRGEH9x90Rdi9W04vUPgj5pkAvLoNNm5+JxJUXRbagbMkybN+vhlBfoWHyN809Mzgji EM1LIIZYgS6yycmRZmIxhkQqETXb6B5JS++1yZjUrx3HLASGH19gVNf9dlFqRrY4Cc1X/f7zCiV 7mmLkWbkBOhcE899os05PsTlmVSfw6eK8BraQplH1GyoFulZRA1J0dilcsztxnLCH9W5h/p09T7 oBLSH0azeTsKGNb7Wvw== X-Authority-Analysis: v=2.4 cv=R42WitRX c=1 sm=1 tr=0 ts=6ad82e6a cx=c_pps a=HLyN3IcIa5EE8TELMZ618Q==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=yx91gb_oNiZeI1HMLzn7:22 a=EUspDBNiAAAA:8 a=KgwFk9o9-AijF0zHnMMA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=bTQJ7kPSJx9SKPbeHEYW:22 X-Proofpoint-ORIG-GUID: TDWftoOnCA_wgITleqabMnImmD16flW0 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 lowpriorityscore=0 priorityscore=1501 suspectscore=0 spamscore=0 malwarescore=0 adultscore=0 clxscore=1015 impostorscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.180.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0b-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792553164760158500 Expose m68k_exception_name() prototype and register it as the CPUClass::exception_name() handler, so the common exception logging can resolve M68k exception codes to names. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/m68k/cpu.h | 2 ++ target/m68k/cpu.c | 1 + target/m68k/op_helper.c | 8 ++++++-- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/target/m68k/cpu.h b/target/m68k/cpu.h index 7cf3791108c..44b4afc41c6 100644 --- a/target/m68k/cpu.h +++ b/target/m68k/cpu.h @@ -69,6 +69,8 @@ #define EXCP_RTE 0x100 #define EXCP_SEMIHOSTING 0x101 =20 +const char *m68k_exception_name(int excp); + #define M68K_DTTR0 0 #define M68K_DTTR1 1 #define M68K_ITTR0 2 diff --git a/target/m68k/cpu.c b/target/m68k/cpu.c index 9b52ad5fc23..7d5dfd8e529 100644 --- a/target/m68k/cpu.c +++ b/target/m68k/cpu.c @@ -730,6 +730,7 @@ static void m68k_cpu_class_init(ObjectClass *c, const v= oid *data) &mcc->parent_phases); =20 cc->class_by_name =3D m68k_cpu_class_by_name; + cc->exception_name =3D m68k_exception_name; cc->dump_state =3D m68k_cpu_dump_state; cc->set_pc =3D m68k_cpu_set_pc; cc->get_pc =3D m68k_cpu_get_pc; diff --git a/target/m68k/op_helper.c b/target/m68k/op_helper.c index 38f7a689814..c600f83ddbf 100644 --- a/target/m68k/op_helper.c +++ b/target/m68k/op_helper.c @@ -80,9 +80,11 @@ throwaway: cpu_m68k_set_sr(env, sr); } =20 -static const char *m68k_exception_name(int index) +#endif /* !CONFIG_USER_ONLY */ + +const char *m68k_exception_name(int excp) { - switch (index) { + switch (excp) { case EXCP_ACCESS: return "Access Fault"; case EXCP_ADDRESS: @@ -185,6 +187,8 @@ static const char *m68k_exception_name(int index) return "Unassigned"; } =20 +#ifndef CONFIG_USER_ONLY + static void do_plugin_vcpu_interrupt_cb(CPUState *cs, uint64_t from) { switch (cs->exception_index) { --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552904; cv=none; d=zohomail.com; s=zohoarc; b=kTM/zot7/aj6G90Lk2jiWW3fEcIxkod8OEbNOUXOW5QNfVyez267esMU57LROpPjxaE54HPx+mjMmnJCPlI1Z93n4UcSdukGkuAMPkiWC1lpmkTcKcXKGQjPuV6uD4ruP4kifJodflyYUyYyhdTD5kpTSVM47jsYS6QPJ/y8xsI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552904; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=TC65Z4oOuG7Jg7V28F/HsbLF9AfJKPs6Sr9yiJLdycE=; b=Y9CaWvbTcUfFiXaaI5rQUU1YXmySa615JR3yjMbkNCtR5FTWkr1FJCPC0ldvhxwq1zqPNB7Oa9yiTteFvd5Xtc6/ffiAveODtoKUxcKejAnpBTUBhXiPxswa3yHF10ygCPDEIRdNNcaI0z276GYFmamNZG0508krw99vU3ftCbM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552904733891.8238829820644; Tue, 20 Oct 2026 20:21:44 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMpp-0006Dp-TM; Tue, 20 Oct 2026 23:17:50 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMoJ-0004Ie-HP for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:16:23 -0400 Received: from mx0b-0031df01.pphosted.com ([205.220.180.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMoG-0002pL-U7 for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:16:14 -0400 Received: from pps.filterd (m0279873.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2F3uJ3256728 for ; Wed, 21 Oct 2026 03:16:02 GMT Received: from mail-qk1-f200.google.com (mail-qk1-f200.google.com [209.85.222.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4hed9v1rqj-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:16:01 +0000 (GMT) Received: by mail-qk1-f200.google.com with SMTP id af79cd13be357-92e82060977so67028385a.1 for ; Tue, 20 Oct 2026 20:16:01 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4a1f2d41c8asm115894385e9.8.2026.10.20.20.15.59 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:16:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= TC65Z4oOuG7Jg7V28F/HsbLF9AfJKPs6Sr9yiJLdycE=; b=kTAJaVRoZBEy2tQZ F9YXJARIkfOM2iX+t4Qr2rRd0eWfP9jIes1aSsHD48cge2B71ucAK3fBpqVvZCDf SH3o2fKpxGYC667NS1oPulvt9/pcfVOdZy7ejBPg8DK/Zj7JddRw1J7zNQKsCAE7 1iOJSMzBEAnMfP2vKdZ9e26KvcbarMMjH64DSCr5cmr0P9EbdOnzeR2H+e8CniAu Puk3kQOz8VwPCTafOPZ3un+22XpaNDmVbkbrnY8J6HM434PJuQT1RuKStFpaFI7e xjvHWrYsSsh1kjler24swzEB+dTkViWxtaNk1eqJ+vWQF4gJBBDYm8keDlTHgzhG 1Ol8kw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552561; x=1793157361; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=TC65Z4oOuG7Jg7V28F/HsbLF9AfJKPs6Sr9yiJLdycE=; b=eiFauAsy04jB0bjEKsMSRDBcZ/JzyncYnSK0Ul8cMipEREJ7wj6cm1Z4hYZ1i0S/u/ kRgOsgOGFeRYwcm/s7D9nZWl18SAUWHG3r/5BypAdvA0ASbobOyN2XYiajXuE72FTPdO lq02tQVX00uQ7cZQQrGkwiIHWtI+vE2OG4Bac+EHxCZvhbruXtsEynsLSn3c9OR+HAOn p/bRHYgmTjFr5LzwmjouActZnul9Nrkc1/CBbzhgBKMqeampWLpBXiFRetHxcGik1+6s kRn9mPcnqP5nppn4Jr/9q41/K0A5OMRKaBRG5yCiKqTEqpYcOzYHff05ksdjbG5d9mU6 6yXw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552561; x=1793157361; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=TC65Z4oOuG7Jg7V28F/HsbLF9AfJKPs6Sr9yiJLdycE=; b=HTX+7iXR5gSE/5VVbUdt5r4uPKBlvpkTxmkZ4v+p9keeG1MxPjf0GX4bKiyb0WEIno 07n4rDVIJIxVNGXMVbZ51uPLuJpPuKmtd1yjTuhKuQgxtFt18Q9M1oXikwiQr2Fy1o5v GOcj+k6nYomhBCjPJ2w62snMWN0O9cjGkXTHJXkOHUGnPGAIokknZyX9G2kejtbHarR3 W6VfmAL1IS3jkaTsovwo3X3YvHINOBPUHs7V2GDS02cp/HwzRzOp208/l/PehwFSOVNw Xo1tn0zAyR/3AbPYQ8UwT/knWFx1WLn5Ccwh16eoi7Sornawkxwwqebri3vM6qae5csl zdLQ== X-Gm-Message-State: AFq9FYLhhe7Py1StSqlCDsvKe5Z2ZGfuJEufNFbwJh68SwU+8R6iA7ug Bftf5o+FiknnzVUUQOei6P5YKLm4Ex99mRwm/lffqIEgzUIwdM7X+rw4IIAAJtDmeqBkWGzZTRe eLiS0d1MmgNrjmjVnGmW/TgyNHb/ukxZSQkQft/QCVHgB1yKdWK2xoOOupCxSV7bdhxhv X-Gm-Gg: AYBFou29Ng2Cjl6e+QGpz94xK8Tn2WsUwNu+ndu/PiExUBWF0aNMq2A2v2eyFysWpp2 +vXbOiEJEXtY7kaZr1ijferS+DLvT/RkLvUxrna43jBqopouIxWAfEvnkHlCmPWrVkYvH/s6q2N D0QMZmwg1Q9Ic/dXZhTAyVmA92GENTfb7tUw5S+eT+/Z5+3Mx7JL3fUod78zU4n+2JnYKcgjHsN tTaPH7F7wQVSg6Ild8Zab0LrPT+W6q9a4c0VkY1HuBVFx4DP6qevTJb8pr/mp4gdGTdr00GLRUH JjtIYrqKXzj2bRhi+lTo4BU9UnycbgLkAov5qOGFNItI48Lj5wtPV6+uvJTSX+NCA3FSQfegMSQ j7cn3hsBITLiqPS60e2bQEREL0jboYKxCfhKK/46v X-Received: by 2002:a05:620a:298c:b0:93c:7861:675 with SMTP id af79cd13be357-93f4c195b61mr679498285a.1.1792552561211; Tue, 20 Oct 2026 20:16:01 -0700 (PDT) X-Received: by 2002:a05:620a:298c:b0:93c:7861:675 with SMTP id af79cd13be357-93f4c195b61mr679496085a.1.1792552560739; Tue, 20 Oct 2026 20:16:00 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 14/33] target/m68k: Use a static table in m68k_exception_name() Date: Wed, 21 Oct 2026 05:13:47 +0200 Message-ID: <20261021031407.24862-15-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXxc5rtaruL9rs PPYI2UsUZBOhigihoPsMexsxNuHDix4+nlBXf4w7Rx19WMBqmQz8UvjTEoCm3umfXEk2XfAdoUQ cfJAH9GhhZRWJfKUFO7KokLupHfsdZE= X-Proofpoint-ORIG-GUID: VfezB6FCiYLXYL9ADUoYLp0Jz3rH2878 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXwWUxGiXYEWDa tjjeH6ngdUjusfxvuiv3gbpXkr3TxmobigWrkiMfqosrNd+noZfowA24RlXjQAO1xgd/J6fK87X /gPf/8+I9iyuhRsdtyF63dTF6DMK+13Z5LRLF43X+lS6GZd7Knq7uAz18QKJ/PxJNU3GrG8WUe7 gjRJSeieh8vxWoTNFEiPjdRw171DokdZX56Q/doVIsmGGIdStghawISE5qaf4H8jz9lmMQgk0Ks 1SnQO5lCwRSJBIWWOvwiD9N7TUt/n8stULtuDeaZkPxRpu+BYvxlGtJKwFkJ13USSEWtK3B9jbZ j+M+3U3WwP6tQY5A1LsCqXF9ThkXXopf2wmDQZRuUIKVNj6skFlBYzqtIxEyZqjWjevfsmE6y8Z CUpIpBpOLdiGc/j5UL+sPXHeVn0VM1kwEC0SWX3zgW/y4M4QVwiBz5GHviFQ5YTA0Wk+WVKkk0e /tD97S5RO8PEkBVi9fg== X-Authority-Analysis: v=2.4 cv=I6zw19gg c=1 sm=1 tr=0 ts=6ad82e71 cx=c_pps a=hnmNkyzTK/kJ09Xio7VxxA==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=rJkE3RaqiGZ5pbrm-msn:22 a=EUspDBNiAAAA:8 a=LY5oDNgcubN9BrCfni0A:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=PEH46H7Ffwr30OY-TuGO:22 X-Proofpoint-GUID: VfezB6FCiYLXYL9ADUoYLp0Jz3rH2878 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 suspectscore=0 clxscore=1015 bulkscore=0 lowpriorityscore=0 impostorscore=0 spamscore=0 priorityscore=1501 malwarescore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.180.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0b-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552905679158500 Replace the switch statement with a static lookup table. Suggested-by: Pierrick Bouvier Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/m68k/op_helper.c | 152 ++++++++++++++-------------------------- 1 file changed, 53 insertions(+), 99 deletions(-) diff --git a/target/m68k/op_helper.c b/target/m68k/op_helper.c index c600f83ddbf..6a4eafddb31 100644 --- a/target/m68k/op_helper.c +++ b/target/m68k/op_helper.c @@ -84,107 +84,61 @@ throwaway: =20 const char *m68k_exception_name(int excp) { - switch (excp) { - case EXCP_ACCESS: - return "Access Fault"; - case EXCP_ADDRESS: - return "Address Error"; - case EXCP_ILLEGAL: - return "Illegal Instruction"; - case EXCP_DIV0: - return "Divide by Zero"; - case EXCP_CHK: - return "CHK/CHK2"; - case EXCP_TRAPCC: - return "FTRAPcc, TRAPcc, TRAPV"; - case EXCP_PRIVILEGE: - return "Privilege Violation"; - case EXCP_TRACE: - return "Trace"; - case EXCP_LINEA: - return "A-Line"; - case EXCP_LINEF: - return "F-Line"; - case EXCP_DEBEGBP: /* 68020/030 only */ - return "Copro Protocol Violation"; - case EXCP_FORMAT: - return "Format Error"; - case EXCP_UNINITIALIZED: - return "Uninitialized Interrupt"; - case EXCP_SPURIOUS: - return "Spurious Interrupt"; - case EXCP_INT_LEVEL_1: - return "Level 1 Interrupt"; - case EXCP_INT_LEVEL_1 + 1: - return "Level 2 Interrupt"; - case EXCP_INT_LEVEL_1 + 2: - return "Level 3 Interrupt"; - case EXCP_INT_LEVEL_1 + 3: - return "Level 4 Interrupt"; - case EXCP_INT_LEVEL_1 + 4: - return "Level 5 Interrupt"; - case EXCP_INT_LEVEL_1 + 5: - return "Level 6 Interrupt"; - case EXCP_INT_LEVEL_1 + 6: - return "Level 7 Interrupt"; - case EXCP_TRAP0: - return "TRAP #0"; - case EXCP_TRAP0 + 1: - return "TRAP #1"; - case EXCP_TRAP0 + 2: - return "TRAP #2"; - case EXCP_TRAP0 + 3: - return "TRAP #3"; - case EXCP_TRAP0 + 4: - return "TRAP #4"; - case EXCP_TRAP0 + 5: - return "TRAP #5"; - case EXCP_TRAP0 + 6: - return "TRAP #6"; - case EXCP_TRAP0 + 7: - return "TRAP #7"; - case EXCP_TRAP0 + 8: - return "TRAP #8"; - case EXCP_TRAP0 + 9: - return "TRAP #9"; - case EXCP_TRAP0 + 10: - return "TRAP #10"; - case EXCP_TRAP0 + 11: - return "TRAP #11"; - case EXCP_TRAP0 + 12: - return "TRAP #12"; - case EXCP_TRAP0 + 13: - return "TRAP #13"; - case EXCP_TRAP0 + 14: - return "TRAP #14"; - case EXCP_TRAP0 + 15: - return "TRAP #15"; - case EXCP_FP_BSUN: - return "FP Branch/Set on unordered condition"; - case EXCP_FP_INEX: - return "FP Inexact Result"; - case EXCP_FP_DZ: - return "FP Divide by Zero"; - case EXCP_FP_UNFL: - return "FP Underflow"; - case EXCP_FP_OPERR: - return "FP Operand Error"; - case EXCP_FP_OVFL: - return "FP Overflow"; - case EXCP_FP_SNAN: - return "FP Signaling NAN"; - case EXCP_FP_UNIMP: - return "FP Unimplemented Data Type"; - case EXCP_MMU_CONF: /* 68030/68851 only */ - return "MMU Configuration Error"; - case EXCP_MMU_ILLEGAL: /* 68851 only */ - return "MMU Illegal Operation"; - case EXCP_MMU_ACCESS: /* 68851 only */ - return "MMU Access Level Violation"; - case 64 ... 255: + static const char * const excp_names[] =3D { + [EXCP_ACCESS] =3D "Access Fault", + [EXCP_ADDRESS] =3D "Address Error", + [EXCP_ILLEGAL] =3D "Illegal Instruction", + [EXCP_DIV0] =3D "Divide by Zero", + [EXCP_CHK] =3D "CHK/CHK2", + [EXCP_TRAPCC] =3D "FTRAPcc, TRAPcc, TRAPV", + [EXCP_PRIVILEGE] =3D "Privilege Violation", + [EXCP_TRACE] =3D "Trace", + [EXCP_LINEA] =3D "A-Line", + [EXCP_LINEF] =3D "F-Line", + [EXCP_DEBEGBP] =3D "Copro Protocol Violation", /* 68020/0= 30 only */ + [EXCP_FORMAT] =3D "Format Error", + [EXCP_UNINITIALIZED] =3D "Uninitialized Interrupt", + [EXCP_SPURIOUS] =3D "Spurious Interrupt", + [EXCP_INT_LEVEL_1] =3D "Level 1 Interrupt", + [EXCP_INT_LEVEL_1 + 1] =3D "Level 2 Interrupt", + [EXCP_INT_LEVEL_1 + 2] =3D "Level 3 Interrupt", + [EXCP_INT_LEVEL_1 + 3] =3D "Level 4 Interrupt", + [EXCP_INT_LEVEL_1 + 4] =3D "Level 5 Interrupt", + [EXCP_INT_LEVEL_1 + 5] =3D "Level 6 Interrupt", + [EXCP_INT_LEVEL_1 + 6] =3D "Level 7 Interrupt", + [EXCP_TRAP0] =3D "TRAP #0", + [EXCP_TRAP0 + 1] =3D "TRAP #1", + [EXCP_TRAP0 + 2] =3D "TRAP #2", + [EXCP_TRAP0 + 3] =3D "TRAP #3", + [EXCP_TRAP0 + 4] =3D "TRAP #4", + [EXCP_TRAP0 + 5] =3D "TRAP #5", + [EXCP_TRAP0 + 6] =3D "TRAP #6", + [EXCP_TRAP0 + 7] =3D "TRAP #7", + [EXCP_TRAP0 + 8] =3D "TRAP #8", + [EXCP_TRAP0 + 9] =3D "TRAP #9", + [EXCP_TRAP0 + 10] =3D "TRAP #10", + [EXCP_TRAP0 + 11] =3D "TRAP #11", + [EXCP_TRAP0 + 12] =3D "TRAP #12", + [EXCP_TRAP0 + 13] =3D "TRAP #13", + [EXCP_TRAP0 + 14] =3D "TRAP #14", + [EXCP_TRAP0 + 15] =3D "TRAP #15", + [EXCP_FP_BSUN] =3D "FP Branch/Set on unordered condition", + [EXCP_FP_INEX] =3D "FP Inexact Result", + [EXCP_FP_DZ] =3D "FP Divide by Zero", + [EXCP_FP_UNFL] =3D "FP Underflow", + [EXCP_FP_OPERR] =3D "FP Operand Error", + [EXCP_FP_OVFL] =3D "FP Overflow", + [EXCP_FP_SNAN] =3D "FP Signaling NAN", + [EXCP_FP_UNIMP] =3D "FP Unimplemented Data Type", + [EXCP_MMU_CONF] =3D "MMU Configuration Error", /* 68030/68= 851 only */ + [EXCP_MMU_ILLEGAL] =3D "MMU Illegal Operation", /* 68851 only= */ + [EXCP_MMU_ACCESS] =3D "MMU Access Level Violation", /* 68851= only */ + }; + + if (excp >=3D 64 && excp <=3D 255) { return "User Defined Vector"; } - return "Unassigned"; + return ARRAY_ELEM_OR_NULL(excp_names, excp) ?: "Unassigned"; } =20 #ifndef CONFIG_USER_ONLY --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792553081; cv=none; d=zohomail.com; s=zohoarc; b=IZiuqGw92mJ38hVYYkAZKPB855qz681N86QUoa1xb1T4jnqTtn8dVlz2Sw23bfAXmF54LRe07AThC7y2COCNXyMA5m1zKmB7OqutMYKwh8rtqpmJ1GmrB1opAktfGRAK0TgCkTJEbYlDfbnOPJBpfmc4YEcod0cmKl8K8vr7GUQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792553081; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=2IbJWKdI1MQqjzY2GFXVwHaUDrLg2miYkaJxglFSvS8=; b=enaweHPiEmrfslwhpqS5pQgfCy8cgzcPe+VMsQgxo2fqgEfwYDQrhRwJIiF37VdxSDiVFuuA/9MjCfpfTT14CGTs0yJrMxPifyh+idEdozabCplefewgvenb4gXiGAz+NuFnYktUKPEhifCQLYH/BSt791Vj8Ub7Z8VutcEDtJk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792553081022778.0585048449985; Tue, 20 Oct 2026 20:24:41 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMpx-0006jO-SX; Tue, 20 Oct 2026 23:17:57 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMoT-0004Pd-1U for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:16:26 -0400 Received: from mx0b-0031df01.pphosted.com ([205.220.180.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMoP-0002qa-6j for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:16:24 -0400 Received: from pps.filterd (m0279872.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2FPQ42394187 for ; Wed, 21 Oct 2026 03:16:10 GMT Received: from mail-qk1-f197.google.com (mail-qk1-f197.google.com [209.85.222.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4heeb99gsh-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:16:09 +0000 (GMT) Received: by mail-qk1-f197.google.com with SMTP id af79cd13be357-93f2c0e6653so59833485a.1 for ; Tue, 20 Oct 2026 20:16:09 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e25828caesm2312844f8f.29.2026.10.20.20.16.06 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:16:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= 2IbJWKdI1MQqjzY2GFXVwHaUDrLg2miYkaJxglFSvS8=; b=DotVG5zx5RSMHcwP 1SGEbMnSZ/ZAZYCTncGTUBEXCsOgOuBmnVlQBBZWmFC7/jHE5FQ47Xik4gvWHRj8 LOhis4mKXGAqKAm2+8d1oGG336JMTiU53Y4cLShXazxgw22bXnpf4vu+Xs+dNiOF LYAPPD/7FYKTMR1v7MvfQnCmzU2PgJFu/DXxqwour9/019u2D6jDUHR8OPJOV84R 5s69s6nc4ECGwWoLPn1+qS1YilHY2OCdTIqkQD/fzESdvX6U3/SmliekhQE9qo9m p59qjGX5vtTgGHdr6yYykNOvHuJAo6EqotVkofM0xVOWH3xxrR6FxHJRIeE7Zrwd lJKfYg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552569; x=1793157369; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=2IbJWKdI1MQqjzY2GFXVwHaUDrLg2miYkaJxglFSvS8=; b=gIsKRSj9zsgsNP4i7XGj/DEAr8cKF7FXfNkfuyTXbJOsCFJsnYKL01CPt2Kbk164fK aLfTolvQa175P78irJUEG4fE6sAtZvYI/KAtdCoZe0r88dfgWImOJha3YhoJvC3yRGJD 2ic9FEjaWdkHCU6tr4ZJODIymK76sLem1+J6JPtvXR+FDVKBFuPw1rl/PNXpYEDPYPyS 8d+6LkhhHzRgx7UJo669RVS8ildMszMQFk7n5poPnb88fExoCay3Muw1L9B/Ip8oH3vE SBZIAyejeMYQyizPh1wETEC/Kodj2L2ic2aWW3ddz2q+09A/Nyuk0EVAfTClWkehsVZ9 K/1w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552569; x=1793157369; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=2IbJWKdI1MQqjzY2GFXVwHaUDrLg2miYkaJxglFSvS8=; b=GawXRa8ni4cBFhQa+83huRTbWfs29mpO9wzmvLJtqVbhpMms229I905Ahtw0YSm4gQ ZZmGtUEKXk/FqXwn6bfw4hht/jWmgqwwA1fRtdaaIkqbewTGa0s4LCzUaZm0O7Q6vZ3h QqhdPpEatg9TaHuFQWy2ZuZ7npsULJ218dyrt/XlxHZNj6V3pRuP4ttU+buJLUR5Etsv 4kv2cPc3lxSOBbh/uJuQ7EnvVI8kkj6ff28W5LsFFEB6F2jmQatAhDXpYCE716HzZsv2 AG1y+N6fkI21S/ZlLOeYOic0K/Bd7x1RKj5sSWtJJ4wNCcOR5JhPN/GY8gdXd08XZ74P K4Qg== X-Gm-Message-State: AFq9FYKRHCNqbRx6ChJKUzsXM1ezXTfFLZUrZvh/2EyArfvSMZjBD0A0 E3h67kPrWiBUnBT4LgmZXbdSCwYlTDlpsZPv65B5iFPqHjoTJ6cRdvS6tGZpIZwqJqrX5DeCl8r I8/HAWzboEsIWB+zzDdYFoWIlKB33KEa/qZRMN1pBlrUDPXj0A7bojChkZysYTm1KMUK2 X-Gm-Gg: AYBFou2y8KQ0Op85HK8BmqZJtC0Zb7IDf5f1vJLvYDNYp9HxylXK6V+olkswQj1Nghr wB2dsCMipFDVjOAL57o3ExnTT1f1GKcU5LYDkTtjKYO1jKZ9I+rKpzWMrCYL4tu3cEcbXPlewwe s0ZieCTglVwinMIxeqY9+Pbb7sfQWXWWF9ELKCMK6J18GR9iA8rE8kwxnkDlUDiahwMKjJLQQ7k W6iR1YFshHREPAKY4RR64rRsXIcrgSSzT+Y0Z2hihGbLHbnrZj68FDpPDSYAyGsh4TJ/kxhowzj guvuRk8cnCsdvEh7keF/x3Hr1GPQtiIkSQgUACuQOW93k+rxsedioUPQp+oCHcxP8CXorvZmN8p xef2rshOO2tKRpNorpN6i44/jWGCqRhc2jbMmqixs X-Received: by 2002:a05:620a:371a:b0:93e:c12c:f13d with SMTP id af79cd13be357-93f57f646b9mr213538085a.71.1792552569236; Tue, 20 Oct 2026 20:16:09 -0700 (PDT) X-Received: by 2002:a05:620a:371a:b0:93e:c12c:f13d with SMTP id af79cd13be357-93f57f646b9mr213536285a.71.1792552568813; Tue, 20 Oct 2026 20:16:08 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 15/33] target/microblaze: Implement and register CPUClass::exception_name() Date: Wed, 21 Oct 2026 05:13:48 +0200 Message-ID: <20261021031407.24862-16-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXzmq7Y5JaAhho lhZ7LKFCmQRk9NTpsoVrai97F03NKy9IOOk6dOifexbAWVLeefD4v6Z6FlxSH3bL0kBMTqTD16C OGvFpXXEunXqvbHUaS5tH6pzRLGZXoE= X-Proofpoint-GUID: ijKCIz8TxTLTkKwaab06OQGbq-3wsb92 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXzZ3crixC+XHe /oeweVb126Hu+WKNqUYvK/VoFeZjq2UsVOJpxyTy5OvN+XmLwNHX75/dy/d3XvBixyAM/2uB9jW JFp5FerFh38za+j3OinHjFD2hhZzR1fyqY1hB0p+OwvJVe8aCbonyIy5rsssqSN9Md6vezX+nc5 R5GqQHGwkjQ5mgya65hbNBLLN5coZ609KZfUeFxPH3ODkCu+XXYCBO8izcUm9oSvvN2A9TLF/JK M8YXT8rlS0uypDDoWGMQPZCoaR4DUwcxIJcfUiuFe0UXmMhaotXWt/eE8t4S1Ji/4Q50yXMygV5 z7RjStiREIwuykk+p0o7DpXMhSZjbyfrXJwmYVw6LTgsCUFw/jFC16AHWapaT7dMRusbvJZizpX zZCvRFDSPkyGYuEJXQ/sWzgNgg4OceQNkD04z/JF0WHEdLVa3W4gDaCtuHxpjiqLVLeOgkaMKFn eyjj1RdoDo9qaWKdaqQ== X-Authority-Analysis: v=2.4 cv=R42WitRX c=1 sm=1 tr=0 ts=6ad82e79 cx=c_pps a=50t2pK5VMbmlHzFWWp8p/g==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=yx91gb_oNiZeI1HMLzn7:22 a=EUspDBNiAAAA:8 a=_ZqrUhsafL45AmjA-XwA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=IoWCM6iH3mJn3m4BftBB:22 X-Proofpoint-ORIG-GUID: ijKCIz8TxTLTkKwaab06OQGbq-3wsb92 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 lowpriorityscore=0 priorityscore=1501 suspectscore=0 spamscore=0 malwarescore=0 adultscore=0 clxscore=1015 impostorscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.180.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0b-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792553083213158500 Implement microblaze_exception_name() and register it as the CPUClass::exception_name() handler, so the common exception logging can resolve MicroBlaze exception codes to names. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/microblaze/cpu.h | 2 ++ target/microblaze/cpu.c | 14 ++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/target/microblaze/cpu.h b/target/microblaze/cpu.h index b9602f72b94..fc2783693e3 100644 --- a/target/microblaze/cpu.h +++ b/target/microblaze/cpu.h @@ -36,6 +36,8 @@ typedef struct CPUArchState CPUMBState; #define EXCP_HW_BREAK 4 #define EXCP_HW_EXCP 5 =20 +const char *microblaze_exception_name(int excp); + /* MicroBlaze-specific interrupt pending bits. */ #define CPU_INTERRUPT_NMI CPU_INTERRUPT_TGT_EXT_3 =20 diff --git a/target/microblaze/cpu.c b/target/microblaze/cpu.c index 389a5124b12..f64488d0a08 100644 --- a/target/microblaze/cpu.c +++ b/target/microblaze/cpu.c @@ -79,6 +79,19 @@ static const struct { /* If no specific version gets selected, default to the following. */ #define DEFAULT_CPU_VERSION "10.0" =20 +const char *microblaze_exception_name(int excp) +{ + static const char * const excp_names[] =3D { + [EXCP_MMU] =3D "mmu", + [EXCP_IRQ] =3D "irq", + [EXCP_SYSCALL] =3D "syscall", + [EXCP_HW_BREAK] =3D "hw break", + [EXCP_HW_EXCP] =3D "hw excp", + }; + + return ARRAY_ELEM_OR_NULL(excp_names, excp) ?: "unknown"; +} + static void mb_cpu_set_pc(CPUState *cs, vaddr value) { MicroBlazeCPU *cpu =3D MICROBLAZE_CPU(cs); @@ -469,6 +482,7 @@ static void mb_cpu_class_init(ObjectClass *oc, const vo= id *data) &mcc->parent_phases); =20 cc->class_by_name =3D mb_cpu_class_by_name; + cc->exception_name =3D microblaze_exception_name; cc->dump_state =3D mb_cpu_dump_state; cc->set_pc =3D mb_cpu_set_pc; cc->get_pc =3D mb_cpu_get_pc; --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552938; cv=none; d=zohomail.com; s=zohoarc; b=eKeM7+75IBF2+EIpKMnlTPxhqXaHQ8Q6RtTW9UMeiU3Qod+Y4zXXJ0ROejML1OQRlyZ6V2UovlMp2FiuadKRjKk08Ms/moDC2fK9UJZ1yfNzzS/vUHhnLSWz+Rw+Ak/k7oPqC32SJfJV83oiUp3knNWtiaKMzzPS5flNyjU8dqY= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552938; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=3G8nt6Kxp+1K+nUkKwFyrDB7DqQ1S0+arugjesbD5Eo=; b=BXq6zJWAsxaSTdpzap63BhIb7EhkYEWREEk4DyZWy0k0LVBX20DJn9tMFMFzjkS15jwbQymNH7Gv190jCN4bQXVoiFX5kvs3nlTUl1Wup9zYXwYYxQK1B/RTpGpEbwLCjtJPsVVm5fkylu9fU7Ety06X1hOH+UqAAxYHYVQrbqA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552938359490.47597791571593; Tue, 20 Oct 2026 20:22:18 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMpz-0006m6-AW; Tue, 20 Oct 2026 23:17:59 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMoZ-0004T6-4Q for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:16:31 -0400 Received: from mx0b-0031df01.pphosted.com ([205.220.180.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMoW-0002t7-Pq for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:16:30 -0400 Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2Uwx13457250 for ; Wed, 21 Oct 2026 03:16:17 GMT Received: from mail-qk1-f199.google.com (mail-qk1-f199.google.com [209.85.222.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4heh5r0uah-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:16:17 +0000 (GMT) Received: by mail-qk1-f199.google.com with SMTP id af79cd13be357-93f33438950so69202785a.1 for ; Tue, 20 Oct 2026 20:16:17 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4a1fb698ce0sm45223085e9.2.2026.10.20.20.16.14 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:16:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= 3G8nt6Kxp+1K+nUkKwFyrDB7DqQ1S0+arugjesbD5Eo=; b=LwffojDgRNAD1Iru Tg36DQys9EktgcqQEYQFoyacmC1SH6okYbN1ljUFD0Gjg4P5msqGevcn8MBxjrX/ 2iwdTZEM9Q6J4pYqB//3s/vuZvk+fKKLX4Q2MChXxtnQuHocgPiKaktg8TySEXhF JzKkLLPOraUlx1N4Uqu3c1Z3yv/kO48ZZOvnP+spzc72cHBB89edyhEJMeMPjjF+ 160W88rSkHbgPSoOT7aESerOv7FuELqt4egVYLZyrt/KwGyqLDkiP3aD0xlx0uVI Fmjupciv62/n/HJiV0NZ4sbPW/Z2IqnNn40Dg3QV1CCvBXOWXG8mf7PD3cTb4U2P 0HhhzA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552576; x=1793157376; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=3G8nt6Kxp+1K+nUkKwFyrDB7DqQ1S0+arugjesbD5Eo=; b=JCaxgGjFZYDfDycLYL7ngfAFdwmIh6QxV+Sh7kvNSTQ0ujicg7Kmhfiumkq2AM+xb5 pr5PtftMrdjIxR9PCjeAKu217+LSupeyw3nLmgfrOOHFkJqqX97dQ9I4U1SM87mjVYxA r7G9MxpNzWqMyr46UAVAYC+KP/zSkrPYogsn+7Dd6M1X83uAjrkwyQIM9TqibavaNMOD eLhusY46wXGQndNOyjAV7LrATo+wrrGM0NjOZejoeYuKoMd/5P8x58GFW5mAWD2j2eMw G/A/4DDfHtv2XjpDUCmD6SrzP4IbtA1XdxZbda9qOKtaCD03krOZ6ZMBQayh8RuyL9Mz hsBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552576; x=1793157376; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=3G8nt6Kxp+1K+nUkKwFyrDB7DqQ1S0+arugjesbD5Eo=; b=2DZbv5vm3J+rBKJDe30G2miVXFq53/2DvAcCubQJ0Xuk4qJoze96GUWccHsZR1SQ+i z/1alqwJmE73SMEeE261eX7V6K3pT9/kPL2jTC3mZqOuVpTJAyO8EaLXtsWBlzT/D847 jwKGrQRbWDDJfBFGXEhMZYCGzoOKy0VKgm+LVpscYMq+t2SUXFa9nMkFWOmJRyRKf400 c/9Q5dVHa/Snn3QSadAOviA3rX0Sh4eQW8CMs6xjABjRgHItRttLC/t/Uj41USdt1d4X mhvzODnbg5+vZH8MQMHGvc1UkCsS2iRjYPIz8Nq6nQK17ecIblA6+CZyEiGEz7NnZWS8 R76Q== X-Gm-Message-State: AFq9FYK9Pr/vISXr+tFMbbPmULZxYHri5YPbp/0auDr0DwOknXvuhJmp aIWfv9IE9qwLv+el76TZ2lH1i5w6JZj0aSX/ZA60d6XXMIG/+tXFqQSr++jVwdEn4i8RSH3rpkE AOV64fH3tUcFUOR1Ta/l1VzYw47GOjEHLXDRnIqF07jGxoO+za2DXOWy4zEeIYcm4p6C1 X-Gm-Gg: AYBFou14II4IYdK3GYCEylNX8/TNncoRz7pmOLFVjNxA5ouXftUN+FJFvqrJoujwbqo 8HYZU9I37CNLDOyU26ZLZsJZrkpwdnY0bTP17splRJP1xlCGfFCA9TN9TDUBRWSV2NNURdqJRoN EZaMgjjo73Xu6/ayns20JnvxNvz+52wsJBtqFB/Wtcc9gKeMHCeex9y1tyIMZuopppmdM4ShZVe Ji4lNJLe4DPNXq4ErrVumtUI4aL7ZFn875zGswAcshmbRNRQlj60xmMcdBpMczuiUVEHhtRxVPq FhrWl5mML+0C+VrPNIg4cMZD1ID/IMwj0/grCZqGBEULwIijJn1NqJHT36PzrJu1NcqhpDenm6X fYjifT3NTL69Qp+Tdz0qlugMXZWwtr7KI6rNz2yr5 X-Received: by 2002:a05:620a:4508:b0:93e:920c:c00e with SMTP id af79cd13be357-93f57fa0e84mr223641285a.21.1792552576359; Tue, 20 Oct 2026 20:16:16 -0700 (PDT) X-Received: by 2002:a05:620a:4508:b0:93e:920c:c00e with SMTP id af79cd13be357-93f57fa0e84mr223637585a.21.1792552575919; Tue, 20 Oct 2026 20:16:15 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 16/33] target/mips: Remove unuseful EXCP_LAST definition Date: Wed, 21 Oct 2026 05:13:49 +0200 Message-ID: <20261021031407.24862-17-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Authority-Analysis: v=2.4 cv=aI5lOr9m c=1 sm=1 tr=0 ts=6ad82e81 cx=c_pps a=HLyN3IcIa5EE8TELMZ618Q==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=gowsoOTTUOVcmtlkKump:22 a=EUspDBNiAAAA:8 a=6PapexcjMrqzk0dJnxcA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=bTQJ7kPSJx9SKPbeHEYW:22 X-Proofpoint-ORIG-GUID: uwUdxTcCClwyae4VCtlygrUwyEjPTfO5 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX3JgR4AA64sYD MqAGczcaCAzPxKm0xjNaIbTgPKXVOkrGJ36VwAxM9FfoMBFbJlceZ2So94OKjtcaJBiUryW+QET AGMHMMj8rHjrRExQ1H7x+PcXezgsYmNqUMXTVFOSMCW3Ned4WkJaz9bZoT4fJQAjSPKs//Qh1JA zp64FJUU1R1X8W2v4luRFCBWPwizm8g5EsT72YuVE396kISoiXyqTv0JHaBpB8KyLmXbKLnMh8j D+fPxqYfsocwAugDh4H4BZdnkifw1M1AQhDGpNvrTPK7HmjkPLAKiTTq4+j8a255omditc3VVTb CSnaaXWPwHe8wRhPK2bMQAaVfs6xuPJxOjHKcoOUF3Pt67xcQjUI/PFOVZiRKpT2H2UMcgK1oZJ ClKtW3IrX+Xl8SSGwiqMgLFF5rkM1/b481QpOUiFBSbOrkDuwFgR8uLLI2B6pqFKjeeT8/98xpE a1Yuf9OrM54z6cu5FXg== X-Proofpoint-GUID: uwUdxTcCClwyae4VCtlygrUwyEjPTfO5 X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXwqJKFSt4B8ZA Br6FzIG3GReUNn8S2YES6Pf7ECPwotHweUnyUQKdeUzNbnCecW3/UQQ0l3QoK2HsxTjU4k1OYXJ YF4IpbWRw089u5+bENhNj3AIqlEuObE= X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 clxscore=1015 impostorscore=0 spamscore=0 bulkscore=0 malwarescore=0 suspectscore=0 adultscore=0 phishscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.180.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0b-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552940357158500 Check array boundary with ARRAY_SIZE() macro. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/mips/cpu.h | 2 -- target/mips/tcg/exception.c | 4 ++-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/target/mips/cpu.h b/target/mips/cpu.h index 32549791a18..5d8b78a70b8 100644 --- a/target/mips/cpu.h +++ b/target/mips/cpu.h @@ -1347,8 +1347,6 @@ enum { EXCP_TLBXI, EXCP_TLBRI, EXCP_SEMIHOST, - - EXCP_LAST =3D EXCP_SEMIHOST, }; =20 /* diff --git a/target/mips/tcg/exception.c b/target/mips/tcg/exception.c index 630b8b809fa..2f02f9be877 100644 --- a/target/mips/tcg/exception.c +++ b/target/mips/tcg/exception.c @@ -88,7 +88,7 @@ void mips_cpu_synchronize_from_tb(CPUState *cs, const Tra= nslationBlock *tb) env->hflags |=3D tb->flags & MIPS_HFLAG_BMASK; } =20 -static const char * const excp_names[EXCP_LAST + 1] =3D { +static const char * const excp_names[] =3D { [EXCP_RESET] =3D "reset", [EXCP_SRESET] =3D "soft reset", [EXCP_DSS] =3D "debug single step", @@ -131,7 +131,7 @@ static const char * const excp_names[EXCP_LAST + 1] =3D= { =20 const char *mips_exception_name(int32_t exception) { - if (exception < 0 || exception > EXCP_LAST) { + if (exception < 0 || exception >=3D ARRAY_SIZE(excp_names)) { return "unknown"; } return excp_names[exception]; --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552786; cv=none; d=zohomail.com; s=zohoarc; b=AbZrbcrAZubFDbprKGqV/Wpg+JUypOZ3GMtkYXB4nxqbzuyvAxn/P1kHLw8bHHmeOHfE4WjEtbVBg6kpn4ne1P0XP2C0kgRY9WXLkmcr8Jwwks3zVHITYEnyynTG++K8kD+2iTf6ssyUmo+TgI+hK96nNagl0k4boUzbJRy48hc= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552786; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=3uc/a/K1r0yU+DutArZzUhtCa5KlYLTfF7Yb5mQUvjc=; b=E/2uIXKYKI2hinArIQnfAJlxPQZnLJ4lblJUyHzY3z1SQkrnArt7yiJKFq0sXBW5NKpYkPOD6Cw1TQljykUs1xJ6lfbPqDWpbCPlVJdxhdYCmnJa8TvFC9XQ5tvB1RnGnFd1JFlSDxg+Vk8lW0no7j5un4y8Bf5gsNl1oW5FZRA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552786017349.74975281670663; Tue, 20 Oct 2026 20:19:46 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMpw-0006bs-5l; Tue, 20 Oct 2026 23:17:56 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMog-0004YL-Ua for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:16:46 -0400 Received: from mx0b-0031df01.pphosted.com ([205.220.180.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMoe-0002uB-KT for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:16:38 -0400 Received: from pps.filterd (m0279873.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2F3IZ3256691 for ; Wed, 21 Oct 2026 03:16:24 GMT Received: from mail-qk1-f200.google.com (mail-qk1-f200.google.com [209.85.222.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4hed9v1rs8-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:16:24 +0000 (GMT) Received: by mail-qk1-f200.google.com with SMTP id af79cd13be357-93f32050e72so100822585a.1 for ; Tue, 20 Oct 2026 20:16:24 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4a1f2c242dcsm111146565e9.0.2026.10.20.20.16.21 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:16:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= 3uc/a/K1r0yU+DutArZzUhtCa5KlYLTfF7Yb5mQUvjc=; b=dLqzpZYFkFx7/N4s aOuds2Oh2Apnv9MAAQw+bZ/7uQuS/y/zxTkp06Mj+p5e5i7Fksx0De9+w7u0WP+i 1ISR1LpmxntYB6iLpB6589WlF7pd4gfrFBoTtl1m3zmfPpqJtkMA4slesyBQNn2b 838AyxXmY6Ej1w4QMUtXKE+8p8eUohByWxoMyTs7fhgsNwcwLZDa62NqwMfo1y2X b1Mi62llJtfxuiKqZVoz/uhLsOJa9opcJe6sMP8E/xEOaOALxeVks3S2Mq1RxZn6 s717dIGjBZwhH1+hoFvjB/C+FWRmtNRq08At3WX+K+WymlArpkgghJVPFN9zJtrb nIUvJQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552584; x=1793157384; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=3uc/a/K1r0yU+DutArZzUhtCa5KlYLTfF7Yb5mQUvjc=; b=OvImmWozky9WE0rKMm2e5YvqWC4gl4F5rdNhqTXDgQBtLKod1r/Z7PFutzWg6LcICt 67gZo4MVIuKrxzGsEHYUOrU1vFb1QyQQncFRR6SKXk7mBfAi1kJpTy9B70DmoWiT4mKc fsf+Xa24BoaPYMo9B4LfHSZxTlwuZbEmYSiY4KXTxgQyrsFbZ14JT9e7c0Q9doZeW4Bg cyHrI++NheG7BbdqurGTkuhwebal+37HK/h0NkFKC+EOXesSfMyCFYt5ZQENBbFgoWFv fa6mynJikTmShxeB/KFvwUA7r3elv7iErOKlavgnk8EzdBL7+nq31sPXlO2fQFe/Kkzz 8kRA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552584; x=1793157384; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=3uc/a/K1r0yU+DutArZzUhtCa5KlYLTfF7Yb5mQUvjc=; b=vMqhOIaATMZehcRc6G9URprpNkaXNd9e8wX8yht/hM7BXVYOIn2L+3VlTvfggyaFDT ikDmwDAKfiBfURNyAi1kT4KLQUEkmdS3Egd0VXFgJc5vE4TaN4scRzhedh5+/rqszaVk nl+/p721aMhz+KE0vOy8Lt2BbASG2qcORhQZrBiy1i0ObaCGikQtx+du/KpQQX34lqjG ju69VlwxkM0WWrijbfvd4XEw4ClMhnWKy46l3Ju6Evb++Pi1+XVYgbrHte+KfS5Z3wLM TwaU4oe1Xv3SntGIaLMWJhGYpF/jQzIZnueFVW9Pcy+yHlLGmcn3KMJQSMCbe9w/Odc4 8Z/A== X-Gm-Message-State: AFq9FYJL4GeNCQ8Z/SaoG0MNxwVgV8Qq+UxkWysX1v812ZYa+2BN6lcS clYGkOFybOdNmf49IN/wmSj2peiNlWLApNNBYL4Z+mnRW0vK990cu4PVSDWNRn08wDYy2M4CpFH PImAiG7ca+H/S6xlKuycK7b0aOCk/UZomGmoIurfDCiLWc+hr287amEXjHwalkA7gUrgv X-Gm-Gg: AYBFou0XFvnlVdEVk27ol+ZDbOFlnzMDPSpL2NHkw28cce2GEdHD/Z3/LkkyL6WYOe0 ip5bhHoFvPplIk1hQ1G4455MfSGU6EVtAhzzR2u1cg4EbbDSEXLBUHyQx1kPPXPqX/kh7sqIZ6T 14ZvXdb0hLGQESGY7OFQFSX3W4hvqLIdHaC3lC8NrNHZXlkLZ8y4SCYvg/sOPxN4xtwOACxlpR3 YjhSWj1zV7eU2Tdlhc5vqB45L8vT40d9RqjcfN23WnXlcNL23rDRrm05vqf9z/dlJpqHB31nAZc T+xTqRJqYUfaUFgB0n5l6GZJUKKffEDbLIe2AAdiVT+VJrtr7hxrzSMKSB0ZT3q2WNAwXx0EKM0 Ny8Q6ScTprMcfeT2tUSA4uoJJJSE7GPcQMahCBfrs X-Received: by 2002:a05:620a:6087:b0:93f:1af1:7951 with SMTP id af79cd13be357-93f57f8ad29mr216490385a.66.1792552583592; Tue, 20 Oct 2026 20:16:23 -0700 (PDT) X-Received: by 2002:a05:620a:6087:b0:93f:1af1:7951 with SMTP id af79cd13be357-93f57f8ad29mr216487085a.66.1792552583114; Tue, 20 Oct 2026 20:16:23 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 17/33] target/mips: Register CPUClass::exception_name() handler Date: Wed, 21 Oct 2026 05:13:50 +0200 Message-ID: <20261021031407.24862-18-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX+J/IvmsVBoLH eKm1hXndBM/aao4h8qeB9A/r0Eh90SpdWrr0ZT8MGkBd9fP/GbSrHvShaqFRIzKr3X1ET1Dlt/W JwvxmdxWhNFHSUP7oHJADpBFSmRHTd8= X-Proofpoint-ORIG-GUID: y2H6CRYohJ84s5g28v3lmhDtB9vr2TJU X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXxSy0L9upVwgy 9oyTI66+QvTscVZRgrtJGAq9wKNytXi3ABxEY2EaRV4kX8aLsn2V2U+bMUs/j7LDj2yGzjU+snj foHCZD5fU32E9Z94lc53kAAcRY1Ce2iV20Eny7C+bm+9iGseHU4dyxju4bnfO75y2na30MOg4aJ vSclj5mUKzFoHk43Rc+ly4Fq0GQpuOm6gs4dx4jOj7bGB6lOoqqXLtpR5fjzr9TLSGOkLFjlOyg TSDUuhx/BcOoHL7FlLJU4tDIx25f6J3tc2OUTUk6xPzGtyH0psqbbRTR3CDWr8D7EnDev3IbFvu hm+oHSFM5qjHbxt6Hkw+g0DkAt6pGWTWpSJAKhkDiU/LWRmj0MPQR/bdHusTHv//F+ofwobU0GP OxTSamU5wDXDuZQ8YSyEdrO1JKcRLkzqO2PQHQVcDg2gS97Z10ynLwmiutOtHlOyGt/S9Z/o6yK H5ekAxnYnSb90sxFbCg== X-Authority-Analysis: v=2.4 cv=I6zw19gg c=1 sm=1 tr=0 ts=6ad82e88 cx=c_pps a=hnmNkyzTK/kJ09Xio7VxxA==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=rJkE3RaqiGZ5pbrm-msn:22 a=EUspDBNiAAAA:8 a=LEehXKFoqEHZ457G_xcA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=PEH46H7Ffwr30OY-TuGO:22 X-Proofpoint-GUID: y2H6CRYohJ84s5g28v3lmhDtB9vr2TJU X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 suspectscore=0 clxscore=1015 bulkscore=0 lowpriorityscore=0 impostorscore=0 spamscore=0 priorityscore=1501 malwarescore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.180.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0b-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552787294158500 Register mips_exception_name() as the CPUClass::exception_name() handler, so the common exception logging can resolve MIPS exception codes to names. Return "unknown" for missing array entries. Remove the qemu_log_mask() call in do_raise_exception_err() because it would duplicate the one in log_raise_exception(). Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/mips/cpu.h | 2 ++ target/mips/tcg/tcg-internal.h | 2 -- target/mips/cpu.c | 1 + target/mips/tcg/exception.c | 11 ++--------- 4 files changed, 5 insertions(+), 11 deletions(-) diff --git a/target/mips/cpu.h b/target/mips/cpu.h index 5d8b78a70b8..b080c5de4de 100644 --- a/target/mips/cpu.h +++ b/target/mips/cpu.h @@ -1349,6 +1349,8 @@ enum { EXCP_SEMIHOST, }; =20 +const char *mips_exception_name(int excp); + /* * This is an internally generated WAKE request line. * It is driven by the CPU itself. Raised when the MT diff --git a/target/mips/tcg/tcg-internal.h b/target/mips/tcg/tcg-internal.h index 950e6afc3f2..9f230e757d6 100644 --- a/target/mips/tcg/tcg-internal.h +++ b/target/mips/tcg/tcg-internal.h @@ -27,8 +27,6 @@ void mips_restore_state_to_opc(CPUState *cs, const TranslationBlock *tb, const uint64_t *data); =20 -const char *mips_exception_name(int32_t exception); - G_NORETURN void do_raise_exception_err(CPUMIPSState *env, uint32_t excepti= on, int error_code, uintptr_t pc); =20 diff --git a/target/mips/cpu.c b/target/mips/cpu.c index 0fead20d651..528d926d16c 100644 --- a/target/mips/cpu.c +++ b/target/mips/cpu.c @@ -742,6 +742,7 @@ static void mips_cpu_class_init(ObjectClass *c, const v= oid *data) &mcc->parent_phases); =20 cc->class_by_name =3D mips_cpu_class_by_name; + cc->exception_name =3D mips_exception_name; cc->dump_state =3D mips_cpu_dump_state; cc->set_pc =3D mips_cpu_set_pc; cc->get_pc =3D mips_cpu_get_pc; diff --git a/target/mips/tcg/exception.c b/target/mips/tcg/exception.c index 2f02f9be877..d2cd118518e 100644 --- a/target/mips/tcg/exception.c +++ b/target/mips/tcg/exception.c @@ -19,7 +19,6 @@ */ =20 #include "qemu/osdep.h" -#include "qemu/log.h" #include "cpu.h" #include "internal.h" #include "exec/helper-proto.h" @@ -129,12 +128,9 @@ static const char * const excp_names[] =3D { [EXCP_SEMIHOST] =3D "Semihosting", }; =20 -const char *mips_exception_name(int32_t exception) +const char *mips_exception_name(int excp) { - if (exception < 0 || exception >=3D ARRAY_SIZE(excp_names)) { - return "unknown"; - } - return excp_names[exception]; + return ARRAY_ELEM_OR_NULL(excp_names, excp) ?: "unknown"; } =20 void do_raise_exception_err(CPUMIPSState *env, uint32_t exception, @@ -142,9 +138,6 @@ void do_raise_exception_err(CPUMIPSState *env, uint32_t= exception, { CPUState *cs =3D env_cpu(env); =20 - qemu_log_mask(CPU_LOG_INT, "%s: %d (%s) %d\n", - __func__, exception, mips_exception_name(exception), - error_code); cs->exception_index =3D exception; env->error_code =3D error_code; =20 --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552711; cv=none; d=zohomail.com; s=zohoarc; b=feUTsmQJPI5RnsuFMm1iBVqR9ppB0cnGStA+G+Z1yvlb3XDAGP5P7uo1lC70rjJzaaES1AVVN2UC2Gczz4skOodnb4m/hy6DaaJf61cB3c8r6T71vRlDCDEnT5S1pcIiEkx5SfpDEZZ/jv7yBmaNDR1T/V/2Jl4IlS40jphodcM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552711; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=I3wILwR/tNUL0fg3Ffio7HD+ewVrrBD4+JMHrwT71Xw=; b=SOT2rkXX21eYdk8CNI7V2Z2+LmjW+kEAppvMhHYKcXz4R61qYkMx2TaNIcFrfwonDfiKsJF3PS7Xb4QeuLjCRG3lXJolpibHRC+42WWOXKkrM2rxzhnoakINhwh3nxZhbYfldK9iEfodVfnjAEYyg5DROi5f6TB9+F7XSERTxwY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552711838439.4568544129919; Tue, 20 Oct 2026 20:18:31 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMpy-0006kS-Aw; Tue, 20 Oct 2026 23:17:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMoq-0004dV-QH for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:16:51 -0400 Received: from mx0a-0031df01.pphosted.com ([205.220.168.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMom-0002vj-8q for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:16:47 -0400 Received: from pps.filterd (m0279862.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2F2So2898058 for ; Wed, 21 Oct 2026 03:16:33 GMT Received: from mail-qv1-f72.google.com (mail-qv1-f72.google.com [209.85.219.72]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4heda0hqat-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:16:32 +0000 (GMT) Received: by mail-qv1-f72.google.com with SMTP id 6a1803df08f44-91b4bf686ceso11025486d6.3 for ; Tue, 20 Oct 2026 20:16:32 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e254ef1bfsm2580046f8f.6.2026.10.20.20.16.29 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:16:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= I3wILwR/tNUL0fg3Ffio7HD+ewVrrBD4+JMHrwT71Xw=; b=Vqa8IO10MZLRu0lN V76WsPjMU/+nKAaFKZB23mDFrjNvFsp6qXiKeaJEBps501gJ+PAgbRQbMe6Fljgk tEKKEH9G9HI3cPMyL/cOo22nISJ2mjXzmF3VEPAfChXUO6QlE5Vrtz7O18SPzhT9 jmCYCK8HRAfqVZZiO3M6r+Lz9HWovTJclUuQhFLVr9UwJESCWX3HhZR4pI2wBHz8 uegyyS4XSzEX6DaMWzyhDPydroleXIlhdhMoLQfa1xRNpBDGhtew48RZp2D+48E+ 4xECIvfl3l+6Ri1++i86yfW14eungKEIkJ+UF/VyGUgPaSeHhglp7zjxsCiee5ha ZCDG0w== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552592; x=1793157392; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=I3wILwR/tNUL0fg3Ffio7HD+ewVrrBD4+JMHrwT71Xw=; b=QzvybeWH5cjAAP3OvDOHAsKJ3WRJ1brvYfKzA1JosHCkatplaCd65D/E91TslUAO1M a4BkaGqCErQ+Cbdz9zy/YQ2N5Q+8GFIt4ZOBxRkfEHl8mcZ2lfXYrayEe7gFIHXvSD7N 4MpnY1Hw7bc91tvSDc6BT/xNVjEYZQunQJ1QbwO+tdSugM59Ugqhi5/N7B+cvEag1CdO tGXIHsdhjDzt51d24FObVBSTROWwqRnZE9octT1HjGPNQbktwWjp03v3eHc5eLAhemm5 8k4637miGlA2HsD9if7BlxRMaaZDChiDZb+5hOGvSaolRVebk+G+IgCKuX/NxcDbYpcm rByQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552592; x=1793157392; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=I3wILwR/tNUL0fg3Ffio7HD+ewVrrBD4+JMHrwT71Xw=; b=dimpqqh/y7BY4NxNb6NH0xmZwOhDH+4bPzUq5HvlUCkIhU/iBYXyhFgMFIHaJdAxBQ 2kSP784KsyQynU5tIn/+CYGsDwZrR9fn3MH4NhrPBxbnQR6+7tMKWLuTxl6BT0NX2Sxg krIaow/zay2BaNOvi7ZDsgtRyQlMTF2KZtQeHRg/DE918JBSYyqQW5rIfJDS+viUqJIm OB7nvqJ0PpekRPOlAdnWjPgnqN/arddg5L/B+5Ylgs8iuiIMtIAyt31XZ6ZgrdTWCFHf b4BxjzIgEGB7lEWhral3ccvHBWk3mgF1f5SdbQ8K8J5RJwlKCwAOotMBkHKAz0zKmYcP X9uQ== X-Gm-Message-State: AFq9FYJ/A0GckoEnDb/pi5wIhPWjx4AbmHh3yJZ4R+fSBoYyEfB6d1Ma jP3mf1QZC21z+i5mltPeysPxY61xDev+UWOWoGRqL7yehsGGQ1O5oh7G+s4aSYWsGZCIVt9TRfh OmkC0PzYebGOIa6scoxm0BCdyioVX/Eb8BodMr0tNtg5qx0OBlklrmxUCa6rHOMfrN/rC X-Gm-Gg: AYBFou31Hz+Daa6Ui9HwKjElA5NzRB6NY9AE4MSidhZfq4ey0HMoCFVsbGEwsGptnMZ 1/ytr3e6K22mpcclwtB9ByVcUTBXsyLXHLcVZsEXb6J8zdWbUpaazG0JNLi32PQdHILkIQcMAIW ShLzaSnZ4K586KKoHY7YB1e15RiMWXRQx1F6xXdkXXeG8XBsOWvBMvTSq7QiwD58V9h4yfDJiyO Pmlu4/yBsGc+gGKdq221DdFzeiIq/+tXRjuMB0bVhGENjjOlhttsZ7OOO2FSXSfshtEzwdMp2zc xbAYXQCGEq6EauqYrRz7Ujqh/CjSRpSLn006zr55AB9iNRoFU6vS9ya0PFzlkGH0KpzXI9C2vl0 IdPhkyDK1fwZhjWpigzvxsV3C8sivL3//Zc1tXMJv X-Received: by 2002:a05:620a:178b:b0:93f:23ef:d6ad with SMTP id af79cd13be357-93f57d6fdbamr226925185a.0.1792552591795; Tue, 20 Oct 2026 20:16:31 -0700 (PDT) X-Received: by 2002:a05:620a:178b:b0:93f:23ef:d6ad with SMTP id af79cd13be357-93f57d6fdbamr226922785a.0.1792552591317; Tue, 20 Oct 2026 20:16:31 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 18/33] target/or1k: Register CPUClass::exception_name() handler Date: Wed, 21 Oct 2026 05:13:51 +0200 Message-ID: <20261021031407.24862-19-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX2/eOs5G0j36/ WLwJDIX12w+56Q8J49m/oadRR4DGfcpUQysrokkFbuFPdhHeFTWCiUe8FpOpRFGVZuc314qnuvx /iTOlwCdQjLwyzcQ0gbygLzSq7b3bfywNTFOdRfTwc9Qcjq91gIRwi0dVijfDmXPL1nnL1t8mzZ L22dMpTai0nXIRzTdeXhg3Lyj0p7M7VPKJtzWkaFm/rr/V/6ss6IvokQ+8+zGrzeOt367UnI5VI eaB6DrDYzA6ULNISKL8xzXtehX/UvLRlshSPqqjeEL2CRfog91KyymQ8UKCng1joci6lAilAA0n vsbvpxgjesmhWcA8M71H1r6EIFtMsbDzXGtZJyXnqo6+VNSIIriI5mTnaIpTao0wNpeC2zwmt4H 7b30rUbus1GQIaTJPTpOJOzTQuoxpubBG4FpLju+LvkFuG3vMOqWPQUJjhwn6TvMI8jtfUnbsjo MyLT8Mf2MiJ4jm+AkxQ== X-Proofpoint-ORIG-GUID: 9m0118fefKQBb8MxN3Uy33Usp9wfvoGs X-Proofpoint-GUID: 9m0118fefKQBb8MxN3Uy33Usp9wfvoGs X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX2tlUhvOffirj k5OjM62BHygX4R6kGGFqgNs2Fco8kFLbHH+Iyxo95FFtzdz/w//mli6fCaSJcXR8z3VQk7aGWUb Gp6yH4StG9mO8agB8e5sOKGhFUj7p/k= X-Authority-Analysis: v=2.4 cv=HL5WhYtv c=1 sm=1 tr=0 ts=6ad82e90 cx=c_pps a=7E5Bxpl4vBhpaufnMqZlrw==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=_K5XuSEh1TEqbUxoQ0s3:22 a=EUspDBNiAAAA:8 a=slxP8ohElPSaHwuvTCoA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=pJ04lnu7RYOZP9TFuWaZ:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 lowpriorityscore=0 adultscore=0 impostorscore=0 clxscore=1015 phishscore=0 suspectscore=0 bulkscore=0 malwarescore=0 spamscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.168.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552713911158500 Factor openrisc_excp_name() out of openrisc_cpu_do_interrupt() and register it as the CPUClass::exception_name() handler, so the common exception logging can resolve OpenRISC exception codes to names. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/or1k/cpu.h | 2 ++ target/or1k/cpu.c | 1 + target/or1k/exception.c | 21 +++++++++++++++++++++ target/or1k/interrupt.c | 19 +------------------ 4 files changed, 25 insertions(+), 18 deletions(-) diff --git a/target/or1k/cpu.h b/target/or1k/cpu.h index fc4387ce7ae..96ed1779fae 100644 --- a/target/or1k/cpu.h +++ b/target/or1k/cpu.h @@ -155,6 +155,8 @@ enum { EXCP_NR, }; =20 +const char *openrisc_excp_name(int excp); + /* Supervisor register */ enum { SR_SM =3D (1 << 0), diff --git a/target/or1k/cpu.c b/target/or1k/cpu.c index 66c00c0930c..e15f6bb5e71 100644 --- a/target/or1k/cpu.c +++ b/target/or1k/cpu.c @@ -285,6 +285,7 @@ static void openrisc_cpu_class_init(ObjectClass *oc, co= nst void *data) &occ->parent_phases); =20 cc->class_by_name =3D openrisc_cpu_class_by_name; + cc->exception_name =3D openrisc_excp_name; cc->dump_state =3D openrisc_cpu_dump_state; cc->set_pc =3D openrisc_cpu_set_pc; cc->get_pc =3D openrisc_cpu_get_pc; diff --git a/target/or1k/exception.c b/target/or1k/exception.c index 785181ef2ed..ca5e8a3134b 100644 --- a/target/or1k/exception.c +++ b/target/or1k/exception.c @@ -22,6 +22,27 @@ #include "cpu.h" #include "exception.h" =20 +const char *openrisc_excp_name(int excp) +{ + static const char * const excp_name[EXCP_NR] =3D { + [EXCP_RESET] =3D "RESET", + [EXCP_BUSERR] =3D "BUSERR (bus error)", + [EXCP_DPF] =3D "DFP (data protection fault)", + [EXCP_IPF] =3D "IPF (code protection fault)", + [EXCP_TICK] =3D "TICK (timer interrupt)", + [EXCP_ALIGN] =3D "ALIGN", + [EXCP_ILLEGAL] =3D "ILLEGAL", + [EXCP_INT] =3D "INT (device interrupt)", + [EXCP_DTLBMISS] =3D "DTLBMISS (data tlb miss)", + [EXCP_ITLBMISS] =3D "ITLBMISS (code tlb miss)", + [EXCP_RANGE] =3D "RANGE", + [EXCP_SYSCALL] =3D "SYSCALL", + [EXCP_FPE] =3D "FPE", + [EXCP_TRAP] =3D "TRAP", + }; + return ARRAY_ELEM_OR_NULL(excp_name, excp) ?: "unknown"; +} + G_NORETURN void or1k_raise_exception(OpenRISCCPU *cpu, uint32_t excp) { CPUState *cs =3D CPU(cpu); diff --git a/target/or1k/interrupt.c b/target/or1k/interrupt.c index 6e89157639a..399c98e3881 100644 --- a/target/or1k/interrupt.c +++ b/target/or1k/interrupt.c @@ -66,26 +66,9 @@ void openrisc_cpu_do_interrupt(CPUState *cs) } =20 if (exception > 0 && exception < EXCP_NR) { - static const char * const int_name[EXCP_NR] =3D { - [EXCP_RESET] =3D "RESET", - [EXCP_BUSERR] =3D "BUSERR (bus error)", - [EXCP_DPF] =3D "DFP (data protection fault)", - [EXCP_IPF] =3D "IPF (code protection fault)", - [EXCP_TICK] =3D "TICK (timer interrupt)", - [EXCP_ALIGN] =3D "ALIGN", - [EXCP_ILLEGAL] =3D "ILLEGAL", - [EXCP_INT] =3D "INT (device interrupt)", - [EXCP_DTLBMISS] =3D "DTLBMISS (data tlb miss)", - [EXCP_ITLBMISS] =3D "ITLBMISS (code tlb miss)", - [EXCP_RANGE] =3D "RANGE", - [EXCP_SYSCALL] =3D "SYSCALL", - [EXCP_FPE] =3D "FPE", - [EXCP_TRAP] =3D "TRAP", - }; - qemu_log_mask(CPU_LOG_INT, "CPU: %d INT: %s\n", cs->cpu_index, - int_name[exception]); + openrisc_excp_name(exception)); =20 hwaddr vect_pc =3D exception << 8; if (env->cpucfgr & CPUCFGR_EVBARP) { --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792553119; cv=none; d=zohomail.com; s=zohoarc; b=AVN+Yvdcz8CDUQ5uQmu/2M3hpJQ32/ESAlIPsAe17nZZJkaTlL0e38IgA12DTY7IVS2NdqEwJ0moG+edujqc36Bhy+9h0Jkt161lEKdF+zWFmFLZccX//d6mX1FNICAzh5zZ9j3TT0Lu+ShJTJVY+FAym5H6Nefy3jADeQQ2zsg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792553119; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=SXkn645Lr/ajES8wPsLn5pszC1HGjQSvfYfwjciavtk=; b=CK2SQXArBfN18lvuN65Ylov/7BsS+G2NV8p7uWKHeOKdZ6Z1l7OW0W4PoXmrSSA2ZakEWNRHZQE8gLG05PYf9B7jB0d/QgljqgVsRkULST65Bl6NhNhDTYpSUfZ9AfavonL8wahC1jcEuIZH1ey3RZD++WCLnpJ3YN92hY1O6Pg= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 179255311983275.95740879422056; Tue, 20 Oct 2026 20:25:19 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMqT-00089N-L7; Tue, 20 Oct 2026 23:18:29 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMox-0004iK-Vp for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:16:59 -0400 Received: from mx0b-0031df01.pphosted.com ([205.220.180.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMot-0002wt-JD for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:16:54 -0400 Received: from pps.filterd (m0279869.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2EuLh3904753 for ; Wed, 21 Oct 2026 03:16:40 GMT Received: from mail-qk1-f199.google.com (mail-qk1-f199.google.com [209.85.222.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4hegs00xc9-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:16:40 +0000 (GMT) Received: by mail-qk1-f199.google.com with SMTP id af79cd13be357-93e92aad34aso62500885a.0 for ; Tue, 20 Oct 2026 20:16:40 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4a1fcd25edasm20923305e9.3.2026.10.20.20.16.37 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:16:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= SXkn645Lr/ajES8wPsLn5pszC1HGjQSvfYfwjciavtk=; b=c+GnN2+zoCwIrT2D f+mx1wn4qRNnEvYMXwoIdCtrl2Z72xfQ8XHI+iYEVap1vwU+TfjhMHMYDOMYJCL5 4fXK5SxbsTdK4Om9yYLmFv3N3rG06QC3+tCRAqeKi62FrRd0oxYAH8O+xDjkzfJm mR07KtGHPXqQPjhkYYl5wU9XQS3WbY68kbsGc22HeNCBq5iNNjvKmSnIyZnXIUOP yUYTsXDa/dSoGkcoml4sMH3ulK5kx5OiPEDt1SMWXtl4nFa9Hvnvb6DyOPgj98Yx kCzU0x1SJDhx/g9r8mY13ifYQNB3+rLCFKeiA+a8WJgcARz+8D/oLi3CpZ4HmfJp oGWkUw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552600; x=1793157400; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=SXkn645Lr/ajES8wPsLn5pszC1HGjQSvfYfwjciavtk=; b=FDGIrh4/1Weun8osnD3ElQDsj4wR+GcRTGjThprch+tayBsS1d21TTov9tAhulDgDt LLO3AdSPaGmD8XbRPhIIWvpoXao/3wOzP2eYggj9i41io7Hyv1oJ6s08Pf2L+Vv3vAti /oThRWAMM9hLxB/7aFPa6jPDRVGzs7XH2kceJH7sEoVS0g0Iq+Z81bOTjf44fRhPSnaz vKc9jGiAWJp73qoFckn3a8CRfuk2tLdbq6iOMjwHohJf1YB33s4PIg5j4byh+GIWA447 dl5a36HhMvLGiWps6TIFffXxh2CDX/6bRxBtg8+RjBvhXFtcXwgqz2xyPZhxEn7yG0Ow do+Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552600; x=1793157400; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=SXkn645Lr/ajES8wPsLn5pszC1HGjQSvfYfwjciavtk=; b=wtRiJlZuoR/hT3aiJK+BFI65BQNYJS//3qQMDjPZsh/y/AZWCHUHWRF2VnCOFpGqFT UUtroESHxQkAm9Fxl+MO8OdLpNbNs8JCLPUlR4xGOh7LKgCOigDR/L1BKNwezVQjZak/ ETf6N+KjCpX2HD1OEpAguTsy4sv9jTQciGZQG61QCMFdjjfNyV6U2hRreEr1fJpcbrrE sq6I5aWTmssAcXMRgyfg+wgHgu3tF3RVyakuEKhYmlM2knMUSour8GVn6ZHhQxlqkbpe lDvvuhH3FgjV7pX4rt7rocTFKKZf1EgFTh+bNQiLgAf5C/gLhrB4uC+a3XOugxi7jbCD oD5g== X-Gm-Message-State: AFq9FYKeWcFOcYXMfAKkPh5fKUegLZ4Tap/VWcZSNAsJABC3n8qIrz2C ynDt+xDVqVY/g15qeYTcF8aIyiAB1Tv3oRgPEDlmbmdxZHFRtbBoAtuxO36O2cr52zaso768uR6 HVJJC7n6ViZLdXX/vlkwxv9uPA+Dw2GKuhxSHWA5yrv/+feeLdZfuKm3t3/PnT3AGVrUM X-Gm-Gg: AYBFou2aAgCCZ32azWfkggSw25hb7pIju5olpXUEypmOYLsT68YG28EijEq/AQeAeIr 4qDNV+NJgLdxbdC1DHaEsEi7MiTQnj3DE1Dh6xGKFFIxUzoQYfp2YiLD/Qn0rO2HDplZCZF56nb Pdoj4gfMVFKtEEE77vLhu99bZsMEUCRgDt+DMsKJiU3f7f1Me9euBa5zqqFNDUb2zDBF2UlqMHJ XiFgzWEyqHKwgcTmImcd24eO/LQl5Va4lniqCluEKYNtLru8OLSPvw+HP/HUp8hNY5jU8zozo5M GJahITEY77R3wAiGOQsH7Wpm9halWcLrehyDvhXf9B+FYkjJYKiVitwKE22xhi6rU76Aryx+X1n 5YkYfu5xKvUYDxSfVf48lw+EtgfoxJmKCR4PRufr9 X-Received: by 2002:a05:620a:40c3:b0:93e:c12c:43fa with SMTP id af79cd13be357-93f57f74c51mr222447085a.71.1792552599828; Tue, 20 Oct 2026 20:16:39 -0700 (PDT) X-Received: by 2002:a05:620a:40c3:b0:93e:c12c:43fa with SMTP id af79cd13be357-93f57f74c51mr222444285a.71.1792552599253; Tue, 20 Oct 2026 20:16:39 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 19/33] target/ppc: Dump EBB exceptions names Date: Wed, 21 Oct 2026 05:13:52 +0200 Message-ID: <20261021031407.24862-20-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Authority-Analysis: v=2.4 cv=S/NMU4sP c=1 sm=1 tr=0 ts=6ad82e98 cx=c_pps a=HLyN3IcIa5EE8TELMZ618Q==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=_glEPmIy2e8OvE2BGh3C:22 a=69wJf7TsAAAA:8 a=EUspDBNiAAAA:8 a=kkiHJ-TBn4Ncjf4pFXQA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=bTQJ7kPSJx9SKPbeHEYW:22 a=Fg1AiH1G6rFz08G2ETeA:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX9EEPee1FoWHG cse5y3NXX6E46AT0zy2zf9lzWadjHMTbuEeSlBKN57IAxhk/u792w0SCRznOWROLaPT5HJygX9U /FCC1ZSH7QxuKMGP0LWj9II9N48cEiZwN9r6RAC7J7Vshuo/FTEGJNC4QCYwui0rSUHR4UQzxZk DrBppB2QYFSNFK8ollfoZWLofGYo3ch+Y7rmxO7RMQv+Qh9PUJd9zEp4WfU7A3BkSJFcWBrlM28 v/VeYIYSQa8QSv77AqT/BXs6SjCNTecEr8J6Q7Zy/Q9f5dj3yRUj/CrA2OXVeY4d/r4iSDzv3i4 3OlGMdL1bCWnbAZ/D2ajmRh3CIAkaLZojVRVwaTO51XM+OXdX3LEWQhxyYnhwQNH2SzuRXMyLm7 +tVzZJYcCGUZXiiQUXtSME433/uQdcBmUtzFQJXMoyJ/CHaFh8r183M/Kw4mu95x1Cy6vz87olY h89iPCpOIjn2iVc8p+Q== X-Proofpoint-ORIG-GUID: eDf2c1i7taAJ_UAIgZwAZk4dGQ57MPY4 X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX/3j8WDLYFvCH KBq0dnvMoQ/xuX0knsl/k1VvmAmfFix7Y9anepE7jrFFmOkI437jqmr7yoTD4AiFUvHyf/t0QaS XWyvD3mOAY45/iRmuii6c1mU1bqBbnU= X-Proofpoint-GUID: eDf2c1i7taAJ_UAIgZwAZk4dGQ57MPY4 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 clxscore=1015 priorityscore=1501 spamscore=0 bulkscore=0 lowpriorityscore=0 malwarescore=0 phishscore=0 impostorscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.180.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0b-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792553121939158500 POWERPC_EXCP_PERFM_EBB and POWERPC_EXCP_EXTERNAL_EBB are raised on POWER8+ and logged by powerpc_excp() with '-d int', reaching g_assert_not_reached(). Cc: qemu-stable@nongnu.org Fixes: cb76bbc43fd ("target/ppc: add PPC_INTERRUPT_EBB and EBB exceptions") Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/ppc/excp_helper.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/target/ppc/excp_helper.c b/target/ppc/excp_helper.c index 6d05b865058..895127fb2e6 100644 --- a/target/ppc/excp_helper.c +++ b/target/ppc/excp_helper.c @@ -100,6 +100,8 @@ static const char *powerpc_excp_name(int excp) case POWERPC_EXCP_SDOOR_HV: return "SDOOR_HV"; case POWERPC_EXCP_HVIRT: return "HVIRT"; case POWERPC_EXCP_SYSCALL_VECTORED: return "SYSCALL_VECTORED"; + case POWERPC_EXCP_PERFM_EBB: return "PERFM_EBB"; + case POWERPC_EXCP_EXTERNAL_EBB: return "EXTERNAL_EBB"; default: g_assert_not_reached(); } --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792553118; cv=none; d=zohomail.com; s=zohoarc; b=QGKVjuq6RYCOtPdwl0eFuYuTkhcIT1JyRn1rdWV/ygE4Z3A6ab7P0DSucOEnL4dyubMyg3CrufoO1zin7pF/Sc1cdt16UhpbLYIZFXFV2IhmxunKhawwLvZ3Ov3Ty3KNYpUBKxo9da3l1oy3XVivD0C0l4nmZGS4XnUjH1jEc24= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792553118; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=PdLK6u7tq/yz0P0iF7Doi4UM43eIYN0OLasV3GDT2vU=; b=LnjjB9HXuB3a6R7CuuhfEwXDTmOODoK8nJWu74d6AFJ6JM22f1ZfnSEGnJjQWO/OazJlqGPRrVE/xKgG4EyIPwziZSkEoPX7Z7h3ZrO1j7t17Z/QHSJywhlE2Hlu4akzEKcfp3mwwXfRMAIWMq4tPpfaFjY+ef1QoRvZrX0QFYc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792553118031887.2912518886153; Tue, 20 Oct 2026 20:25:18 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMq2-0006s4-BO; Tue, 20 Oct 2026 23:18:02 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMp4-0004kz-Vv for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:17:06 -0400 Received: from mx0a-0031df01.pphosted.com ([205.220.168.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMp1-0002xj-Fc for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:17:01 -0400 Received: from pps.filterd (m0279867.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2F5Se336955 for ; Wed, 21 Oct 2026 03:16:48 GMT Received: from mail-qv1-f72.google.com (mail-qv1-f72.google.com [209.85.219.72]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4hedabhrh4-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:16:48 +0000 (GMT) Received: by mail-qv1-f72.google.com with SMTP id 6a1803df08f44-91b937ecbb4so6700296d6.2 for ; Tue, 20 Oct 2026 20:16:47 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4a1fb80f05bsm41137525e9.3.2026.10.20.20.16.45 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:16:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= PdLK6u7tq/yz0P0iF7Doi4UM43eIYN0OLasV3GDT2vU=; b=fHkOgYMRTnjiV+5N +PrplU2M2RGa3jxm/6r74ILatDMZADVf+VuVgRQRglzpWgWkH4pLkWO2WSReI6Bn /3amvW4o6cnxxwHUSieCiG/6ZvQa67DmuLCZf2GRfRETnp45PR7GhxagpFcGU79f etQTbCmZdmn7m/v8XmI0LuYtimgSFfDMwOgl9wPqiqYzaSjkqt2U5msaEQB/rYjE GI9+4CHrMvk0EBD76eDXmnjQzAkFuxovQ2uIJiFU9iBffy8PoGZWogev6CNnmXkI dMI66Pedr2RHl8hwxTJEVCYArZWvNoM5KyFqQqrNHlGBiCPiQ1Ja1gPyZDy1joph +KdFAg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552607; x=1793157407; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=PdLK6u7tq/yz0P0iF7Doi4UM43eIYN0OLasV3GDT2vU=; b=Q08HFRoDN/jgLJ14h3duL4FC39ODPgGI0qFBwDtuxycpCjBIbhQwz71+JzbdN3v0en n3Y07r55w4ZysVhkFE3zTgpmS0R1xS729hs3g8IhmbfzsF/vvzTLqG1KvkI2TWLOayTr /zFRjxzo4JyGEEpbyKDfjVbpE8hu7yv2zROaGVJk2SIOn+taCIfYsvVmpdyzAlRW2Uxf DE/RDYhFpOzQWfDp04ivcfxE2bZOljczIkTLffcf9Gx1BkilBcxqvsHBnUmme7rHNMWV xtCJTvM1wh+6IM3OFD5fzBWdVNE7CWA8pCHz8v658tTmvKXXt1sZQPMB4goZ+Cc1tMi4 KC1Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552607; x=1793157407; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=PdLK6u7tq/yz0P0iF7Doi4UM43eIYN0OLasV3GDT2vU=; b=2K/ivo0kGZe7nHfi3CNrXezQHkGxw11C50Wt1/aCbFBaylF7dszisTCrNVB2oVXQ9L 6qqBvg+u3QETsllwA96SJUVQWM7wIUgGZY9bsFT8Zd2KWVxGDU/xsTUq3aeX9hg9JoEx IeoZmGJt6zVplEv9D+DfEU3eiJo2XKT1nNh44p1Kj4ZowXj4j5CjFtfay/LnXimANo2n vLdURng9GAQo0BBTtlSPlyZUmcDKUt754Wt23ST7qwjMzwAjoTygy5HdXbNMz1ioBMFz 1DfHKU4ZY1yRRht1DgeHr2qqbGHAnOHnQBiO91aWSuJ+k1AZzws26WdClgW8ClP7K1Oa zUXg== X-Gm-Message-State: AFq9FYJ0RklH7NSz8WInlzrAJ6CmhzEk7v6EILTdSuKQBw9hizP1MWTY 0HzX4nPgQADn8J0yUnyTtZ4D9ae2sBe/fPcUjiLLgcaRekAG+p0yM0teBvBf/LPKF7Gee49+DWT CRxep14ZbQrxiRqpdBUE+e30yeJkV3Q8CXonO63whGNRKOqRrWKU5eu7wXbSDZpKTEU1w X-Gm-Gg: AYBFou0lhc/DpaEn5yPYYAbJVdjDPCbF3xbE5s16J2/O4BqVkVS+cAXgbWQR5YxQ0BO hk5kb8R2RQp0Zkxn9yVvDcMGXWstsNwXXXiXnAFSGF54piKiLwgfMm1IlkMUvnQ92CvKL0xc06T Ju7pf6nIhNvhriQWgdhhCBiVg+exRvYNutIYmbLgDVNWe02+yYb6j2YFNyy5Lig7S0UbQYIInCn 4spUIHc8cyuWFytP1w2arYO6QcqhL980QpqNJ9UIuJD4dtDOtY9fHYlJC1bc4XrICyssrjXF69d dt/5uW6xEvXvhSgJ8i9ltjJeyb9o/tEfYHtoKX8xdd+B9kxj6DrAc5fuWQN0dA1rP4ewgoC8v2L wkd3BehdJ4vULvpc+qYbiB7cQ/kCG1eBfaVhfkTDY X-Received: by 2002:a05:620a:258b:b0:93c:8544:6ad8 with SMTP id af79cd13be357-93f57f70fbfmr194777285a.28.1792552607161; Tue, 20 Oct 2026 20:16:47 -0700 (PDT) X-Received: by 2002:a05:620a:258b:b0:93c:8544:6ad8 with SMTP id af79cd13be357-93f57f70fbfmr194774885a.28.1792552606590; Tue, 20 Oct 2026 20:16:46 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 20/33] target/ppc: Register CPUClass::exception_name() handler Date: Wed, 21 Oct 2026 05:13:53 +0200 Message-ID: <20261021031407.24862-21-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX/av02cFxE1lt cUeL51t1KvUsqp0qp36cZdQvxBZ5SHXL/TCA5vQ/AeL/fHFhc/Dc/YMCABnqawWv4ykAe7D7x94 1z5uFNPMJSYtV8k31BTkqD1XbLkv9bs= X-Proofpoint-ORIG-GUID: ikQ2XpiFM9ZSpvhPzCYDbdq0O0OFX9aG X-Proofpoint-GUID: ikQ2XpiFM9ZSpvhPzCYDbdq0O0OFX9aG X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX9gBNGev6Fu9l EJgUj6VXni/OPd7xG2KyBUZDycGZnTVtH2YrCt+NwEzcQkyut9yrrcQnMBIB7JHb+K2bq7684oK ZuHcoIMZ+8n1Grmzpxo8jolcUrcjQTwiF5nYx/mIo+2357FKvjZzWyTlzc5AaPB+xvAEW3srKqa VichrflUZM0Y43bBZ5g7EC5fatqvigcCfDDwo1i+ahbnPTOoTAAVPHq/YwsetAfmyhCpSlpsLus SAhrbmnSDc8QFxvV70I4C9G5m5/B+fUYfWo92SVPBeUuM0o+3LsvuSPVlZWZq9dauqiJM1cT0Ru JNWy5yy93GKeR/Wp06+EU6qJI4ZS6yy/xsCLcNzWbvY3xD5AUnra1/tVrolyJa1udwjBW+wE2Aq UErHEHB1EpwOPa3i/Gjw5Sp5lPe7gEW3eMAF1yVMcbeOcMwZIlf4l3un2qVeGxNhQOgH2QsCrpb hxzo+F3KqpNex72ZXdg== X-Authority-Analysis: v=2.4 cv=NLpAaE6g c=1 sm=1 tr=0 ts=6ad82ea0 cx=c_pps a=7E5Bxpl4vBhpaufnMqZlrw==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=eoimf2acIAo5FJnRuUoq:22 a=EUspDBNiAAAA:8 a=GQJXTKmK7mRzDcunaLEA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=pJ04lnu7RYOZP9TFuWaZ:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 priorityscore=1501 malwarescore=0 clxscore=1015 impostorscore=0 phishscore=0 spamscore=0 adultscore=0 lowpriorityscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.168.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792553119918158500 Expose powerpc_excp_name() prototype and register it as the CPUClass::exception_name() handler, so the common exception logging can resolve PPC exception codes to names. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/ppc/cpu.h | 2 ++ target/ppc/cpu_init.c | 1 + target/ppc/excp_helper.c | 5 +++-- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/target/ppc/cpu.h b/target/ppc/cpu.h index 3fb51bbeb82..4eb7db3d727 100644 --- a/target/ppc/cpu.h +++ b/target/ppc/cpu.h @@ -153,6 +153,8 @@ enum { POWERPC_EXCP_SYSCALL_USER =3D 0x203, /* System call in user mode only = */ }; =20 +const char *powerpc_excp_name(int excp); + /* Exceptions error codes = */ enum { /* Exception subtypes for POWERPC_EXCP_ALIGN = */ diff --git a/target/ppc/cpu_init.c b/target/ppc/cpu_init.c index b711f9c0a85..d5f9ac28020 100644 --- a/target/ppc/cpu_init.c +++ b/target/ppc/cpu_init.c @@ -7529,6 +7529,7 @@ static void ppc_cpu_class_init(ObjectClass *oc, const= void *data) &pcc->parent_phases); =20 cc->class_by_name =3D ppc_cpu_class_by_name; + cc->exception_name =3D powerpc_excp_name; cc->list_cpus =3D ppc_cpu_list; cc->dump_state =3D ppc_cpu_dump_state; cc->set_pc =3D ppc_cpu_set_pc; diff --git a/target/ppc/excp_helper.c b/target/ppc/excp_helper.c index 895127fb2e6..66675f1fdb4 100644 --- a/target/ppc/excp_helper.c +++ b/target/ppc/excp_helper.c @@ -33,9 +33,8 @@ =20 /*************************************************************************= ****/ /* Exception processing */ -#ifndef CONFIG_USER_ONLY =20 -static const char *powerpc_excp_name(int excp) +const char *powerpc_excp_name(int excp) { switch (excp) { case POWERPC_EXCP_CRITICAL: return "CRITICAL"; @@ -107,6 +106,8 @@ static const char *powerpc_excp_name(int excp) } } =20 +#ifndef CONFIG_USER_ONLY + static void dump_syscall(CPUPPCState *env) { qemu_log_mask(CPU_LOG_INT, "syscall r0=3D%016" PRIx64 --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552941; cv=none; d=zohomail.com; s=zohoarc; b=Mz7B/ufRYAkI7Rfg9dPSh2tsj88zF8yni+UPnLHUhs4/b7EiHYDUeTSN2UTGj2Gli+g3/VRH+kCgxiTVOqPLD6k+0tJ8Prdz9JungnLHqSxfR/mQgb3vjV8f3OlWtgwcrSxnffSZi2/01P9mHkNIDvbk8NmBiPWSp8nkN/pALcA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552941; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=hPwTMfh9tl/gdAjpUv4siVapEpR/STNR2Jm7XAvIl40=; b=IIkEdR8O1wP+wLcUtsOX93Q09MdDTAEjamWJmsPf8eNnY0Gxjbfj0w+hUvMo8HMecB+ulZmN7IBMCnP4yo0g2Qfh6PNirMDuaMSFY1PflUcVR9pFRKCMegVkmVNkGIMnwVSk/FPpxf73h8b0FchnkaOnsyIljou7c27CjXUpexM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552941927372.22823693958003; Tue, 20 Oct 2026 20:22:21 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMqP-0007nB-7p; Tue, 20 Oct 2026 23:18:25 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMpC-0004rl-2z for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:17:17 -0400 Received: from mx0b-0031df01.pphosted.com ([205.220.180.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMp8-0002z5-V4 for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:17:09 -0400 Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2Erq03420587 for ; Wed, 21 Oct 2026 03:16:56 GMT Received: from mail-qk1-f199.google.com (mail-qk1-f199.google.com [209.85.222.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4heh5r0ucn-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:16:55 +0000 (GMT) Received: by mail-qk1-f199.google.com with SMTP id af79cd13be357-9308eafb465so91060485a.2 for ; Tue, 20 Oct 2026 20:16:55 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e25835d3bsm2390224f8f.39.2026.10.20.20.16.52 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:16:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= hPwTMfh9tl/gdAjpUv4siVapEpR/STNR2Jm7XAvIl40=; b=PTPay10FMosYp+/G nycyFgPoRC5yRXY78whzE5eabhdyXGiiWJLMt9KxuxPHO1WDnFuMwB0F/praUa0y lC+++2AJI5fiETXJ7BVDZ7+lEjWkTKstPozVORpTZJ+iMG62CAjCHF5sZPCWr1cX XGawYUEu1ZF9eVUr92p5499yX9wX/moyhL/YJ7N/XiHE4ux9L8SmTVj8tK4P1QMu Aoa3Ei77fCg8mw66oon46ijsFuMkAGZNRJv/6DPHO8RT0lff/mcuyyDe/zuQhS7J 4OgJrlMlsUqCmziz9szbblsGkz4yk3BhwhNfro2TbKQFfvxLrmhQMVurdXz5ynco 64L57w== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552615; x=1793157415; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=hPwTMfh9tl/gdAjpUv4siVapEpR/STNR2Jm7XAvIl40=; b=F/+z2EiO04TDTJHO4J0G9BQqvn2z7rhLZf86Omek0Ll7sBrk5bZazfdWHvSn/7Llfd sqoGi8kumSWvEMyQj132UYDntBx8FqoWwWmIo0C5UpDctfQcwnVRW6Nc3RuQVxgR2BLc 91jNR3GQxUF6/vZolrM6cOBeztGS4q4crLJssusRetFG78FHE9luLdulGt5pVrnR4bdV 6w9690Rrfb/D2BGUkb7S15EAQ8YFNVCUgLamGE5ciQkWn4UHkUz8Ctkm8+5fyGhGibxC x8ST9URPfzBopipWXwlmnZhCSD/RIj35qnt7Y+hGHq0JhMrSBAX18cBcFUW0Ht+nDSqu 6atw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552615; x=1793157415; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=hPwTMfh9tl/gdAjpUv4siVapEpR/STNR2Jm7XAvIl40=; b=kfoXEj4MGaLhrZfcuYBr6KaxDZ5TQrw+enViNSU9amZ0Otm0rFDZ+VlSX2GsrPavUU fZ9NKBDR/ubeE2DV0L6CedYmFr2NQuW7y8gF9X96i56GdWDeCk2/48BKrbdl6KuZrajk dj3+NMtYjuuZFxQbwpRXMjhkraTgB4cxhKOEKP4r+rSDw732R0zVOQRlK2nZH5IwZieN w+sOknLBjFt/t5MBkf4UcysEz09V2cbnxi3u1aCkGaAjGMpknFSNdNzrLC3YLUFZnyBh F68mkSPiaK9di7NuUk4+AfodHm4y3gSaqUDa7pndu/bjopSsjbn9zx1We1G5lDUNTJ9O h1Tg== X-Gm-Message-State: AFq9FYJPVdfwdwpMmY39VEBjlmzCXGetXobB+rcJfjb2l5kdWg4bOu5C M/2+1fmgcpKlEAPgEahJSlQ4WOpUWmfpQmNlj2iwq/d10I6aQUfXJufFUMueW6ui4D8Wb8lu2uy eZtankd92EjOxWpBw7Ey/cRR/9s6+64rh5AFVhXqbic+T5plhxhDXL92NzOR6YgPhix5l X-Gm-Gg: AYBFou2l94Alr7DZPNYqkLWfMPqK/1nd1NrTphxqMsb2PhdP5yXG7JUO3k9ys69jK1/ lgnyAgkR5pOdBC3XeXoxrmV+JqZoQeo1RS2NQerJcmYmtegdPf3vt3hf8mvj0AZy8QRawMRVsv0 BsOka/NFEfNTgrv5Xjo9l60sJ3KGwqz3CUFeFb0WnCc/66ZyYv38wOFSiTiMDlrQpdj4U54OCMS ljsSYc4oa2sJoWMe5wCim/8h8InUGtaVydpVO5kUTZqR4PS1jkOHlP3i80DGXZboGSfwGkzxTQg 9qImFtrk7yNCJ57z8V8Z9TWxG5tyahY/cH1n0/TK2XTUW64ql17AYsEi87sUglZn6IZwB4skk/M COwZo/8ro7mdO8BY9Wfeubmpaz4KcvbEf8Rvga3ha X-Received: by 2002:a05:620a:2788:b0:93f:3576:d43c with SMTP id af79cd13be357-93f57f1efc9mr223719885a.19.1792552615237; Tue, 20 Oct 2026 20:16:55 -0700 (PDT) X-Received: by 2002:a05:620a:2788:b0:93f:3576:d43c with SMTP id af79cd13be357-93f57f1efc9mr223717985a.19.1792552614771; Tue, 20 Oct 2026 20:16:54 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 21/33] target/ppc: Use a static table in powerpc_excp_name() Date: Wed, 21 Oct 2026 05:13:54 +0200 Message-ID: <20261021031407.24862-22-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Authority-Analysis: v=2.4 cv=aI5lOr9m c=1 sm=1 tr=0 ts=6ad82ea7 cx=c_pps a=HLyN3IcIa5EE8TELMZ618Q==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=gowsoOTTUOVcmtlkKump:22 a=EUspDBNiAAAA:8 a=XJmH2WDaBb6-5EqxUU0A:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=bTQJ7kPSJx9SKPbeHEYW:22 X-Proofpoint-ORIG-GUID: XTKNKpNPFgJ7GG9FJmc834DW7AQYYcAs X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX9cR4IpBilzxJ k4KU8xmvSt4xlJIlRZgkvei/DVOAGGs0dha2PRrL0iDWvxJfgwIddgi3u3ZyT3ocj2mcYz5i4ip a7bvvhLo2tIds/fNDAzplWkvUxOD/ucKtdBhsb69rUAsnyPK2Mazda9ncT22pssVea3a6ZAoGSS 5K5Q4uYYhDtbzpxWilff2yHSjs7KE54t35sWSsAM0JB/atakkS2WsmSVOgFHFXlnPd/WCxya+JP DgwbnbL94xYM4FAj8Blrt+uXzoQoWK0htWfPodWDcxoJ/LmRwditxRQ7xknBKmUD9obcKR/3h0/ z/b/QGfIO1M2yNNVOTLYfuCAnjWPUNIE4Iyv0yQ95b6XTs4rb3sMfULOSEo2mzBEI4FmpG16j9S bJsyAw2ss53glFq3bGZri7HG4c9B8NyZXOVJcqLgtEFP0lpR3TxIUniKendGucCXFM/je7+GaaE U8BSTMc6uU5+u3NNwdw== X-Proofpoint-GUID: XTKNKpNPFgJ7GG9FJmc834DW7AQYYcAs X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX2CYtgRepDSz4 v9Rp+jDb/qhTFZT4UWcP+MZmL3vBhG6LFOMZXRAgcoIKZ2suYll3WZB8rxveTRgAwRmBjBwjtV4 xk/eE3mA7yTBIggzefPyqP+kxujlEmM= X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 clxscore=1015 impostorscore=0 spamscore=0 bulkscore=0 malwarescore=0 suspectscore=0 adultscore=0 phishscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.180.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0b-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51, UPPERCASE_50_75=0.008 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552942422158500 Replace the switch statement with a static lookup table. Suggested-by: Pierrick Bouvier Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/ppc/excp_helper.c | 136 +++++++++++++++++++-------------------- 1 file changed, 68 insertions(+), 68 deletions(-) diff --git a/target/ppc/excp_helper.c b/target/ppc/excp_helper.c index 66675f1fdb4..1566f0c4741 100644 --- a/target/ppc/excp_helper.c +++ b/target/ppc/excp_helper.c @@ -36,74 +36,74 @@ =20 const char *powerpc_excp_name(int excp) { - switch (excp) { - case POWERPC_EXCP_CRITICAL: return "CRITICAL"; - case POWERPC_EXCP_MCHECK: return "MCHECK"; - case POWERPC_EXCP_DSI: return "DSI"; - case POWERPC_EXCP_ISI: return "ISI"; - case POWERPC_EXCP_EXTERNAL: return "EXTERNAL"; - case POWERPC_EXCP_ALIGN: return "ALIGN"; - case POWERPC_EXCP_PROGRAM: return "PROGRAM"; - case POWERPC_EXCP_FPU: return "FPU"; - case POWERPC_EXCP_SYSCALL: return "SYSCALL"; - case POWERPC_EXCP_APU: return "APU"; - case POWERPC_EXCP_DECR: return "DECR"; - case POWERPC_EXCP_FIT: return "FIT"; - case POWERPC_EXCP_WDT: return "WDT"; - case POWERPC_EXCP_DTLB: return "DTLB"; - case POWERPC_EXCP_ITLB: return "ITLB"; - case POWERPC_EXCP_DEBUG: return "DEBUG"; - case POWERPC_EXCP_SPEU: return "SPEU"; - case POWERPC_EXCP_EFPDI: return "EFPDI"; - case POWERPC_EXCP_EFPRI: return "EFPRI"; - case POWERPC_EXCP_EPERFM: return "EPERFM"; - case POWERPC_EXCP_DOORI: return "DOORI"; - case POWERPC_EXCP_DOORCI: return "DOORCI"; - case POWERPC_EXCP_GDOORI: return "GDOORI"; - case POWERPC_EXCP_GDOORCI: return "GDOORCI"; - case POWERPC_EXCP_HYPPRIV: return "HYPPRIV"; - case POWERPC_EXCP_RESET: return "RESET"; - case POWERPC_EXCP_DSEG: return "DSEG"; - case POWERPC_EXCP_ISEG: return "ISEG"; - case POWERPC_EXCP_HDECR: return "HDECR"; - case POWERPC_EXCP_TRACE: return "TRACE"; - case POWERPC_EXCP_HDSI: return "HDSI"; - case POWERPC_EXCP_HISI: return "HISI"; - case POWERPC_EXCP_HDSEG: return "HDSEG"; - case POWERPC_EXCP_HISEG: return "HISEG"; - case POWERPC_EXCP_VPU: return "VPU"; - case POWERPC_EXCP_PIT: return "PIT"; - case POWERPC_EXCP_EMUL: return "EMUL"; - case POWERPC_EXCP_IFTLB: return "IFTLB"; - case POWERPC_EXCP_DLTLB: return "DLTLB"; - case POWERPC_EXCP_DSTLB: return "DSTLB"; - case POWERPC_EXCP_FPA: return "FPA"; - case POWERPC_EXCP_DABR: return "DABR"; - case POWERPC_EXCP_IABR: return "IABR"; - case POWERPC_EXCP_SMI: return "SMI"; - case POWERPC_EXCP_PERFM: return "PERFM"; - case POWERPC_EXCP_THERM: return "THERM"; - case POWERPC_EXCP_VPUA: return "VPUA"; - case POWERPC_EXCP_SOFTP: return "SOFTP"; - case POWERPC_EXCP_MAINT: return "MAINT"; - case POWERPC_EXCP_MEXTBR: return "MEXTBR"; - case POWERPC_EXCP_NMEXTBR: return "NMEXTBR"; - case POWERPC_EXCP_ITLBE: return "ITLBE"; - case POWERPC_EXCP_DTLBE: return "DTLBE"; - case POWERPC_EXCP_VSXU: return "VSXU"; - case POWERPC_EXCP_FU: return "FU"; - case POWERPC_EXCP_HV_EMU: return "HV_EMU"; - case POWERPC_EXCP_HV_MAINT: return "HV_MAINT"; - case POWERPC_EXCP_HV_FU: return "HV_FU"; - case POWERPC_EXCP_SDOOR: return "SDOOR"; - case POWERPC_EXCP_SDOOR_HV: return "SDOOR_HV"; - case POWERPC_EXCP_HVIRT: return "HVIRT"; - case POWERPC_EXCP_SYSCALL_VECTORED: return "SYSCALL_VECTORED"; - case POWERPC_EXCP_PERFM_EBB: return "PERFM_EBB"; - case POWERPC_EXCP_EXTERNAL_EBB: return "EXTERNAL_EBB"; - default: - g_assert_not_reached(); - } + static const char * const excp_names[POWERPC_EXCP_NB] =3D { + [POWERPC_EXCP_CRITICAL] =3D "CRITICAL", + [POWERPC_EXCP_MCHECK] =3D "MCHECK", + [POWERPC_EXCP_DSI] =3D "DSI", + [POWERPC_EXCP_ISI] =3D "ISI", + [POWERPC_EXCP_EXTERNAL] =3D "EXTERNAL", + [POWERPC_EXCP_ALIGN] =3D "ALIGN", + [POWERPC_EXCP_PROGRAM] =3D "PROGRAM", + [POWERPC_EXCP_FPU] =3D "FPU", + [POWERPC_EXCP_SYSCALL] =3D "SYSCALL", + [POWERPC_EXCP_APU] =3D "APU", + [POWERPC_EXCP_DECR] =3D "DECR", + [POWERPC_EXCP_FIT] =3D "FIT", + [POWERPC_EXCP_WDT] =3D "WDT", + [POWERPC_EXCP_DTLB] =3D "DTLB", + [POWERPC_EXCP_ITLB] =3D "ITLB", + [POWERPC_EXCP_DEBUG] =3D "DEBUG", + [POWERPC_EXCP_SPEU] =3D "SPEU", + [POWERPC_EXCP_EFPDI] =3D "EFPDI", + [POWERPC_EXCP_EFPRI] =3D "EFPRI", + [POWERPC_EXCP_EPERFM] =3D "EPERFM", + [POWERPC_EXCP_DOORI] =3D "DOORI", + [POWERPC_EXCP_DOORCI] =3D "DOORCI", + [POWERPC_EXCP_GDOORI] =3D "GDOORI", + [POWERPC_EXCP_GDOORCI] =3D "GDOORCI", + [POWERPC_EXCP_HYPPRIV] =3D "HYPPRIV", + [POWERPC_EXCP_RESET] =3D "RESET", + [POWERPC_EXCP_DSEG] =3D "DSEG", + [POWERPC_EXCP_ISEG] =3D "ISEG", + [POWERPC_EXCP_HDECR] =3D "HDECR", + [POWERPC_EXCP_TRACE] =3D "TRACE", + [POWERPC_EXCP_HDSI] =3D "HDSI", + [POWERPC_EXCP_HISI] =3D "HISI", + [POWERPC_EXCP_HDSEG] =3D "HDSEG", + [POWERPC_EXCP_HISEG] =3D "HISEG", + [POWERPC_EXCP_VPU] =3D "VPU", + [POWERPC_EXCP_PIT] =3D "PIT", + [POWERPC_EXCP_EMUL] =3D "EMUL", + [POWERPC_EXCP_IFTLB] =3D "IFTLB", + [POWERPC_EXCP_DLTLB] =3D "DLTLB", + [POWERPC_EXCP_DSTLB] =3D "DSTLB", + [POWERPC_EXCP_FPA] =3D "FPA", + [POWERPC_EXCP_DABR] =3D "DABR", + [POWERPC_EXCP_IABR] =3D "IABR", + [POWERPC_EXCP_SMI] =3D "SMI", + [POWERPC_EXCP_PERFM] =3D "PERFM", + [POWERPC_EXCP_THERM] =3D "THERM", + [POWERPC_EXCP_VPUA] =3D "VPUA", + [POWERPC_EXCP_SOFTP] =3D "SOFTP", + [POWERPC_EXCP_MAINT] =3D "MAINT", + [POWERPC_EXCP_MEXTBR] =3D "MEXTBR", + [POWERPC_EXCP_NMEXTBR] =3D "NMEXTBR", + [POWERPC_EXCP_ITLBE] =3D "ITLBE", + [POWERPC_EXCP_DTLBE] =3D "DTLBE", + [POWERPC_EXCP_VSXU] =3D "VSXU", + [POWERPC_EXCP_FU] =3D "FU", + [POWERPC_EXCP_HV_EMU] =3D "HV_EMU", + [POWERPC_EXCP_HV_MAINT] =3D "HV_MAINT", + [POWERPC_EXCP_HV_FU] =3D "HV_FU", + [POWERPC_EXCP_SDOOR] =3D "SDOOR", + [POWERPC_EXCP_SDOOR_HV] =3D "SDOOR_HV", + [POWERPC_EXCP_HVIRT] =3D "HVIRT", + [POWERPC_EXCP_SYSCALL_VECTORED] =3D "SYSCALL_VECTORED", + [POWERPC_EXCP_PERFM_EBB] =3D "PERFM_EBB", + [POWERPC_EXCP_EXTERNAL_EBB] =3D "EXTERNAL_EBB", + }; + + return ARRAY_ELEM_OR_NULL(excp_names, excp) ?: "unknown"; } =20 #ifndef CONFIG_USER_ONLY --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552945; cv=none; d=zohomail.com; s=zohoarc; b=BV365o1cMY/HhSVkMdJi7gTHz8E6FaVD53mT9IJze/KHF/RfRWbs2YfiogtNWbYl7JxTHvsoUHQmpIAETokC+vjndmo+kZ9nD0RcQ3XL5hao4jtkHpHpSeY0P8Qit4bh5FOVEh+DIxjBSVH/ELS5gbHx0jhLPVk/zqdfkIFZSGA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552945; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=kqsyq5ufOSYPdPIadZgoikdqK3qQtPj8FL7aNjTYmrs=; b=W2WW6oorQG1J/6xc96b3PVNFZHBL3//5nhKthhZs/zzV+7CEj5IVjPZQKxYOAMkd/YzANcQtSW4Touv8pAIImo4FfVXSKkFGQ5wrWNFij2LMiCN5P9hEpcYiJEVD6p57LOnPMMJXtiPIt724Zk5iop6p9fLwcfeo4BY3F+VgNUA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552945594490.25744574745295; Tue, 20 Oct 2026 20:22:25 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMqX-0008U1-S1; Tue, 20 Oct 2026 23:18:33 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMpJ-0004xQ-7A for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:17:21 -0400 Received: from mx0a-0031df01.pphosted.com ([205.220.168.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMpH-00030S-7v for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:17:16 -0400 Received: from pps.filterd (m0279867.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2F0Vm336596 for ; Wed, 21 Oct 2026 03:17:04 GMT Received: from mail-qk1-f199.google.com (mail-qk1-f199.google.com [209.85.222.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4hedabhrj1-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:17:03 +0000 (GMT) Received: by mail-qk1-f199.google.com with SMTP id af79cd13be357-93caf6c528aso52826585a.0 for ; Tue, 20 Oct 2026 20:17:03 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4a1fcdd3855sm11075905e9.1.2026.10.20.20.17.00 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:17:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= kqsyq5ufOSYPdPIadZgoikdqK3qQtPj8FL7aNjTYmrs=; b=aZVG+q8tHeJET48k zYLjnoKLk+OBXfgTvMX7E/DRXoo2dU/WNO6Ozr4qJrdiw+xgB3zw30wAS9RSyZkb vVxOPSP+ziantTPvuEJqTDV3SiH17cA0fKiTr8Xrfsh+cOmOz/4E/l9ljZpOj/l1 h3R4Uux2MAZkF9uXQMRlHgc+fsGtmpRLlYaulENrmjT1JnjKlBVwlm/3+tOS2K3G Fldj5aD+eHzACpw3xhG6boVsMt23PbaYYxCcM9WI4YA8PLYSFM3KApnsbzwVzY6E StGuqefhDnGiPlbl+5UTuB9BSPkp0ZyJw4c8NrIqFIdC3fJaXqIHON/UDgEtmtZ7 UnY9lQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552623; x=1793157423; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=kqsyq5ufOSYPdPIadZgoikdqK3qQtPj8FL7aNjTYmrs=; b=Elgx3nPZAPE0mWqzU05np/GNcvqhed0RBhffGtbbC/MsJ6KAnUG8IpKal38bPp+Ibk ZJBE1qQVi3QrpXuizm0chECAHm+Kux93bj+SxeE8gvD+tPg3xA6UfaDNQR3aksPDRmtn udCq5i2Kb39NgId6JUmVHzxg/ZOZp5VsehIe3KY5YJtepzI84HlccDVbtMtCeEUnhBJX l8XDZtqlGBdcMDI6nto1PDiPS8m6LOSNVPQ25GF+RmzbxTJYvxQnPAafFZF4ZG5LJYXl +4YXo0mk/pgkudIXgXdw0OIJlfrkkuqmYyTBPqje6U9toD7lQdgDCdSZT8v2yERPsSPG J8RA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552623; x=1793157423; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=kqsyq5ufOSYPdPIadZgoikdqK3qQtPj8FL7aNjTYmrs=; b=v0411Qa11KLZgnCpSr4ShipDPUKfU27tQqcar/m7Ekw4Rm8zeo1BpvkT2QvQtSL0zj ubnOTVc/BuhgZRrBgDODEa8e6VdOC6Bc+FYJnF1ZeUjTR3Ln4NwABF6M/ivkRRjNtY+n gUafHJyCP0Mo1zqcTxN2Zx7DDbv8PJiQp0RBZDeml16h+9E5BjI0SKYvIhHibQP8N/Co iRvbqxP7GIVbpQFXCd6DrnqcMKqIlcoHSvoHyigfKHOOB9n5uppXAF1PGXYJnPsyFSnC Dw2nvaDeIA67d/pe4mJ1/FdMUFqvvFBlkAxiXOdpOu8GK3rLxnSizDsSAYpfVWwR6UcD 4stQ== X-Gm-Message-State: AFq9FYLgzYjHNasZQ48DcdTZnIEmWx43dzvxzfNwehwuAS4f5RLM1B78 1XzXZwPc9OqGEGxejfCrnC0v3JLRCxpaB2TrqanatRmlJwKzBsEW+IH8QAuVLWwy0diqWZS6z0D UAjc9WhXAGECw5kJR4yvyA6hxDH4VBsgsgErrWov7reVTZtKaO37zdjLDc4orfCA01Dsc X-Gm-Gg: AYBFou3vJPRHD55YPWQy12PVB13hbBne7xfCR3XiTuMPuJR+aNdbboOPv5H9yBne+Xn RBRMcp7zmAsKsUfcHv0QSuqHBaqMlibrLK7ixim1EoaXEscPDtQrfNndbz7jMVA19Te0uHyOn5b h2z+pFCebYdJbygd/txhpW5fjj7FiZvgPN0lisZd0zWiGIuqX0o418rerLYttYfoD2+QMcoqTpg kKFa0i0tZTpCRQovJ9hbMZN/DLgCNUc+YMUovTdpDLyEAF8jm8tGdjh2iF4qE9wAVCBLIaXj2vc 4OOooRw46enNQnmoVmx8QarkS5JajW8XZ2forZNOzkwmEytz+7FtuOFG/SfNHEyfOIhhDFUtSf/ Xs2ojrb/jQDSH+kZ5XIKYKs+4pz7SuZlJD4fn4jBT X-Received: by 2002:a05:620a:3711:b0:93f:5677:9950 with SMTP id af79cd13be357-93f57f46196mr217882485a.53.1792552622621; Tue, 20 Oct 2026 20:17:02 -0700 (PDT) X-Received: by 2002:a05:620a:3711:b0:93f:5677:9950 with SMTP id af79cd13be357-93f57f46196mr217879585a.53.1792552622126; Tue, 20 Oct 2026 20:17:02 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 22/33] target/riscv: Register CPUClass::exception_name() handler Date: Wed, 21 Oct 2026 05:13:55 +0200 Message-ID: <20261021031407.24862-23-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX6Ij4aP9OcClf BCESx4ajP7OU+WxfN5SbXhWmGojq96rSsutsO8Ecfz1FqIsMISxHQw2ryDeDDIm49+k6BIWyM+7 5OnH/Ht4R1MQ7ogEVePHwW3HN4JxbD0= X-Proofpoint-ORIG-GUID: iuLm73rZ53oOro2gHkV2GpOMKffKcT4X X-Proofpoint-GUID: iuLm73rZ53oOro2gHkV2GpOMKffKcT4X X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX3FqaHcA4dpZB l6W58BYBO5ZW05M0TTfrGTmYyOazeT3ima9iyWNwZe4FSZNzHYdbvjRIz0adgIqtXWNd3ahap+N 5odRo+eUu5Po5sk25CsjLYzz/YOA3gOZ8BNFHOEj+PXU/MkWMiTm6C1yTrmW3y88vB2sOYiIOUQ NnwVStAKsrhu8VOWN2OuRsOp9Up4Y9UeabVy2R0pN3amRiAF4g85qe59lA5zWCrMiY2ONuw19NH DhTSHn6bzowY4e+8adzrcGb3raqVJ5NDVIZ4eMBj62zyMY753dV06kHGZ0idXvCaUd3GERPienP sKJq800oskCvNbri5eo0dMfy6OqOzZ6Mx577KIGk6oj1KnoFDjJ9oETHVHhA9ZiV5b6WBwoImMW U7M6uT7SEdpsztpF/lZ24NUhmnF66KWpULe0Wcimx2PqQMUkxx8CKNk23AFafIKvAUvHCVypBzX qGJjWRIBBaNYDVOPShw== X-Authority-Analysis: v=2.4 cv=NLpAaE6g c=1 sm=1 tr=0 ts=6ad82eaf cx=c_pps a=HLyN3IcIa5EE8TELMZ618Q==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=eoimf2acIAo5FJnRuUoq:22 a=EUspDBNiAAAA:8 a=y9j7XMdMAJhvWi9Kj2cA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=bTQJ7kPSJx9SKPbeHEYW:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 priorityscore=1501 malwarescore=0 clxscore=1015 impostorscore=0 phishscore=0 spamscore=0 adultscore=0 lowpriorityscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.168.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552946414158500 Factor riscv_excp_name() and riscv_intr_name() out of riscv_cpu_get_trap_name(). Register riscv_excp_name() as the CPUClass::exception_name() handler, so the common exception logging can resolve RISCV exception codes to names. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/riscv/cpu.h | 1 + target/riscv/cpu.c | 29 ++++++++++++++++++----------- target/riscv/tcg/op_helper.c | 2 +- 3 files changed, 20 insertions(+), 12 deletions(-) diff --git a/target/riscv/cpu.h b/target/riscv/cpu.h index b65d6319940..49a1186bdbb 100644 --- a/target/riscv/cpu.h +++ b/target/riscv/cpu.h @@ -672,6 +672,7 @@ G_NORETURN void riscv_cpu_do_unaligned_access(CPUState= *cs, vaddr addr, bool riscv_cpu_tlb_fill(CPUState *cs, vaddr address, int size, MMUAccessType access_type, int mmu_idx, bool probe, uintptr_t retaddr); +const char *riscv_excp_name(int excp); char *riscv_isa_string(RISCVCPU *cpu); int riscv_cpu_max_xlen(RISCVCPUClass *mcc); bool riscv_cpu_option_set(RISCVCPU *cpu, const char *optname); diff --git a/target/riscv/cpu.c b/target/riscv/cpu.c index 08a4d14ea1f..9e9a9603685 100644 --- a/target/riscv/cpu.c +++ b/target/riscv/cpu.c @@ -398,6 +398,14 @@ static const char * const riscv_excp_names[] =3D { [RISCV_EXCP_SEMIHOST] =3D "semihost", }; =20 +const char *riscv_excp_name(int excp) +{ + if ((excp < ARRAY_SIZE(riscv_excp_names)) && riscv_excp_names[excp]) { + return riscv_excp_names[excp]; + } + return "unknown"; +} + static const char * const riscv_intr_names[] =3D { [IRQ_U_SOFT] =3D "u_software", [IRQ_S_SOFT] =3D "s_software", @@ -415,19 +423,17 @@ static const char * const riscv_intr_names[] =3D { [IRQ_PMU_OVF] =3D "counter_overflow", }; =20 +static const char *riscv_intr_name(int intr) +{ + if ((intr < ARRAY_SIZE(riscv_intr_names)) && riscv_intr_names[intr]) { + return riscv_intr_names[intr]; + } + return "unknown"; +} + const char *riscv_cpu_get_trap_name(uint64_t cause, bool async) { - if (async) { - if ((cause < ARRAY_SIZE(riscv_intr_names)) && riscv_intr_names[cau= se]) { - return riscv_intr_names[cause]; - } - } else { - if ((cause < ARRAY_SIZE(riscv_excp_names)) && riscv_excp_names[cau= se]) { - return riscv_excp_names[cause]; - } - } - - return "(unknown)"; + return async ? riscv_intr_name(cause) : riscv_excp_name(cause); } =20 void riscv_cpu_set_misa_ext(CPURISCVState *env, uint32_t ext) @@ -3128,6 +3134,7 @@ static void riscv_cpu_common_class_init(ObjectClass *= c, const void *data) &mcc->parent_phases); =20 cc->class_by_name =3D riscv_cpu_class_by_name; + cc->exception_name =3D riscv_excp_name; cc->dump_state =3D riscv_cpu_dump_state; cc->set_pc =3D riscv_cpu_set_pc; cc->get_pc =3D riscv_cpu_get_pc; diff --git a/target/riscv/tcg/op_helper.c b/target/riscv/tcg/op_helper.c index b8b3e43ccd5..f85f5cd83c9 100644 --- a/target/riscv/tcg/op_helper.c +++ b/target/riscv/tcg/op_helper.c @@ -41,7 +41,7 @@ G_NORETURN void riscv_raise_exception(CPURISCVState *env, CPUState *cs =3D env_cpu(env); =20 trace_riscv_exception(exception, - riscv_cpu_get_trap_name(exception, false), + riscv_excp_name(exception), env->pc); =20 cs->exception_index =3D exception; --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792553097; cv=none; d=zohomail.com; s=zohoarc; b=UxmY0ok33ql32Vqv4gXzAc4t0bokkqGNwrdwbIk95Q7orQ4TNnz0AmKUheFGUQ/qFmn6rTvypjJzr03lCH41ATNCBuPYu4Z2/BgBWDqn37cLFoBhxEXzrmWRuKaVAykxnxHeILAxC79QF0JRoSeu+uA2t1TsVy7dCbmwbu7w9rQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792553097; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=WS9GBvpAE5aOkQ0P64201/OvgyT38KpzzMk50TKNYI0=; b=W4WbvOPI0HqYalTJmpo5qiY2HldcJfkxR4PFlas2gzuyJ5V2/674vu71rMNJM1sZEb4+D3s3+9p8Hm2Q11lXzhgjfM0Etbo0BiI+w2lYSwzcLJpFsS7TxNQqvYFHyQphe5aR0G/jFXw4Dvn/a/HK7gzFsfCSpIlvb8ZlAGafi0Y= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792553097738870.2028301293658; Tue, 20 Oct 2026 20:24:57 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMqN-0007cr-5t; Tue, 20 Oct 2026 23:18:23 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMpR-00055Q-1r for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:17:27 -0400 Received: from mx0a-0031df01.pphosted.com ([205.220.168.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMpO-00031D-7m for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:17:24 -0400 Received: from pps.filterd (m0279867.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2F4OG336925 for ; Wed, 21 Oct 2026 03:17:11 GMT Received: from mail-qk1-f199.google.com (mail-qk1-f199.google.com [209.85.222.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4hedabhrjg-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:17:10 +0000 (GMT) Received: by mail-qk1-f199.google.com with SMTP id af79cd13be357-93caa0ce0cdso40591985a.2 for ; Tue, 20 Oct 2026 20:17:10 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e254ef1casm1941038f8f.7.2026.10.20.20.17.08 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:17:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= WS9GBvpAE5aOkQ0P64201/OvgyT38KpzzMk50TKNYI0=; b=b5DoMiODxmxm9uQe ONadLcqD1GmpbDrhyq3hbgc+ctanKgmoyhNMnZ0TXmJr/thVGdOhJNnq9MwqT5gJ gJYR5CUlgqKvEU0tnMBxR2cRgc1H9fCUZyjrLVgy1AfVaE/JSNXxkQekENrqFvFE YYbvSMkFqz7xLYPwPJJVME6hscX7iHrio7JFM3nF7EYpY8Te++L44pFop033F/MT hBetCBROvBHxNLV9aeZz6xt2PSHnHRkrKpXRUl+9OKz+XKck8kUwk1f42jS9/SI8 pnZhO4MKdRdl2x+Mng6C+iovverqwftZbzPWdMBGSfTJ1+rrKQc9IeAYuP417KIX 7FOqWg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552630; x=1793157430; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=WS9GBvpAE5aOkQ0P64201/OvgyT38KpzzMk50TKNYI0=; b=Li+4PJulEQLRt9NdDOqqSn6q5nlBnoq6n+NORSsdGp9xGjIQdJv8zbOyDYpqL3DVGv eaVZu/EhDudzGj3Kbbe8EQqicj8nOoIJsb2rvHK527SXW0LEgRcBs05Bf3z4CdwyHK48 5eauObFdcgtANGO1RaxbH/iZ9xNrSoY2+WKIBiv3CdzRI27pQabrdpKTuIUO+EEV3+6a kn2rtTi7AzR4d3D34qZ3Ni0lcajJ2H7dZyApIg0achjd7btSUAw2O2llxST9oyLK46Xw H7csQxGHobw6tjj9GJbx3Hx8SSR+GAg8zoRbMJ571iBrvecrN63Krnvu0Yunq8UymgHt alsg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552630; x=1793157430; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=WS9GBvpAE5aOkQ0P64201/OvgyT38KpzzMk50TKNYI0=; b=Y0aeXOfCnY/g6wZCuwr47fmBWhwzlj4Cu32f88h0FlPD49FmK9e/fPlGIkLzhFgc17 V/sLxtmlcCkFDVaOqrJtEMQ5OrDyltEfkDRTT5G+cUww2vin3uIWkk7svqP8wzi4GzKg l56sHJYt3Nj/b9e1n8QSNvy+pz+p8zk0UEb/vadkRayvCQ2wSdQyVWkMR6cffeopvRdB vFQumMO2JIwImbefHab2n2kdccHvEIS2CAGBXDl6NABZFXTWL/+fcN1zV8t1ZZdxM7tF 3cJ0PYpVtIhrShg3rn8V2kMdpumAi6vR6qF1iRPFmRMfmUKPt6K0IUj6Dq90dPqxYCTG CvUQ== X-Gm-Message-State: AFq9FYK1cZmg/pZncXoVl0X/rraZIoiS//8LAE89hnQ21zvvDpdz3vD1 CrLciePYbPx+AbGA6dvBHXb1ZN2oeJEcSgY2blzlEMAN5K9C7F296oKsnTrTO5CTZ4Or9hLDMHH dYI6mmFF2en3xl6Melanr0dDhdAssheLdkFpVTRzW8xQUAa2qsmxJ4lF1L7V7xXjBWb3M X-Gm-Gg: AYBFou37JqaN0MvXAtGzVEsvgc9OlU0R9tbUCJou7Umhglx1gjymEzyC0Qg8J3IVXRZ UmPtbn58aCKaY55a2hlOas9K900/mokDcP19sy6wT21zzykMpbouDsYrdc/mvTfuc0qDcKFDx01 SBgyO8ZypT5FDn/3Zh0EZT0WwuA7laKdc0O6tjSbXQcZEx/wxcLvTrI4vGY/FIUrEPBuFYUkEz0 Yl0nroG1tUsejGkfVy32e3lxREp6LGNINZpV+Iup46mk4IiDOS4qV+JFIzNXO/lFIEhP+hVcoP3 lwklUoH3Ge350l2iTb7kdDUOMyO17C8sM2a8BN2WUJ6QJUefBFcvECnk4Tq2W6KqvzVGPz1ldMV ai/gGIISh7EBBwUznGAnw0Ffe+pVEsoYvZHGRkv9v X-Received: by 2002:a05:620a:370d:b0:93e:78b7:fa4e with SMTP id af79cd13be357-93f57f7ce26mr230156585a.37.1792552629707; Tue, 20 Oct 2026 20:17:09 -0700 (PDT) X-Received: by 2002:a05:620a:370d:b0:93e:78b7:fa4e with SMTP id af79cd13be357-93f57f7ce26mr230154685a.37.1792552629250; Tue, 20 Oct 2026 20:17:09 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 23/33] target/rx: Unify BRK and INT trap handling Date: Wed, 21 Oct 2026 05:13:56 +0200 Message-ID: <20261021031407.24862-24-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX8ybB/OpGhvuc UY9cdzeZXwgoy0OXWTCfh5N0XMu/KluuaOHCIVB0iahLMkPR0iDYfq/0NLtFx693hESDz61Gi3Y RPi6nS905Wqi+/kuRAMmH25wutEM3mE= X-Proofpoint-ORIG-GUID: 4Ekusf8ojsBajHlt3mHr7oikpy4pZCmT X-Proofpoint-GUID: 4Ekusf8ojsBajHlt3mHr7oikpy4pZCmT X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXy6ZHNpqG/AvU mKg+WL6OZiJRipkXx62yRRMDW4YnaggmRY735YD0+c7w0pXAWBUoyrNbYJg+omTtUwwJdoz5fbQ mWjOVOfbEVB9i5LcbiM3oH3T0Bt4siu4geKdtF2QgRwaRwh2jKOQ6E8ZlC6tUm5eEc+Ln9pLE28 7mAp5LHcW2C+05mNmcuiLfEjnKCnKcsPAnJyBTHW93sorzK0U7c37+kCVjp8nFeKvw/Wes3MV72 wVueMoh//IvsbQ4iH3FXIC2JVVa910ymSjbJAtPt8EunsDvSmDtHcRXklaEgpb9oFExrZttpIF9 Z/a4+Kms+wmHZ7zbyATFV1crYODlN18syagVRshWgwuyl59wY4dU8LkFb4COFaffGUuAzVD/Wso UwvUKu8H64K/pObGEp2QvG5x2s900KEJVjWr6DTkyEFOmSNkUJ/hROhiONtQOYH0iTTxjrChu1J Fn1t0Q2QdqgrDRndz8g== X-Authority-Analysis: v=2.4 cv=NLpAaE6g c=1 sm=1 tr=0 ts=6ad82eb6 cx=c_pps a=HLyN3IcIa5EE8TELMZ618Q==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=eoimf2acIAo5FJnRuUoq:22 a=EUspDBNiAAAA:8 a=KKAkSRfTAAAA:8 a=YEB5RgzmAAAA:8 a=jDMzgGwzCE0q-kHIl9cA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=bTQJ7kPSJx9SKPbeHEYW:22 a=cvBusfyB2V15izCimMoJ:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 priorityscore=1501 malwarescore=0 clxscore=1015 impostorscore=0 phishscore=0 spamscore=0 adultscore=0 lowpriorityscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.168.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792553099560158500 BRK is equivalent to INT #0, so route both instructions through the same trap helper. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Peter Maydell Reviewed-by: Yoshinori Sato Reviewed-by: Pierrick Bouvier --- target/rx/helper.h | 3 +-- target/rx/op_helper.c | 7 +------ target/rx/translate.c | 21 ++++++++++----------- 3 files changed, 12 insertions(+), 19 deletions(-) diff --git a/target/rx/helper.h b/target/rx/helper.h index b1ef843be1e..13f019ff81a 100644 --- a/target/rx/helper.h +++ b/target/rx/helper.h @@ -2,8 +2,7 @@ DEF_HELPER_1(raise_illegal_instruction, noreturn, env) DEF_HELPER_1(raise_access_fault, noreturn, env) DEF_HELPER_1(raise_privilege_violation, noreturn, env) DEF_HELPER_1(wait, noreturn, env) -DEF_HELPER_2(rxint, noreturn, env, i32) -DEF_HELPER_1(rxbrk, noreturn, env) +DEF_HELPER_2(trap, noreturn, env, i32) DEF_HELPER_3(rx_fadd, f32, env, f32, f32) DEF_HELPER_3(rx_fsub, f32, env, f32, f32) DEF_HELPER_3(rx_fmul, f32, env, f32, f32) diff --git a/target/rx/op_helper.c b/target/rx/op_helper.c index 5a7a87943fe..fb1fa4ffa69 100644 --- a/target/rx/op_helper.c +++ b/target/rx/op_helper.c @@ -455,12 +455,7 @@ G_NORETURN void helper_wait(CPURXState *env) raise_exception(env, EXCP_HLT, 0); } =20 -G_NORETURN void helper_rxint(CPURXState *env, uint32_t vec) +G_NORETURN void helper_trap(CPURXState *env, uint32_t vec) { raise_exception(env, 0x100 + vec, 0); } - -G_NORETURN void helper_rxbrk(CPURXState *env) -{ - raise_exception(env, 0x100, 0); -} diff --git a/target/rx/translate.c b/target/rx/translate.c index bd445bc0634..0672c5c5653 100644 --- a/target/rx/translate.c +++ b/target/rx/translate.c @@ -2170,26 +2170,25 @@ static bool trans_RTE(DisasContext *ctx, arg_RTE *a) return true; } =20 +static bool do_trap(DisasContext *ctx, uint8_t vec) +{ + tcg_gen_movi_i32(cpu_pc, ctx->base.pc_next); + gen_helper_trap(tcg_env, tcg_constant_i32(vec)); + ctx->base.is_jmp =3D DISAS_NORETURN; + return true; +} + /* brk */ static bool trans_BRK(DisasContext *ctx, arg_BRK *a) { - tcg_gen_movi_i32(cpu_pc, ctx->base.pc_next); - gen_helper_rxbrk(tcg_env); - ctx->base.is_jmp =3D DISAS_NORETURN; - return true; + return do_trap(ctx, 0); } =20 /* int #imm */ static bool trans_INT(DisasContext *ctx, arg_INT *a) { - TCGv_i32 vec; - tcg_debug_assert(a->imm < 0x100); - vec =3D tcg_constant_i32(a->imm); - tcg_gen_movi_i32(cpu_pc, ctx->base.pc_next); - gen_helper_rxint(tcg_env, vec); - ctx->base.is_jmp =3D DISAS_NORETURN; - return true; + return do_trap(ctx, a->imm); } =20 /* wait */ --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792553161; cv=none; d=zohomail.com; s=zohoarc; b=SNAvezKrtVwf9/JJ1khkFOSo2mwBeA8sZ6Jl2trF9PW6UqiQMf4xTNt7V7hk1p5PKJ4/WKvIv7+Uzi4aOBLktfJUCCK7pCUvMUWa+kaukBhkkFPzg6re7XAY0xlKgHdC40dy3kNZbNL1smQjbWHqiSId2W1aTrPVQcFQCbT2ZQ0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792553161; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=sSEy/zV1vSGWM8tSEkQ09OgTFOceEnOpAw1aDiPB/jI=; b=YDInIj6qEvgLAwarz58tFaIQeA772aLcv5Joeaff1NnCRtrvDaPfQtpgV/HQsA8HO19BI1AbuxVkbCGmaEmrpAsHN4/nKJ0G3fzDbvLIgnz0XptE8feq7EI/VVW1gt/Jjr2wsbbdduHSc7CBpLZ9vudPNe0UJqOA/78OgoV184E= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792553161464708.7134480693276; Tue, 20 Oct 2026 20:26:01 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMqT-00086R-8B; Tue, 20 Oct 2026 23:18:29 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMpX-00058s-UW for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:17:33 -0400 Received: from mx0b-0031df01.pphosted.com ([205.220.180.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMpU-00032k-SY for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:17:31 -0400 Received: from pps.filterd (m0279873.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2F5VA3256736 for ; Wed, 21 Oct 2026 03:17:18 GMT Received: from mail-qk1-f200.google.com (mail-qk1-f200.google.com [209.85.222.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4hed9v1rvc-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:17:17 +0000 (GMT) Received: by mail-qk1-f200.google.com with SMTP id af79cd13be357-93f568dee56so65575285a.0 for ; Tue, 20 Oct 2026 20:17:17 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e254efb2csm2565210f8f.2.2026.10.20.20.17.15 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:17:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= sSEy/zV1vSGWM8tSEkQ09OgTFOceEnOpAw1aDiPB/jI=; b=pu5Ei7/1C355w10y 66E22hkk1TYtqCjXOKxT/X4Mfwc3q+bx+00lQOdNPN8WsRLagSFwqaHRRe/qTmak ouV7kerPF4ml/ttm3H4PKj5/dEZdz0ENwNSa9Wj2FRqXcuuj/hu788OBIfjMzmUi GjLxHAZfPK1ujI8UXdKnSm/ZvhPly6Q8AeEOeDwtec3PLn8sHh1aN+U54aqxy0I/ 48KVsu/HW9w07UGwQ24LDPZcWi1nU+ak2jEEMgqH4BGmwlWQVVS1GZ3D//AILzKA gOVno8/aIYDYr8VLLfodjpmnjjO3svQ+yOzgUcv8Oq0TR5y46zX9PcyDXBShUbks zzyikw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552637; x=1793157437; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=sSEy/zV1vSGWM8tSEkQ09OgTFOceEnOpAw1aDiPB/jI=; b=Fc6IX0Dr85uKmVdmixsxmzaRmbRQD+pdBTi+dO+xmbP5in5I9AVt7zBg21eaKSh500 5XKFXqjgR6TCkQQoNTHjwGF8iwjEYoIfXngp/RKgiFtkJFKoTegSORbeLFsPMjjqfdep h5YP5LvjFGhjEH5uFT1KjmKCB6rZS5FfPQHq4av3ZJlckV91/BdaQLuibxxRmCqIl8/B q/hPttZ3AFLRC8YnNix8ogrWzU7hVe6mg5LVQhdD6Sqmn6P7WI6eLXf+SbdFgwQil9KF gpLdckll0Fm4vxYsw+9B3mFqXKaB0Q/RSZVUdOODpItoJ1sDV+An2OFCM0sQB/F41J8S SiXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552637; x=1793157437; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=sSEy/zV1vSGWM8tSEkQ09OgTFOceEnOpAw1aDiPB/jI=; b=f+TEIDfyLPuGSXv3nJy7yGhnxwygDEVDz8ePqFCZZFa4uk2AQTGeS1uZjBF8ZT2cUO mg8WRKcbiy8sjKPDc4Rx0kpRCSdjYqmBq5NmGFSrmnktgh0EBNEeU7iA8e77z517cqOc O3a2Z7qJLhHS3GW907QTHNprg9JnpVP7pngxkmn6z5XGKB51zUCPOM47sqncC1aejt1m zmGCYj4XXThmYMW6h0iaDPHQ+2xNhShRtq2ZoXITbnno+i2qk5U8+lRcgpJjON4wRlZP WYNR+2iR1A+aNJVebzryhV9TtYsvr3jLYtWRDA/pVrYjh8eFHjjJ94ESQCDSZ5dzudg0 wTHQ== X-Gm-Message-State: AFq9FYIpIp54W0xYa9TPJicDUjoikjPiAm/0Lpljtp6n/1HtFCmMuUXx g7XtRkXN1EeUjht82jgglx3TTdIMJb1tmij1/hHuWi+45fm7pgW3C5l4ZgUie/TjAldUCeIH9oi lzyD2liI/0zZZo6vz9F8H0ztza1vFAN0fKLt7IKFxM/sEY5nbUr92YvoqlV36bpWgkr7t X-Gm-Gg: AYBFou1YvI6raBrODfMqUspwF5KshIOUnDu33VHWKs0LJr/muulM3FjZPpbjKRb+RKm yRBiiL1Cw2EAkvcaeL4Jlr44HqnDD6OpyTs+/PWcWMym5R2caLoWjpejHYrZWdHDbc+p4dRuMg9 X5F5U+Gm+Mx/OiG7iDZZU12Wc5MIIma5HsajucTYqs6VmzHuO+Pk5Ivk444o6BuCJfZZ5/vHw6N 9Sy6Tqg4hVEl3GRfIupWWbinvaZXgpj/cmYVad11cPNg0NdI0jcU3Kst7NTJ/Leevy3ITyODRRi 24VqHjyerkg43Aj9otSAwMlS57ZoAzok73RCzjHWY7P4CjUvohclACmgDSKn1DGKkC4AYrSWU5j 9wxKYKQ+YsXM4pPEK2kZM6Qlhx94AJFEZp+CVfpvS X-Received: by 2002:a05:620a:6844:b0:939:3a81:326 with SMTP id af79cd13be357-93f57f4ba2cmr207357385a.37.1792552637060; Tue, 20 Oct 2026 20:17:17 -0700 (PDT) X-Received: by 2002:a05:620a:6844:b0:939:3a81:326 with SMTP id af79cd13be357-93f57f4ba2cmr207354685a.37.1792552636577; Tue, 20 Oct 2026 20:17:16 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 24/33] target/rx: Define exception vector constants Date: Wed, 21 Oct 2026 05:13:57 +0200 Message-ID: <20261021031407.24862-25-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX+QOTrx/u9xVq lGg/mz+07z39HorJl4pbvZxMGc6AWl2GwgT3WN5Qsjzyxfcduzop9JPDrttmFXvLRAuYbD5xQ9/ M8nmz/YTNUTXgQGBezYsGaD1ftxjTT0= X-Proofpoint-ORIG-GUID: uex-xXjmjgRc1lJLsQRlWmAJNur5Iqtp X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX0mAlkJNGhIzi rMRaOniu02p/2TFnYDca/Kxw1xeMCaDev1l7qhpMztohHTYShXxOGrP2xdiVs1xPQEDK5G3t8ds NL8embjQNNCgCVoDIawF+gbPJFgJh2WK68rVP+k/xLeMIs3Olx6CzaQfLL6OLZ+sPNGGKhyc/1e jqUvp44WA1C4Jk31Yh0THw2PjkDk2bB+SR+ybL3QBHwcC31T9LpCbDvOuoiV48DLwK7OqqCIrB0 nTyAd0gdtNzQyP5e1Ez5iTOuAzcY0NROeB8VVvNB5yfVISeywjLVpl+/2nT4AdksnBcFFjISHgB 4s/E9hRFTAHX4vplbBOtGn2kZDmSO84DhmuOJ67ZloaAp9KORMWiDWDlD4BfejYHOIS3udxSj5F 4o12N+Cs8BewnUitQEldhpOilftFnHXPX0+Z24vMLbhJgaYvFV/2jsle/QL6F6ICMCbJxPALg8i H2rCxkxprbz58nu53Ug== X-Authority-Analysis: v=2.4 cv=I6zw19gg c=1 sm=1 tr=0 ts=6ad82ebd cx=c_pps a=hnmNkyzTK/kJ09Xio7VxxA==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=rJkE3RaqiGZ5pbrm-msn:22 a=pGLkceISAAAA:8 a=EUspDBNiAAAA:8 a=KKAkSRfTAAAA:8 a=YEB5RgzmAAAA:8 a=BYMmWKsKsDm6Gxpir0kA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=PEH46H7Ffwr30OY-TuGO:22 a=cvBusfyB2V15izCimMoJ:22 X-Proofpoint-GUID: uex-xXjmjgRc1lJLsQRlWmAJNur5Iqtp X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 suspectscore=0 clxscore=1015 bulkscore=0 lowpriorityscore=0 impostorscore=0 spamscore=0 priorityscore=1501 malwarescore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.180.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0b-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792553162751158500 From: Yonggang Luo Name RX exception vectors and trap ranges, and use the definitions throughout exception handling and exception raising. Assert that exception indexes remain within the defined range before accessing their vector tables. Signed-off-by: Yonggang Luo Co-developed-by: Philippe Mathieu-Daud=C3=A9 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Peter Maydell Reviewed-by: Yoshinori Sato --- target/rx/cpu.h | 13 +++++++++++++ target/rx/helper.c | 21 +++++++++++---------- target/rx/op_helper.c | 10 +++++----- target/rx/translate.c | 2 +- 4 files changed, 30 insertions(+), 16 deletions(-) diff --git a/target/rx/cpu.h b/target/rx/cpu.h index 64ba48a7329..0d9f4898a26 100644 --- a/target/rx/cpu.h +++ b/target/rx/cpu.h @@ -71,6 +71,19 @@ enum { NUM_REGS =3D 16, }; =20 +#define RX_EXCP_TRAP_COUNT 0x100 + +enum { + RX_EXCP_PRIVILEGE_VIOLATION =3D 20, + RX_EXCP_ACCESS =3D 21, + RX_EXCP_ILLEGAL_INSTRUCTION =3D 23, + RX_EXCP_FPU =3D 25, + RX_EXCP_NMI =3D 30, + RX_EXCP_TRAP_BASE =3D 0x100, /* Up to RX_EXCP_TRAP_COUNT= */ +}; + +#define RX_EXCP_COUNT (RX_EXCP_TRAP_BASE + RX_EXCP_TRAP_COUNT) + typedef struct CPUArchState { /* CPU registers */ uint32_t regs[NUM_REGS]; /* general registers */ diff --git a/target/rx/helper.c b/target/rx/helper.c index 0f99279bbaa..bc76dd28ab3 100644 --- a/target/rx/helper.c +++ b/target/rx/helper.c @@ -86,13 +86,14 @@ void rx_cpu_do_interrupt(CPUState *cs) env->isp -=3D 4; cpu_stl_le_data(env, env->isp, env->pc); =20 - if (vec < 0x100) { - env->pc =3D cpu_ldl_le_data(env, 0xffffff80 + vec * 4); - } else { + assert(vec < RX_EXCP_COUNT); + if (vec >=3D RX_EXCP_TRAP_BASE) { env->pc =3D cpu_ldl_le_data(env, env->intb + (vec & 0xff) * 4); + } else { + env->pc =3D cpu_ldl_le_data(env, 0xffffff80 + vec * 4); } =20 - if (vec =3D=3D 30) { + if (vec =3D=3D RX_EXCP_NMI) { /* Non-maskable interrupt */ qemu_plugin_vcpu_interrupt_cb(cs, last_pc); } else { @@ -100,22 +101,22 @@ void rx_cpu_do_interrupt(CPUState *cs) } =20 switch (vec) { - case 20: + case RX_EXCP_PRIVILEGE_VIOLATION: expname =3D "privilege violation"; break; - case 21: + case RX_EXCP_ACCESS: expname =3D "access exception"; break; - case 23: + case RX_EXCP_ILLEGAL_INSTRUCTION: expname =3D "illegal instruction"; break; - case 25: + case RX_EXCP_FPU: expname =3D "fpu exception"; break; - case 30: + case RX_EXCP_NMI: expname =3D "non-maskable interrupt"; break; - case 0x100 ... 0x1ff: + case RX_EXCP_TRAP_BASE ... RX_EXCP_TRAP_BASE + RX_EXCP_TRAP_COUNT = - 1: expname =3D "unconditional trap"; } qemu_log_mask(CPU_LOG_INT, "exception 0x%02x [%s] raised\n", diff --git a/target/rx/op_helper.c b/target/rx/op_helper.c index fb1fa4ffa69..06841088ac0 100644 --- a/target/rx/op_helper.c +++ b/target/rx/op_helper.c @@ -115,7 +115,7 @@ static void update_fpsw(CPURXState *env, float32 ret, u= intptr_t retaddr) enable =3D FIELD_EX32(env->fpsw, FPSW, ENABLE); enable |=3D 1 << 5; /* CE always enabled */ if (cause & enable) { - raise_exception(env, 21, retaddr); + raise_exception(env, RX_EXCP_ACCESS, retaddr); } } } @@ -432,17 +432,17 @@ void raise_exception(CPURXState *env, int index, =20 G_NORETURN void helper_raise_privilege_violation(CPURXState *env) { - raise_exception(env, 20, GETPC()); + raise_exception(env, RX_EXCP_PRIVILEGE_VIOLATION, GETPC()); } =20 G_NORETURN void helper_raise_access_fault(CPURXState *env) { - raise_exception(env, 21, GETPC()); + raise_exception(env, RX_EXCP_ACCESS, GETPC()); } =20 G_NORETURN void helper_raise_illegal_instruction(CPURXState *env) { - raise_exception(env, 23, GETPC()); + raise_exception(env, RX_EXCP_ILLEGAL_INSTRUCTION, GETPC()); } =20 G_NORETURN void helper_wait(CPURXState *env) @@ -457,5 +457,5 @@ G_NORETURN void helper_wait(CPURXState *env) =20 G_NORETURN void helper_trap(CPURXState *env, uint32_t vec) { - raise_exception(env, 0x100 + vec, 0); + raise_exception(env, RX_EXCP_TRAP_BASE + vec, 0); } diff --git a/target/rx/translate.c b/target/rx/translate.c index 0672c5c5653..a350f6b4d26 100644 --- a/target/rx/translate.c +++ b/target/rx/translate.c @@ -2187,7 +2187,7 @@ static bool trans_BRK(DisasContext *ctx, arg_BRK *a) /* int #imm */ static bool trans_INT(DisasContext *ctx, arg_INT *a) { - tcg_debug_assert(a->imm < 0x100); + tcg_debug_assert(a->imm < RX_EXCP_TRAP_COUNT); return do_trap(ctx, a->imm); } =20 --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792553109; cv=none; d=zohomail.com; s=zohoarc; b=lrLo7YaGx3NlF11ar3WU2lArB0ntWbQhD+LXnsIzJNKraB8evH65ke3GTjsv9BXyR1Q6/395f0Fshjos6SLN3gm4yYm9PCDJQspyBWhGH7fESnwrP8ME4/xZA97rwT/oGsoFz9oTTh4dxdR9ACgO08wd/Zy+eRzk1RgUnP+FZ7A= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792553109; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=+EK3zscJwoQQDbnM5hHAO2MOpUzNFtj5kae7Svd/g0k=; b=BJ3zhmOf6xXDhJJcKYXdYd/T2f7ixYvYKfYb+hD6D9cxb9vGv8CriazUEpDAwCbAqJyeinr+wZBKJTK+Mjzjcbjujf9wJNxZ0/dqDGY0FHdo5a43oZqUtHh9T7Y/9PwmQxYzXIBPM4thUKCEursQse4OZCnViE5rMVITa9tx+8c= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792553109273355.1544155297329; Tue, 20 Oct 2026 20:25:09 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMqX-0008Ns-4C; Tue, 20 Oct 2026 23:18:33 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMpg-0005dy-Az for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:17:40 -0400 Received: from mx0a-0031df01.pphosted.com ([205.220.168.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMpd-00034C-5M for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:17:39 -0400 Received: from pps.filterd (m0279866.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2EvXS2562752 for ; Wed, 21 Oct 2026 03:17:25 GMT Received: from mail-qk1-f199.google.com (mail-qk1-f199.google.com [209.85.222.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4hebyd23we-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:17:25 +0000 (GMT) Received: by mail-qk1-f199.google.com with SMTP id af79cd13be357-93caf7856ffso76185685a.3 for ; Tue, 20 Oct 2026 20:17:25 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4a1fcd70027sm11156995e9.0.2026.10.20.20.17.22 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:17:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= +EK3zscJwoQQDbnM5hHAO2MOpUzNFtj5kae7Svd/g0k=; b=UL6IpIKDVMK/gvjs 5Zn1/Rps2XWNe8tZ7wTd7wYlVYop6wZGa5afRzFe8zqm9JqnZHdUQlOJQFnF3rd7 u6yaFa0kOwYlVc9zi6+vPOSFAHtuIsGVZDnCEohHuAMUAtU8AgWikTy5zIVLzfbT L4A9zyrDzDZhBoC69URi76pENbTYDJjtJNB3nZUo/NqnY8WwLAqV9dSrdQiEDWvg 5D+PEV1K8vgY4AFMohXOmFVmOLR0PfykRlhtj+PLuZs8lpNXXFW3frkDqFkScQZS ovJBT2e45aPTbJOvUXPcm3BQK59PeEbLSU8SZUp5sU1nIthTVsS8u+JPEW/aleat zT9r9g== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552644; x=1793157444; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=+EK3zscJwoQQDbnM5hHAO2MOpUzNFtj5kae7Svd/g0k=; b=QO6RNLXwCrALX/JJS7vVPfNeuuH0duS2lq84pL9wp1wcI62+j7RZJm2H6u9lKqNIaH MVEwCzfZHFysi+AMiQUlcP+TooqaxMp+BvLDfFbzMyDVJ5gHOpRMfJwKbSx7r7p7Y7q0 w0ZN8AcbU+WUCZkbt5diV687R5wNg8pfEdV+z5gLiTn3YemdLoH21zzq41LQxeNClokU KnBuNlm/7iXvPOzWANlYslIsaajB+SGbRDMRAz+DwN9+QOMAwieJeMI9gscO1U4q95c5 agblS8RMX4nQQEM7cLlhIfUkoNq/O7k6/KzcjYM7CFz7eB/qL1N2JbWq6hpmwS7Zq2X2 AHxw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552644; x=1793157444; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=+EK3zscJwoQQDbnM5hHAO2MOpUzNFtj5kae7Svd/g0k=; b=mqGwVM7+IUy38XGNEPrDcL0KTz1pb9M+vst+UWNg3Nxj5Rn///g5KJfkksnmh6b049 56/5V0yU3PZHASG7UpSm+fD1/EQWgrfw4JfXnwINOcwhSdOIBGM8IafwnlRVgE6AQAKU COgU0MA+2pubhdmnv7UbbtRCv7/WnTVurK/YkbMW3vWxofi+KaYYrko8g4HIfjrk10aM cJCzHMifpubdIVIhTVd6vtTcgBsWrXN2wO4j4h23UZIJDa4TjtrHcIXfB1/t4fxlHCIi BjRgxvo3CDuUYrL227CTk8NhV8UmlyrbqIurw4nX7J4Li/ljvl6N6bLBBdzgQXURB86s Wjfw== X-Gm-Message-State: AFq9FYKwLOnnaWVzRGSWHKlKQ/6c6dYYiQsx8iLhO05R95uWqnDyRzgi Z7qDyeIa5XDiNnvV0JWS97Ihx6hiHnyKAtkM/91siGIbUAs2PXtnL7bDYkHyVnbsYXfYvmaWVmb gZ8ywCLstNlJhUABiKQLS4pvL2PZVX/Tuf3XPG1lc42VclgnSMJVmGuHHvkaE28fHfvF3 X-Gm-Gg: AYBFou3crhOEE2b5nlX5wZ5/oK2GAALsR1fWSSSnukTBBCDRUETui+a525/MgCc0mDv bmw0AmFTju5DB97L6Ls1mUXJU4V9jtvZ2fg3yYF0NXeD/FXWIMHOJWKS2zU+laABrKWbo7tJkNx 8lDsuvX0mKaG+kZT9m5wy18N5GHnUAWxR9rwm06GZGrml6P6IamTeF0eIs5nxpPJLInywKdgzoJ fpZrlnfkJqxCT5a5QIMPJoAADoSJgJgeoygRg2Fcrl1mysldOGxJ04OhIZinJ4z2pI79ryuwXSX C7Cm9KzddsAbzkabqKFYlpW8NTuFAcrYaD5kxnkN2gVC+AAndo13t9Bs9ioqssmnDO/PHtg9WAL 8CPpisOy8x7I21elEfrwaCrJrdYg7rA1OO8NxPKEy X-Received: by 2002:a05:620a:261d:b0:93e:fd69:9a93 with SMTP id af79cd13be357-93f57f84f2fmr203776185a.31.1792552644468; Tue, 20 Oct 2026 20:17:24 -0700 (PDT) X-Received: by 2002:a05:620a:261d:b0:93e:fd69:9a93 with SMTP id af79cd13be357-93f57f84f2fmr203773785a.31.1792552644023; Tue, 20 Oct 2026 20:17:24 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 25/33] target/rx: Register CPUClass::exception_name() handler Date: Wed, 21 Oct 2026 05:13:58 +0200 Message-ID: <20261021031407.24862-26-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX6FSNj9m9qGKj vh8Prb3UwUHlCVSzuy2CjcqPX5L33Z3lEb8G34RLErHgLlaSzhka6/dKHNMYL7U+BRAo6Pm13o/ +tEDBmBjydb5KQYGx0NgYe640C5IzNBK/byOsRmfWs9Iivd0dyAHip6SBby5QnhphAeht1Of5it WWCRbSxHsaZu2f/E+TNyAYkpzc3AZQaphFrbXQ+4sc+LR0Qql6RofICMqEqmp8Kr4WenUgCPzjc 0Rywz8BjIBWzfxcptQX8ZXTQCmIqTUZfIaEX+qgQ5en+7hP6oGbMWarVOljDKAxxrcKIUO95lZi F+tuLxm62Kpz8iPo+KigRGjoDKVVy7/oGcw9s7c9W6AiKMetVtVdXjpNNZQiwZbHoIRQKF3haBD qTm6hskEStoS4WspBJOItt54bX/ObARmEIFiFXQs4fNdrtAAfJEL3eboiDIdIzWNbgks9Zf7iAe PVxe7KcJAAzHRgo/V5Q== X-Authority-Analysis: v=2.4 cv=TdsDJhQh c=1 sm=1 tr=0 ts=6ad82ec5 cx=c_pps a=HLyN3IcIa5EE8TELMZ618Q==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=YMgV9FUhrdKAYTUUvYB2:22 a=EUspDBNiAAAA:8 a=7bFQwIbWrMmj_3m7X6gA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=bTQJ7kPSJx9SKPbeHEYW:22 X-Proofpoint-ORIG-GUID: QkPhJ3kFFK54jmyI28TL-Yz-hOsW2KJh X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX0JliFme8tHe6 ifE5ESVjlKGUZvnwbShCPthXWRs4lkV+ZkiCPgXzTraeNnPNjrgZ0omqahcqXN0+/g9vGr2gP9B qLa8Cgpo3kgkC2sCyH1O5LSWf9OXwEA= X-Proofpoint-GUID: QkPhJ3kFFK54jmyI28TL-Yz-hOsW2KJh X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 adultscore=0 phishscore=0 impostorscore=0 spamscore=0 clxscore=1015 malwarescore=0 priorityscore=1501 lowpriorityscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.168.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792553109699158500 Factor rx_exception_name() out of rx_cpu_do_interrupt() and register it as the CPUClass::exception_name() handler, so the common exception logging can resolve RX exception codes to names. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/rx/cpu.h | 1 + target/rx/cpu.c | 1 + target/rx/helper.c | 53 ++++++++++++++++++++++++++++------------------ 3 files changed, 34 insertions(+), 21 deletions(-) diff --git a/target/rx/cpu.h b/target/rx/cpu.h index 0d9f4898a26..06208380621 100644 --- a/target/rx/cpu.h +++ b/target/rx/cpu.h @@ -147,6 +147,7 @@ struct RXCPUClass { #define CPU_RESOLVING_TYPE TYPE_RX_CPU =20 const char *rx_crname(uint8_t cr); +const char *rx_exception_name(int excp); void rx_cpu_do_interrupt(CPUState *cpu); bool rx_cpu_exec_interrupt(CPUState *cpu, int int_req); hwaddr rx_cpu_get_phys_addr_debug(CPUState *cpu, vaddr addr); diff --git a/target/rx/cpu.c b/target/rx/cpu.c index 9b8473d71cf..bcaf6659ac5 100644 --- a/target/rx/cpu.c +++ b/target/rx/cpu.c @@ -245,6 +245,7 @@ static void rx_cpu_class_init(ObjectClass *klass, const= void *data) &rcc->parent_phases); =20 cc->class_by_name =3D rx_cpu_class_by_name; + cc->exception_name =3D rx_exception_name; cc->dump_state =3D rx_cpu_dump_state; cc->set_pc =3D rx_cpu_set_pc; cc->get_pc =3D rx_cpu_get_pc; diff --git a/target/rx/helper.c b/target/rx/helper.c index bc76dd28ab3..ed9cadc0bd4 100644 --- a/target/rx/helper.c +++ b/target/rx/helper.c @@ -24,6 +24,37 @@ #include "hw/core/irq.h" #include "qemu/plugin.h" =20 +const char *rx_exception_name(int excp) +{ + const char *name; + + switch (excp) { + case RX_EXCP_PRIVILEGE_VIOLATION: + name =3D "privilege violation"; + break; + case RX_EXCP_ACCESS: + name =3D "access exception"; + break; + case RX_EXCP_ILLEGAL_INSTRUCTION: + name =3D "illegal instruction"; + break; + case RX_EXCP_FPU: + name =3D "fpu exception"; + break; + case RX_EXCP_NMI: + name =3D "non-maskable interrupt"; + break; + case RX_EXCP_TRAP_BASE ... RX_EXCP_TRAP_BASE + RX_EXCP_TRAP_COUNT - 1: + name =3D "unconditional trap"; + break; + default: + name =3D "unknown"; + break; + } + + return name; +} + void rx_cpu_unpack_psw(CPURXState *env, uint32_t psw, int rte) { if (env->psw_pm =3D=3D 0) { @@ -79,7 +110,6 @@ void rx_cpu_do_interrupt(CPUState *cs) qemu_log_mask(CPU_LOG_INT, "interrupt 0x%02x raised\n", env->ack_i= rq); } else { uint32_t vec =3D cs->exception_index; - const char *expname =3D "unknown exception"; =20 env->isp -=3D 4; cpu_stl_le_data(env, env->isp, save_psw); @@ -100,27 +130,8 @@ void rx_cpu_do_interrupt(CPUState *cs) qemu_plugin_vcpu_exception_cb(cs, last_pc); } =20 - switch (vec) { - case RX_EXCP_PRIVILEGE_VIOLATION: - expname =3D "privilege violation"; - break; - case RX_EXCP_ACCESS: - expname =3D "access exception"; - break; - case RX_EXCP_ILLEGAL_INSTRUCTION: - expname =3D "illegal instruction"; - break; - case RX_EXCP_FPU: - expname =3D "fpu exception"; - break; - case RX_EXCP_NMI: - expname =3D "non-maskable interrupt"; - break; - case RX_EXCP_TRAP_BASE ... RX_EXCP_TRAP_BASE + RX_EXCP_TRAP_COUNT = - 1: - expname =3D "unconditional trap"; - } qemu_log_mask(CPU_LOG_INT, "exception 0x%02x [%s] raised\n", - (vec & 0xff), expname); + (vec & 0xff), rx_exception_name(vec)); } env->regs[0] =3D env->isp; } --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552803; cv=none; d=zohomail.com; s=zohoarc; b=UVMBuulPYdbE3YsinSUVFZV8uQe3ZB3AZIiQr3f6I9z6dZng3W7XPqHyznNY61gs+UFPoFW9VP/WZsS9eEncVJC10Sm2MOhODlAEkgfv19Ak2uYxptE5Jy8UdmbSlg+4lxkvYBrSI+XjJmx7D4HidxHCuNnA31Jn/0P8JdYkHfM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552803; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=f+unoWEpyvuNLBR69b+ztcLrqtjbmc4XhPLbiXQofKQ=; b=RvmxCJxQ2kduRIi3+nyqu15PS7dLSJl3vhOutwwYdeJ99Q5Svp9fruM8420hZx/a9MPVGcCFpPpi0wkNrD15vMSM7oiyItEggA+f5W9fGY2dg1p2CQSA7moUo6uSb5tW5GtVRboRS9Z5Gqeu+A/wBx//nRQdDIr90ooAwJGt19M= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552803780486.12876331238795; Tue, 20 Oct 2026 20:20:03 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMqe-0000Pt-VE; Tue, 20 Oct 2026 23:18:41 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMpo-0006AQ-Ka for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:17:48 -0400 Received: from mx0b-0031df01.pphosted.com ([205.220.180.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMpl-00035M-Ep for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:17:48 -0400 Received: from pps.filterd (m0279871.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2me8x4061147 for ; Wed, 21 Oct 2026 03:17:34 GMT Received: from mail-qk1-f198.google.com (mail-qk1-f198.google.com [209.85.222.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4hedajhrgg-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:17:34 +0000 (GMT) Received: by mail-qk1-f198.google.com with SMTP id af79cd13be357-93f559420f3so33739485a.0 for ; Tue, 20 Oct 2026 20:17:34 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e2581f0d4sm2394749f8f.13.2026.10.20.20.17.30 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:17:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= f+unoWEpyvuNLBR69b+ztcLrqtjbmc4XhPLbiXQofKQ=; b=VYJthidcj55P1Nvt 49DJMSwTJWp4BzlRmHsw5B/raEhyRjIQtSvEAby/RSWMNABvtf9viZ8CfU0tnR6+ mjuM8UryWJ1K4zRFCz+WGzTti9XeBx9zSw9e8Xd5XIPatngx2SvgDxSDyVLgEGTC Rnjj2RiOVh7ydKGaLtDjqJ7BjYzybQ/wZGvHqmlx0kUlWpOnj2OQha4+O830giia PsZApRndr8sqSeTX0VOsQ866hnbMLvaFrLnH58UOQDfDtT1EMLHWUX20egaqdkgQ 1BQ/LWenqoM1p9p8BYBDDk9cj8fsGcJVCOPcZCMcBinnBhUyxXdnDxXaZ5urV/Bv ns9rYw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552654; x=1793157454; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=f+unoWEpyvuNLBR69b+ztcLrqtjbmc4XhPLbiXQofKQ=; b=F0Dlmefp+qDwHWWSjq7nraF04YTcpcCSbOWYtl2NN5P+LMWl1hMJtg7TLh+pErDCmK 5qmghQPDJqRi3iKXmClhqFmFNClYHlwoKMQisPm64B/qCS+YcQPnwNEXAx01r212Gtwp z/b6Phro7pfvcRz9lflvrRW7uGXJM2giPPiiMqvH/SKXyTcg01TMTyFO+0bR75vXo+WG VwqJ1Zj/yFfkgEL60EXetg4NotpdG5C6AdXoprzSKY5FGK58s3esPGtIY+vF9xETndZb Uwbi/bEvL4dfaPvI7FZBSmSNjPDFLs3oQ9f+O+G0sEyyFAk7Vp1VLhSr8QLTc7i/3sgG QxfA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552654; x=1793157454; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=f+unoWEpyvuNLBR69b+ztcLrqtjbmc4XhPLbiXQofKQ=; b=apts8Fk2MnC48mSLeRggW8ZP8850HMKAphD+kxFKQJw7F61j0lr84q8DCOIIxVrKX2 2Y/iKpMFlPeMqKagtApQ9WLzshlPv27LKfPZoU+Z4Eyh8H0+MpOqBpZDexyBHGN5SsVf wAEu/XeJV/OmSLgqvvD/kAGhUZreBreQXZxxu8RgpjuhfNzskcyG7voDQNx1zbJwmBZ6 luu4RHiXXcqIQj76guxxFsFPb6r3LlTev94SvkfR437HP1K2V+w4LY/+nw+Aj0T6vD1Z jS2N/fCEO/+T6nENLK4drOjpizqfVhvWxIgmFrzIaFAxbJ9/z8eUKeYqfhh3h8GBUGvf pO3w== X-Gm-Message-State: AFq9FYLT7DGbH5WY4ZcBFFVq9Qkofs+X9IeEvlbWh2PQLRwICZcZ3z+a bgS6+mHSanwEMlT04Kq1p20t/oin+k/ctKW+FJ7WH81sHL2fqrRTM0QiRi/bh6yn3BXad6ag8My Ks3HEzQRLd2ZI3jsCpB2vdDkL2CzQmXB1jOgCpDTnWixBxrCP7gekMMcC6xRUmSbdeXCh X-Gm-Gg: AYBFou03m83g1yXeQWZBv1hJsYRPa7u4l2rCf0knfkrneM/HrE2tpPnObK0x7PMs6me EQKdZsIpfC1FPbVb+wMIelcLb0fqlGNE7rs5n8JBRbnmucgyHf7P6pC655UMWC3xTQu564aRXz4 kGyrxXGm6wBLj8lwWufvo2E99mIMUduJjVpuDhfXH8QZfPuubrGJ+V/MeZv2B6NxvJSfwoEQlpO Q9+METh3iJpvcVU83nlLfc7fZVesw/KJcKlvGwMhLYi73m0TYJb/cU4DqPHv236wxC5/tXVR1IS XxVbq0nu/j/4ddBHKpsmqAz0jNgL16e2LWYLAZmCqFzor8dyPcF8S6DZ1fRB06u25xry8P1ctl1 KsiJkoC2SXpTwyxh5ZOP9LmhsVA0j5Xoc3AGxqPrp X-Received: by 2002:a05:620a:4547:b0:93e:c12c:fbd0 with SMTP id af79cd13be357-93f57fb9e65mr198326885a.76.1792552653576; Tue, 20 Oct 2026 20:17:33 -0700 (PDT) X-Received: by 2002:a05:620a:4547:b0:93e:c12c:fbd0 with SMTP id af79cd13be357-93f57fb9e65mr198324985a.76.1792552653094; Tue, 20 Oct 2026 20:17:33 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 26/33] target/s390x: Implement and register CPUClass::exception_name() Date: Wed, 21 Oct 2026 05:13:59 +0200 Message-ID: <20261021031407.24862-27-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX7YYM5gE1kBgX DeCjAKOHJ2zVIREFaXSF8rQNtCpu5It1cxPAQV5QepDWTyGkcyEMkSKC/qDwhxdYbHGIQuIEH5i ogfMCcmNAuQxdUk9f1CIaqZvOUjiuDc4dhe95yT99Ew+HHGlWJ+qkZOROm4KTFFtkCQiCWvxoPC 9Ws6PXrtgAu63RgwWUfl8OhKL3Qc6srqvkJMrZABOW8a3YaJ+c0JRKClfyC1DsTCVS+fG34po/I hRRKZS/C+/ue15KBkkJoBLcWKakfonRaXaoMpt3aSa9yvvpZTpv0SjekQSjz+1WvmTQm0hOC+QS xySgK3ZM/1WXuY6euqrkpt5EYxWiIGTKq3ByHhwVRSm6jh5fuyJz0NMEMo0tkak8Ldf63AuLKjb fNu6gLQq3gRcpit83Z9WLkipykncDl0TOJkrP33OT3U12TXArDPNJPs6nBR6tL7Z4hFTh6AshHU pVzIFUhv2RRYwooRFGg== X-Proofpoint-GUID: P9XN2FSdAqSiJ4HG819xA_XnBwHSopIm X-Proofpoint-ORIG-GUID: P9XN2FSdAqSiJ4HG819xA_XnBwHSopIm X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXyFsWPET83wTm BFUNVWfiuxYsS7FDeMrhPNWK5cQLiZeagXgmQxQCIjqcXRK1t3LMYY5O9T4f7TCOzVI+CESGxQ3 Bex4v61555H54ww/s0k6lzGhDbCv/2I= X-Authority-Analysis: v=2.4 cv=HrTjiETS c=1 sm=1 tr=0 ts=6ad82ece cx=c_pps a=qKBjSQ1v91RyAK45QCPf5w==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=3WHJM1ZQz_JShphwDgj5:22 a=EUspDBNiAAAA:8 a=lKt1HvW_8kBegW_OfZ4A:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=NFOGd7dJGGMPyQGDc5-O:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 clxscore=1015 impostorscore=0 suspectscore=0 bulkscore=0 adultscore=0 priorityscore=1501 spamscore=0 malwarescore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.180.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0b-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552805691158500 Implement s390x_exception_name() and register it as the CPUClass::exception_name() handler, so the common exception logging can resolve s390x exception codes to names. Use the new helper in s390_cpu_do_interrupt() and helper_exception(). Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/s390x/cpu.h | 2 ++ target/s390x/cpu.c | 1 + target/s390x/interrupt.c | 15 +++++++++++++++ target/s390x/tcg/excp_helper.c | 6 ++++-- target/s390x/tcg/misc_helper.c | 3 ++- 5 files changed, 24 insertions(+), 3 deletions(-) diff --git a/target/s390x/cpu.h b/target/s390x/cpu.h index ef73b15218e..37b6e541312 100644 --- a/target/s390x/cpu.h +++ b/target/s390x/cpu.h @@ -437,6 +437,8 @@ QEMU_BUILD_BUG_ON(FLAG_MASK_PER_IFETCH_NULLIFY !=3D #define EXCP_IO 7 /* I/O interrupt */ #define EXCP_MCHK 8 /* machine check */ =20 +const char *s390x_exception_name(int excp); + #define INTERRUPT_EXT_CPU_TIMER (1 << 3) #define INTERRUPT_EXT_CLOCK_COMPARATOR (1 << 4) #define INTERRUPT_EXTERNAL_CALL (1 << 5) diff --git a/target/s390x/cpu.c b/target/s390x/cpu.c index 85afc5dec9a..275cc6cd53b 100644 --- a/target/s390x/cpu.c +++ b/target/s390x/cpu.c @@ -408,6 +408,7 @@ static void s390_cpu_class_init(ObjectClass *oc, const = void *data) &scc->parent_phases); =20 cc->class_by_name =3D s390_cpu_class_by_name; + cc->exception_name =3D s390x_exception_name; cc->list_cpus =3D s390_cpu_list; cc->dump_state =3D s390_cpu_dump_state; cc->query_cpu_fast =3D s390_query_cpu_fast; diff --git a/target/s390x/interrupt.c b/target/s390x/interrupt.c index d7e3fd45e4b..e00ec93cbdb 100644 --- a/target/s390x/interrupt.c +++ b/target/s390x/interrupt.c @@ -19,6 +19,21 @@ #include "hw/s390x/s390_flic.h" #endif =20 +const char *s390x_exception_name(int excp) +{ + static const char * const excp_names[] =3D { + [EXCP_EXT] =3D "external interrupt", + [EXCP_SVC] =3D "supervisor call", + [EXCP_PGM] =3D "program interruption", + [EXCP_RESTART] =3D "restart interrupt", + [EXCP_STOP] =3D "stop interrupt", + [EXCP_IO] =3D "I/O interrupt", + [EXCP_MCHK] =3D "machine check", + }; + + return ARRAY_ELEM_OR_NULL(excp_names, excp) ?: "unknown"; +} + /* Ensure to exit the TB after this call! */ void trigger_pgm_exception(CPUS390XState *env, uint32_t code) { diff --git a/target/s390x/tcg/excp_helper.c b/target/s390x/tcg/excp_helper.c index d952bb20cf1..83fe65e1f8c 100644 --- a/target/s390x/tcg/excp_helper.c +++ b/target/s390x/tcg/excp_helper.c @@ -508,8 +508,10 @@ void s390_cpu_do_interrupt(CPUState *cs) bool stopped =3D false; uint64_t last_pc =3D cpu->env.psw.addr; =20 - qemu_log_mask(CPU_LOG_INT, "%s: %d at psw=3D%" PRIx64 ":%" PRIx64 "\n", - __func__, cs->exception_index, env->psw.mask, env->psw.a= ddr); + qemu_log_mask(CPU_LOG_INT, "%s: %d (%s) at psw=3D%" PRIx64 ":%" PRIx64= "\n", + __func__, cs->exception_index, + s390x_exception_name(cs->exception_index), + env->psw.mask, env->psw.addr); =20 try_deliver: /* handle machine checks */ diff --git a/target/s390x/tcg/misc_helper.c b/target/s390x/tcg/misc_helper.c index f1c8563af00..a01c5d894e7 100644 --- a/target/s390x/tcg/misc_helper.c +++ b/target/s390x/tcg/misc_helper.c @@ -61,7 +61,8 @@ void HELPER(exception)(CPUS390XState *env, uint32_t excp) { CPUState *cs =3D env_cpu(env); =20 - HELPER_LOG("%s: exception %d\n", __func__, excp); + HELPER_LOG("%s: exception %d (%s)\n", __func__, excp, + s390x_exception_name(excp)); cs->exception_index =3D excp; cpu_loop_exit(cs); } --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552806; cv=none; d=zohomail.com; s=zohoarc; b=Ep8irBtAQbPOHyxOHGohUyP00lmFxBQXn1SuveC0N7FjL5c1Ahj6slOkjOfBNXphwfhtm5Lp5z3w+EkP2vhoi7jfr2RIiDl3OVUxoiFUHfzK8PkUnx5RkpPXBjLD3bs6G09nxzyU0odUkaalKnUEoq6RIiA/BJvy4yfpj6hg4j8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552806; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=1O4lnK+uCvAK73GwAxFUIHoy4sAS46e0qdnKIvZvS+k=; b=gbBOc64ex1vKIelE86cvgfMyojl5Xuqb8DNmnnbuPhXni2Cpxbmq7jiy7yqDLw3rPoN6LZz3jkuOzh1sdwhvJjBxg2YnHTRjXtp4357ABWDvBCZLLlX8nEIvTI7I4sRpRmBObV3l/LiaqzTWSH0jMCmowSaRWaPyo5F7mboeVtw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552806030724.9889534176039; Tue, 20 Oct 2026 20:20:06 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMqi-0000h3-5K; Tue, 20 Oct 2026 23:18:44 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMpy-0006k8-0r for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:17:58 -0400 Received: from mx0a-0031df01.pphosted.com ([205.220.168.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMpv-00036w-9g for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:17:57 -0400 Received: from pps.filterd (m0279867.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2F4rh336950 for ; Wed, 21 Oct 2026 03:17:44 GMT Received: from mail-qk1-f197.google.com (mail-qk1-f197.google.com [209.85.222.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4hedabhrmh-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:17:43 +0000 (GMT) Received: by mail-qk1-f197.google.com with SMTP id af79cd13be357-936aa34873bso60093185a.3 for ; Tue, 20 Oct 2026 20:17:43 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e258426f4sm2593871f8f.54.2026.10.20.20.17.39 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:17:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= 1O4lnK+uCvAK73GwAxFUIHoy4sAS46e0qdnKIvZvS+k=; b=giOSnMFMRASduHKi 8yvAoYrsynd6JvAswbY6HWlNzr6LIqSHphjU4+qAiLtenkqSKiQ14/69mN9Y87Ze tdURaOr0npE6ITvnW4ojKjPSz7KNeVdkDxnQNUf5ilSFUTf/FWv2WWnPn+3KOWX9 odqp3I9Ki4jWdIrsmPRNLyuEJmFxZpo/HnvfMoug20d3kOWYErhvUKgoB4a6MRYZ DoA8nQVd1+FFmqcjepCvIJrwA6lbmntPcNwEQXwTfttYsyY296YZDzm/Fje+P097 iNDhq1FEBKQAlCkkbAh40FEveg7juuB+7vYDgy3lzRh4hg7xaEc33NiSGPKgqQDg Q0bOTw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552663; x=1793157463; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=1O4lnK+uCvAK73GwAxFUIHoy4sAS46e0qdnKIvZvS+k=; b=afGUZB50qpzGbAhO1xxDNYNnvUTSunlnHSN24m4BE7/jjQcg7IMmdKhYZ6U70g41q/ awcagf2sAT9XQ35kWKSF6fc8Hhwj1a/zrN4WOreLKgqyKFnSEjbhiezDXO4904bxRl5T uTNW2fmZU9BCJ4smyrHw69PJlf8AsVat03F33Bnj9Vgqnc8k7oc4tNYYTz4jNaAMZr9S 2af4PvRxITrXSkjTI1b56aNTmVnKoBvNQroDgZGqAcylabli33nLbjoDNN2NbzahcjMu 37ubHjLEUxwKqx0+vEhh4RYCaDfynKAQWMc90Is+5e8/LfXW7L08MVMk4L6+4SLQH/n9 zb6Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552663; x=1793157463; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=1O4lnK+uCvAK73GwAxFUIHoy4sAS46e0qdnKIvZvS+k=; b=UznizD/EwEiZBp8Z1lq0eS9WzSH+8LninYlfT3IGEm3Bqnr2CchoIWIM4cO1HLiM3/ wF45R6Oq3Z0gekKBHuYIICADnpi5eCfDpbyQ4aZSI3wvZPN/5SPNFReMnns4RvKPJAF0 lggiSZzWxt46XoPERrUo0j9XuOKqLVxcU43DDTzoBePEOGsFBZD2ejVRE7jiQqP24g/u POSs44UUsikOksm5u84EXE03x0byhvYFt3XA4iTiOk9DyVuiP1l2XgL6QFWwYlTZnWrK yaSVHySyn38ea+/hy/hHSsKAOivCr6GaYQ2Tev1d1otgDExaNNGeZ23vG2J3+VNsJEQM Tf4g== X-Gm-Message-State: AFq9FYJTMZ//CnlMOMnPlvw68LoP8C1J9sB8uoKv6RKPQ3h+JGEW7yEU 5kpHwQyCm5PaJHYwiegX3oZqHUcGJwplZ7KG+mWULdF7+ZlGB33E8GYN02x7+lkzKpIF9LpSUq7 3lUuEMq77rLrEg2TM/64q6CdmFNaroQFy/nBvQM8y4M3VqCYTD+6PnILtXyr1vzohmrT4 X-Gm-Gg: AYBFou2wOVLmgYYe2xZ07/aGK5vangNVJt9cge31qpPpv91KF3rTHO1eyMk6e7I89M1 0ReJdTt2XP3dVN7rJ8I9AVWsfL7MYeG47qZj2yxzUXiDkSD/YX0+yJrr7kjs0AszCMHTTjmBBXt Kvm3vQFC2y6X4Cz+mU3UW2RtLof1UgcQWxRptDRdapFWsduxC10d66Ez0zZ//d5AGdPr+73gAEL ooYMHjmJ6fjFFYFKVS7SmYX8xD1ocxE4o0dMV8nWH8yyCCylU+G8ZfhNRYh5/Z12zNEgarj+FHf BwS+eH3LWR5ry1cg8T0xJHE3P0eTjUtDOJ7YoA/YFgi/cLjLvYnqOo7D8crISuWjwf8zDECTF0w QxOTdXqECQGZiBiIp75PM2/vwJHtL6tggAw29qGfS X-Received: by 2002:a05:620a:1706:b0:93f:1dbf:6cec with SMTP id af79cd13be357-93f57f4f795mr207131485a.36.1792552662704; Tue, 20 Oct 2026 20:17:42 -0700 (PDT) X-Received: by 2002:a05:620a:1706:b0:93f:1dbf:6cec with SMTP id af79cd13be357-93f57f4f795mr207129385a.36.1792552662188; Tue, 20 Oct 2026 20:17:42 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 27/33] target/sh4: Define exception vector constants Date: Wed, 21 Oct 2026 05:14:00 +0200 Message-ID: <20261021031407.24862-28-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX0LK4TtO+ikSQ 6/52U4l42IAnGT+c6HI2okPjaxvT9mM7DCS+pcCCXv54HoXmNBs4Qg0BqjiuzUSnz5NtzVj3BC/ ZG6K5yBWE2m0idRgv4d3+NFaBLhoLa4= X-Proofpoint-ORIG-GUID: YXmHQtt0yfZpc7GsQdKA6TeoWiGPUmZU X-Proofpoint-GUID: YXmHQtt0yfZpc7GsQdKA6TeoWiGPUmZU X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX8ppp9fZfzy4w 89iXz2M8sguz3vCMCPAfy+M5bD+kbj7z3JNwae6SHIAq6PARP7TnJ86OuWuLKLfkzxEeEPY4GU3 DowzeYwAHUMfWxRqYChb8JexRXYv3MDBu5NT33QF9dZqQJ9ou0vkV9bPrFA0E7p2mhQkmNpaeYi GHsUaeD4qwLe1M6D/o+Ks/7T2j3TgWmE4plNZ17qQyAXOy8bZ5PnsRrGUVQr9bG9xEnsgYlGiuZ plsCNUDxwk7invLliyonI/rRAGXCBLA0YRXKay6dh/8w7e/fKoSt4aiQeSdI4YqNBPKeicb4yF1 xFP0Q7oEHGg5xygJmPQBhPZ1Q0fFFbO0dZUR5LFkxg9ZuSK2xYnBZYctwEtJZR96zkY5yLtZv4u JfRGxRTZYhSAJ3S7vmtGJBISMzDyMTdrHph8n/FwZ7FQ2NI7CCxfVoIwmlV8tFwMvX60UN7TuDc ZuE+IzKRtWZKrIjeHCA== X-Authority-Analysis: v=2.4 cv=NLpAaE6g c=1 sm=1 tr=0 ts=6ad82ed7 cx=c_pps a=50t2pK5VMbmlHzFWWp8p/g==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=eoimf2acIAo5FJnRuUoq:22 a=pGLkceISAAAA:8 a=EUspDBNiAAAA:8 a=exSUSkewqcAxhAk9TGUA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=IoWCM6iH3mJn3m4BftBB:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 priorityscore=1501 malwarescore=0 clxscore=1015 impostorscore=0 phishscore=0 spamscore=0 adultscore=0 lowpriorityscore=0 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.168.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0a-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552807796158500 From: Yonggang Luo Name SH4 exception vectors and use the definitions throughout exception handling and exception raising. Signed-off-by: Yonggang Luo Reviewed-by: Philippe Mathieu-Daud=C3=A9 Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/sh4/cpu.h | 21 +++++++++++++++ target/sh4/helper.c | 60 +++++++++++++++++++++--------------------- target/sh4/op_helper.c | 16 +++++------ 3 files changed, 59 insertions(+), 38 deletions(-) diff --git a/target/sh4/cpu.h b/target/sh4/cpu.h index 6984bb462fb..a1e9049b7be 100644 --- a/target/sh4/cpu.h +++ b/target/sh4/cpu.h @@ -135,6 +135,27 @@ typedef struct memory_content { struct memory_content *next; } memory_content; =20 +/* Guest trap numbers. */ +enum { + SH4_EXCP_RESET =3D 0x000, + SH4_EXCP_MANUAL_RESET =3D 0x020, + SH4_EXCP_TLB_MISS =3D 0x040, + SH4_EXCP_DTLB_MISS_WRITE =3D 0x060, + SH4_EXCP_INITIAL_PAGE_WRITE =3D 0x080, + SH4_EXCP_TLB_VIOLATION =3D 0x0a0, + SH4_EXCP_DTLB_VIOLATION_WRITE =3D 0x0c0, + SH4_EXCP_ADDR_ERROR =3D 0x0e0, + SH4_EXCP_DATA_WRITE =3D 0x100, + SH4_EXCP_FPU =3D 0x120, + SH4_EXCP_TLB_MULTIPLE =3D 0x140, + SH4_EXCP_TRAPA =3D 0x160, + SH4_EXCP_ILLEGAL_INSTRUCTION =3D 0x180, + SH4_EXCP_SLOT_ILLEGAL_INSTRUCTION =3D 0x1a0, + SH4_EXCP_USER_BREAK =3D 0x1e0, + SH4_EXCP_FPU_DISABLE =3D 0x800, + SH4_EXCP_SLOT_FPU_DISABLE =3D 0x820, +}; + typedef struct CPUArchState { uint32_t flags; /* general execution flags */ uint32_t gregs[24]; /* general registers */ diff --git a/target/sh4/helper.c b/target/sh4/helper.c index b6b057f104b..0fbd613f333 100644 --- a/target/sh4/helper.c +++ b/target/sh4/helper.c @@ -70,7 +70,7 @@ void superh_cpu_do_interrupt(CPUState *cs) do_irq =3D do_irq && (cs->exception_index =3D=3D -1); =20 if (env->sr & (1u << SR_BL)) { - if (do_exp && cs->exception_index !=3D 0x1e0) { + if (do_exp && cs->exception_index !=3D SH4_EXCP_USER_BREAK) { /* In theory a masked exception generates a reset exception, which in turn jumps to the reset vector. However this only works when using a bootloader. When using a kernel and an @@ -97,43 +97,43 @@ void superh_cpu_do_interrupt(CPUState *cs) if (qemu_loglevel_mask(CPU_LOG_INT)) { const char *expname; switch (cs->exception_index) { - case 0x0e0: + case SH4_EXCP_ADDR_ERROR: expname =3D "addr_error"; break; - case 0x040: + case SH4_EXCP_TLB_MISS: expname =3D "tlb_miss"; break; - case 0x0a0: + case SH4_EXCP_TLB_VIOLATION: expname =3D "tlb_violation"; break; - case 0x180: + case SH4_EXCP_ILLEGAL_INSTRUCTION: expname =3D "illegal_instruction"; break; - case 0x1a0: + case SH4_EXCP_SLOT_ILLEGAL_INSTRUCTION: expname =3D "slot_illegal_instruction"; break; - case 0x800: + case SH4_EXCP_FPU_DISABLE: expname =3D "fpu_disable"; break; - case 0x820: + case SH4_EXCP_SLOT_FPU_DISABLE: expname =3D "slot_fpu"; break; - case 0x100: + case SH4_EXCP_DATA_WRITE: expname =3D "data_write"; break; - case 0x060: + case SH4_EXCP_DTLB_MISS_WRITE: expname =3D "dtlb_miss_write"; break; - case 0x0c0: + case SH4_EXCP_DTLB_VIOLATION_WRITE: expname =3D "dtlb_violation_write"; break; - case 0x120: + case SH4_EXCP_FPU: expname =3D "fpu_exception"; break; - case 0x080: + case SH4_EXCP_INITIAL_PAGE_WRITE: expname =3D "initial_page_write"; break; - case 0x160: + case SH4_EXCP_TRAPA: expname =3D "trapa"; break; default: @@ -161,18 +161,18 @@ void superh_cpu_do_interrupt(CPUState *cs) if (do_exp) { env->expevt =3D cs->exception_index; switch (cs->exception_index) { - case 0x000: - case 0x020: - case 0x140: + case SH4_EXCP_RESET: + case SH4_EXCP_MANUAL_RESET: + case SH4_EXCP_TLB_MULTIPLE: env->sr &=3D ~(1u << SR_FD); env->sr |=3D 0xf << 4; /* IMASK */ env->pc =3D 0xa0000000; break; - case 0x040: - case 0x060: + case SH4_EXCP_TLB_MISS: + case SH4_EXCP_DTLB_MISS_WRITE: env->pc =3D env->vbr + 0x400; break; - case 0x160: + case SH4_EXCP_TRAPA: env->spc +=3D 2; /* special case for TRAPA */ /* fall through */ default: @@ -632,7 +632,7 @@ void cpu_sh4_write_mmaped_utlb_addr(CPUSH4State *s, hwa= ddr addr, CPUState *cs =3D env_cpu(s); =20 /* Multiple TLB Exception */ - cs->exception_index =3D 0x140; + cs->exception_index =3D SH4_EXCP_TLB_MULTIPLE; s->tea =3D addr; break; } @@ -828,33 +828,33 @@ bool superh_cpu_tlb_fill(CPUState *cs, vaddr address,= int size, switch (ret) { case MMU_ITLB_MISS: case MMU_DTLB_MISS_READ: - cs->exception_index =3D 0x040; + cs->exception_index =3D SH4_EXCP_TLB_MISS; break; case MMU_DTLB_MULTIPLE: case MMU_ITLB_MULTIPLE: - cs->exception_index =3D 0x140; + cs->exception_index =3D SH4_EXCP_TLB_MULTIPLE; break; case MMU_ITLB_VIOLATION: - cs->exception_index =3D 0x0a0; + cs->exception_index =3D SH4_EXCP_TLB_VIOLATION; break; case MMU_DTLB_MISS_WRITE: - cs->exception_index =3D 0x060; + cs->exception_index =3D SH4_EXCP_DTLB_MISS_WRITE; break; case MMU_DTLB_INITIAL_WRITE: - cs->exception_index =3D 0x080; + cs->exception_index =3D SH4_EXCP_INITIAL_PAGE_WRITE; break; case MMU_DTLB_VIOLATION_READ: - cs->exception_index =3D 0x0a0; + cs->exception_index =3D SH4_EXCP_TLB_VIOLATION; break; case MMU_DTLB_VIOLATION_WRITE: - cs->exception_index =3D 0x0c0; + cs->exception_index =3D SH4_EXCP_DTLB_VIOLATION_WRITE; break; case MMU_IADDR_ERROR: case MMU_DADDR_ERROR_READ: - cs->exception_index =3D 0x0e0; + cs->exception_index =3D SH4_EXCP_ADDR_ERROR; break; case MMU_DADDR_ERROR_WRITE: - cs->exception_index =3D 0x100; + cs->exception_index =3D SH4_EXCP_DATA_WRITE; break; default: cpu_abort(cs, "Unhandled MMU fault"); diff --git a/target/sh4/op_helper.c b/target/sh4/op_helper.c index 777380f8e40..8beac9ca034 100644 --- a/target/sh4/op_helper.c +++ b/target/sh4/op_helper.c @@ -33,10 +33,10 @@ void superh_cpu_do_unaligned_access(CPUState *cs, vaddr= addr, switch (access_type) { case MMU_INST_FETCH: case MMU_DATA_LOAD: - cs->exception_index =3D 0x0e0; + cs->exception_index =3D SH4_EXCP_ADDR_ERROR; break; case MMU_DATA_STORE: - cs->exception_index =3D 0x100; + cs->exception_index =3D SH4_EXCP_DATA_WRITE; break; default: g_assert_not_reached(); @@ -67,22 +67,22 @@ void raise_exception(CPUSH4State *env, int index, =20 void helper_raise_illegal_instruction(CPUSH4State *env) { - raise_exception(env, 0x180, 0); + raise_exception(env, SH4_EXCP_ILLEGAL_INSTRUCTION, 0); } =20 void helper_raise_slot_illegal_instruction(CPUSH4State *env) { - raise_exception(env, 0x1a0, 0); + raise_exception(env, SH4_EXCP_SLOT_ILLEGAL_INSTRUCTION, 0); } =20 void helper_raise_fpu_disable(CPUSH4State *env) { - raise_exception(env, 0x800, 0); + raise_exception(env, SH4_EXCP_FPU_DISABLE, 0); } =20 void helper_raise_slot_fpu_disable(CPUSH4State *env) { - raise_exception(env, 0x820, 0); + raise_exception(env, SH4_EXCP_SLOT_FPU_DISABLE, 0); } =20 void helper_sleep(CPUSH4State *env) @@ -97,7 +97,7 @@ void helper_sleep(CPUSH4State *env) void helper_trapa(CPUSH4State *env, uint32_t tra) { env->tra =3D tra << 2; - raise_exception(env, 0x160, 0); + raise_exception(env, SH4_EXCP_TRAPA, 0); } =20 void helper_exclusive(CPUSH4State *env) @@ -255,7 +255,7 @@ static void update_fpscr(CPUSH4State *env, uintptr_t re= taddr) cause =3D (env->fpscr & FPSCR_CAUSE_MASK) >> FPSCR_CAUSE_SHIFT; enable =3D (env->fpscr & FPSCR_ENABLE_MASK) >> FPSCR_ENABLE_SHIFT; if (cause & enable) { - raise_exception(env, 0x120, retaddr); + raise_exception(env, SH4_EXCP_FPU, retaddr); } } } --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552829; cv=none; d=zohomail.com; s=zohoarc; b=lfgsMlTidOKdZj4SfjLjzCITXVxa17bm1opC9IVN1ezotQxpjDutETngZAMFZMTBXMWCpNtSaX4IhenQemLm80h2+PYRU3LDgMCkY+j7n6qIOSziWjYr2eHF75ddN3BZxb43oF/ffTh7bZfqeDSkaDzEpvmOHoY03cpMWKKFeGA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552829; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=p7RQ7yiqg1Ox1Ti9CPFcdqZ1SQNOTHd0iyzgVVE7fmg=; b=TqyW3ek3c1gCqQq0dQFVV0pvmUvRW1sZAWykKeptfpdNZwt/mt9igPCtz1JCBVgnafUPL7r7i5r9QihhS5aecjnfXGdUaTL+FgrScTvPyo8psrhb7uNY/YE89zlRdcmJEsAgxAuIzBNyzV+6bsqdtkQyRx41DJ3LyHwagvZOAcM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552829386776.5311194244856; Tue, 20 Oct 2026 20:20:29 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMrA-00014z-DX; Tue, 20 Oct 2026 23:19:14 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMq4-0006wf-Tx for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:18:08 -0400 Received: from mx0b-0031df01.pphosted.com ([205.220.180.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMq3-00038B-3l for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:18:04 -0400 Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2Es4o3420597 for ; Wed, 21 Oct 2026 03:17:52 GMT Received: from mail-qk1-f198.google.com (mail-qk1-f198.google.com [209.85.222.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4heh5r0ufv-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:17:52 +0000 (GMT) Received: by mail-qk1-f198.google.com with SMTP id af79cd13be357-93caf6c528aso52882385a.0 for ; Tue, 20 Oct 2026 20:17:52 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e254f0bc2sm2442908f8f.1.2026.10.20.20.17.48 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:17:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= p7RQ7yiqg1Ox1Ti9CPFcdqZ1SQNOTHd0iyzgVVE7fmg=; b=lLCZ8DCOxUTygjmo 1Yyc5WEPSY7jMdIe+SQLWmIBncvPiTrZAHGqVOg7uG0qwM6FXZYOL7OPefKRpjZu z0veRimutgoRMP7CVOEm6kzwrVWpFKcRgZ4ESOfcFNeq3Rl+oVv9nQjO8N2hO6is +fCG8vcMMc1qZtOAUUhF6zIIMhszruFbR6YjhiU6S80P7lgAX4eYvjE2uR/iZeS2 2xSPL1uEc1BFbBvMnipCrkolisOV4Z1JFqyto95GluQF8mBo0Xm98HfEXaeU+vkZ SI/Qdg113V1Ei5AeSTzVKI6+eSo8uyfAZjakZM7N8Nm0A5jelDmda6VJnrpAIPcW GXRHSQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552671; x=1793157471; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=p7RQ7yiqg1Ox1Ti9CPFcdqZ1SQNOTHd0iyzgVVE7fmg=; b=jGrMHKgKIpu2WPptTNkqBAYf5DZY+6PYYju1Nn0BaSk39bmOLfRecD8bpC4qrNzOL0 TReQ0Ok2LPcrAJ8VHWylJNx/1kVS9tPyzJjO+Nc94drod4jYPBspHyJ8+dzVLRB6BOF/ 5N50DAaXstbb3+runYDD5ZZ82RrdiJ1e5N1gwoV6DibKHDN4AN3WTtLhHeHvxL3kje/E Qp2yGfpQnNM4y1u8F9nAi2YoEy2tYFCB4kOEsPIp3mMW3y+4brQW7PqcW52cxGlapftb SO8cb8T/Ywdcwh52aiFgP7OGWZ6E4ReMWX+49oEFuwprNVOx+tcgcyQCTBJCNhfy6kEl KwzQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552671; x=1793157471; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=p7RQ7yiqg1Ox1Ti9CPFcdqZ1SQNOTHd0iyzgVVE7fmg=; b=JDd7nHWhjKoDDqjLi8DU65uQSW0XMuRfcRqzuF1o3sGlO52JfPQj1+SD1PvaAkxFz7 H5zUXzSyj2zocE3n0+JiU2tc+g2TQLUuEUY1n3qHjjCJWE3cxDyROvwoFulOphjRgCvb I3UkfccCewpH/M1/JGOVvAENerkXbA7HmIVjEi7v1U7kPlxR1WPO2a2Qr/MaCn6DIC2h 7UX4Qhu9vH98hVrn61ou2r4Ia4/M/Lga31KpFgrLQgh7TFJj/epTxkO5q1pTFeX4Mvd6 P4Mj50ijRh4FLkapNcYkivwt3ilZexSaqhDZVkNp5HZRy4wPLJv4y1qBOzP8SqPxxcHi F69g== X-Gm-Message-State: AFq9FYJLk/T+IOMfcExZVf3n1wGWgR6DGYAJXaNZ88w+ESeLh4P9q/A0 hPuCoaahZzJWdwTH2SxWjbVX75RrIOaqM3FHdQfFUsLSrZglgbrUF9NLGNTjgfNQ9iDu0hsAt8z z6IcYcBZCdljZva4uDBhXtI3Z/teY7fdOrtwh/r1pqSrABGAr3uwHKSP3RRjAar1WtC8k X-Gm-Gg: AYBFou2fT2hzGpx1b9qcHQBkWh3yaQxN9bkTFAM6d6vwy5H1QUId31uEyxut/4kOEp3 F6lKv5gR1MoLobgAeewVI3anhcx3Nw/RXJthrofD9DkhZ9elUiJL+kpWgO/rNQ0TlE5hVYS+t46 W1HBIx48q74HzgWasrm1qJj56JRqIa16Ly9xDr8s4Dej8k8gzmobD3iCu44WCZG+UFpNdtlInd3 CPJxhPuPq2yYkCLW2BuQMh16x6TfVfouCcd3V3boRsmiVnGcLz4n3VoEqW8Sx4U61rLB+pGvi1W cY6kvgVHOuKWDBHnebUuuy8YYUHOFIzj3wQF/9zEkH1Wr+0g600uojwfa03G8yn25EmSNdNSjVs 4FCSMEbyt73834bjS8nMLzrgI6eDKFaWAuNkTYgII X-Received: by 2002:a05:620a:2788:b0:93a:13aa:1b9 with SMTP id af79cd13be357-93f57f1c945mr220871685a.30.1792552671537; Tue, 20 Oct 2026 20:17:51 -0700 (PDT) X-Received: by 2002:a05:620a:2788:b0:93a:13aa:1b9 with SMTP id af79cd13be357-93f57f1c945mr220869485a.30.1792552671048; Tue, 20 Oct 2026 20:17:51 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 28/33] target/sh4: Register CPUClass::exception_name() handler Date: Wed, 21 Oct 2026 05:14:01 +0200 Message-ID: <20261021031407.24862-29-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Authority-Analysis: v=2.4 cv=aI5lOr9m c=1 sm=1 tr=0 ts=6ad82ee0 cx=c_pps a=qKBjSQ1v91RyAK45QCPf5w==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=gowsoOTTUOVcmtlkKump:22 a=EUspDBNiAAAA:8 a=1bLhyRm5UWLPkFMrcSkA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=NFOGd7dJGGMPyQGDc5-O:22 X-Proofpoint-ORIG-GUID: kk3oVmrc_PEmF1XYKk7ALEiAPZjaZnRO X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXyGKqG3GrLXlK eJlN4e0VeVMiTYHKpXkaTmPEPumjxgR/9GZiGTGZaeRW8Th9iN17BbFou0sEvgEAoaaL3AMZWb/ eGL/qwwTuc/IJVKBRIk6WR9EskCh90Bu76we84hhlSkm/B9OCl72EtAYN8VgvDI+YVbFJQSiAgx hY01OkqxHwzKcetMnAhpd63IPNqkROsq/zmqGse+rdrvdTSFdCZZwGLZdg9MrMtIxbGA7ztAn1o EWnw+EXEeSdPxDxecVUX56f2UOfwg8NIQI4frd13v7U77hrz1a3fuhBwY6qIazEP4ii51fKmUJz MN6Cu1LmZVf5rL4XI2NQHV61wIbla2RZ1xtkYwIApz3SBxRrGJaY2d7CcSLXIWJ/81jcwQd88BS sfEJ476ENs6eGFZG3pi3zQ9PAXk28P4sdrC0jtVBQIseEySqZx2XXYIYZn81jUNbkD0aMIfZtdv Cx+mMBy8lQ2HsKy9OrA== X-Proofpoint-GUID: kk3oVmrc_PEmF1XYKk7ALEiAPZjaZnRO X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX/l7BDWSYTi/F mieTLL4PfgFlkqLQ61zF8hMqDRkSmbqf5dOy/Vz85bYxY3kgafUYl0YBy9D16VJVPFUxYXnSlsS hcYNAzz4tARbeae+VOuGN8Sk819r1k0= X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 clxscore=1015 impostorscore=0 spamscore=0 bulkscore=0 malwarescore=0 suspectscore=0 adultscore=0 phishscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.180.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0b-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552830214158500 Factor sh4_exception_name() out of superh_cpu_do_interrupt() and register it as the CPUClass::exception_name() handler, so the common exception logging can resolve SH-4 exception codes to names. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/sh4/cpu.h | 1 + target/sh4/cpu.c | 1 + target/sh4/helper.c | 101 +++++++++++++++++++++++--------------------- 3 files changed, 56 insertions(+), 47 deletions(-) diff --git a/target/sh4/cpu.h b/target/sh4/cpu.h index a1e9049b7be..94f2f1278b9 100644 --- a/target/sh4/cpu.h +++ b/target/sh4/cpu.h @@ -258,6 +258,7 @@ struct SuperHCPUClass { uint32_t cvr; }; =20 +const char *sh4_exception_name(int excp); void superh_cpu_dump_state(CPUState *cpu, FILE *f, int flags); int superh_cpu_gdb_read_register(CPUState *cpu, GByteArray *buf, int reg); int superh_cpu_gdb_write_register(CPUState *cpu, uint8_t *buf, int reg); diff --git a/target/sh4/cpu.c b/target/sh4/cpu.c index 3bbdee301d5..97a718c3911 100644 --- a/target/sh4/cpu.c +++ b/target/sh4/cpu.c @@ -334,6 +334,7 @@ static void superh_cpu_class_init(ObjectClass *oc, cons= t void *data) &scc->parent_phases); =20 cc->class_by_name =3D superh_cpu_class_by_name; + cc->exception_name =3D sh4_exception_name; cc->dump_state =3D superh_cpu_dump_state; cc->set_pc =3D superh_cpu_set_pc; cc->get_pc =3D superh_cpu_get_pc; diff --git a/target/sh4/helper.c b/target/sh4/helper.c index 0fbd613f333..5856bab6983 100644 --- a/target/sh4/helper.c +++ b/target/sh4/helper.c @@ -47,6 +47,58 @@ #define MMU_DADDR_ERROR_READ (-12) #define MMU_DADDR_ERROR_WRITE (-13) =20 +const char *sh4_exception_name(int excp) +{ + const char *name; + + switch (excp) { + case SH4_EXCP_ADDR_ERROR: + name =3D "addr_error"; + break; + case SH4_EXCP_TLB_MISS: + name =3D "tlb_miss"; + break; + case SH4_EXCP_TLB_VIOLATION: + name =3D "tlb_violation"; + break; + case SH4_EXCP_ILLEGAL_INSTRUCTION: + name =3D "illegal_instruction"; + break; + case SH4_EXCP_SLOT_ILLEGAL_INSTRUCTION: + name =3D "slot_illegal_instruction"; + break; + case SH4_EXCP_FPU_DISABLE: + name =3D "fpu_disable"; + break; + case SH4_EXCP_SLOT_FPU_DISABLE: + name =3D "slot_fpu"; + break; + case SH4_EXCP_DATA_WRITE: + name =3D "data_write"; + break; + case SH4_EXCP_DTLB_MISS_WRITE: + name =3D "dtlb_miss_write"; + break; + case SH4_EXCP_DTLB_VIOLATION_WRITE: + name =3D "dtlb_violation_write"; + break; + case SH4_EXCP_FPU: + name =3D "fpu_exception"; + break; + case SH4_EXCP_INITIAL_PAGE_WRITE: + name =3D "initial_page_write"; + break; + case SH4_EXCP_TRAPA: + name =3D "trapa"; + break; + default: + name =3D "???"; + break; + } + + return name; +} + #if defined(CONFIG_USER_ONLY) =20 int cpu_sh4_is_cached(CPUSH4State *env, uint32_t addr) @@ -95,53 +147,8 @@ void superh_cpu_do_interrupt(CPUState *cs) } =20 if (qemu_loglevel_mask(CPU_LOG_INT)) { - const char *expname; - switch (cs->exception_index) { - case SH4_EXCP_ADDR_ERROR: - expname =3D "addr_error"; - break; - case SH4_EXCP_TLB_MISS: - expname =3D "tlb_miss"; - break; - case SH4_EXCP_TLB_VIOLATION: - expname =3D "tlb_violation"; - break; - case SH4_EXCP_ILLEGAL_INSTRUCTION: - expname =3D "illegal_instruction"; - break; - case SH4_EXCP_SLOT_ILLEGAL_INSTRUCTION: - expname =3D "slot_illegal_instruction"; - break; - case SH4_EXCP_FPU_DISABLE: - expname =3D "fpu_disable"; - break; - case SH4_EXCP_SLOT_FPU_DISABLE: - expname =3D "slot_fpu"; - break; - case SH4_EXCP_DATA_WRITE: - expname =3D "data_write"; - break; - case SH4_EXCP_DTLB_MISS_WRITE: - expname =3D "dtlb_miss_write"; - break; - case SH4_EXCP_DTLB_VIOLATION_WRITE: - expname =3D "dtlb_violation_write"; - break; - case SH4_EXCP_FPU: - expname =3D "fpu_exception"; - break; - case SH4_EXCP_INITIAL_PAGE_WRITE: - expname =3D "initial_page_write"; - break; - case SH4_EXCP_TRAPA: - expname =3D "trapa"; - break; - default: - expname =3D do_irq ? "interrupt" : "???"; - break; - } - qemu_log("exception 0x%03x [%s] raised\n", - irq_vector, expname); + qemu_log("exception 0x%03x [%s] raised\n", irq_vector, + do_irq ? "interrupt" : sh4_exception_name(cs->exception_i= ndex)); log_cpu_state(cs, 0); } =20 --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552872; cv=none; d=zohomail.com; s=zohoarc; b=RzC9lFWLF6mwzq0eXrAgUEb0HQkDFz/Rq2m1Pd9I7qrFl4IHHUu8rBTdyCXeBTAf82tz52kzFw7oMxqTk9ZQJNR3hcv1TR3n/Lx1DlZtxrCr/AODlrkDFiMAty/xtphlthSushXKIy/dKt/gBspempA/8nIN+0qu6c3Ocwl6W4k= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552872; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=31qHRvuCzQ9K6ePd7hfaaxt30CRwnArdLmjIbTE9sdI=; b=Vf8kuKqsbgmjovwDViLtTshpubn9XTPVhCTKLf6YCzs2D57zzrsDleIrccPKFWkr1zmVYS9Q+JKA0XjCUdNccjSdMMwVDmPz1KgUUFuXmR1HHlllrdXClYHTTuw4BSPCtVS5HQCU7JkNHBe/RLGR42bJt878M0zzsuWioXRtF2E= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552872559217.56304000221633; Tue, 20 Oct 2026 20:21:12 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMr8-00013W-Sb; Tue, 20 Oct 2026 23:19:12 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMqC-00077W-HI for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:18:13 -0400 Received: from mx0b-0031df01.pphosted.com ([205.220.180.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMqA-00039a-Cs for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:18:12 -0400 Received: from pps.filterd (m0279873.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2F3ka3256697 for ; Wed, 21 Oct 2026 03:17:59 GMT Received: from mail-qk1-f199.google.com (mail-qk1-f199.google.com [209.85.222.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4hed9v1rxy-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:17:59 +0000 (GMT) Received: by mail-qk1-f199.google.com with SMTP id af79cd13be357-93cb7f9bb86so67088785a.2 for ; Tue, 20 Oct 2026 20:17:59 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4a1fb864dacsm41027025e9.12.2026.10.20.20.17.56 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:17:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= 31qHRvuCzQ9K6ePd7hfaaxt30CRwnArdLmjIbTE9sdI=; b=YbK2MoVA2iAxu2mI i1OcKZIQYiunADMGklvayunO7PIwCg0lhRHxan5EKZNViJPdwn2iv/642CGcxTwJ k5t2Xr+o4wAgwpKKLMrzhHX8vyWpYkK0vXT+Om0V5y2M2I2XWwHU/4xpi/jpqj4e cuacg3Xr/C/Wr+FA/lEqBV/FouWp6PhDI9divKp/rifnvpANoL/DTxMQGQRIrby8 EsfGr0Uvf9YaZE47b1u1jigv81HKxGSIzaBWTRkZy852ZbgDuWlOQ4f0O/BXS2rc xEysIkQlR20GM3L+lUHPGwU5+ulAMhdOJPin3ak2epIxMGzWsU+/+VkDWbk/1VwQ 6A93fg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552679; x=1793157479; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=31qHRvuCzQ9K6ePd7hfaaxt30CRwnArdLmjIbTE9sdI=; b=KqPcjbw8AXu0r+ugmxG/aP4t/uiaXscTnOIFeBBXo2QWReIYKxXwbc7CJ1ILG8qP/d RJJqu6kY6cW4vmoJESRqiwrkCZyjXaKH9/fdkDoi/E4EoSvVkWRdfEWtbtCY7l24TCIc fAqbRIt9NcYrnzCyPQJ9sF9r93phcsE9Uj+WuSmj7welyo9gnMQO3fQeU88M99wv1UpL KS7/RU+7W0RhaII200pTdGw/RKOMNG1Uitf0pnDEFK9EG8xP4+knT5OcIzYYoJjvbyKD 3kEzF30gx8PF0f1uxz4SLuqfMaQiVVN5CC2Cr8wvGDLRQ68ud8IE0Gd8LYEeq8WhDily I5Rg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552679; x=1793157479; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=31qHRvuCzQ9K6ePd7hfaaxt30CRwnArdLmjIbTE9sdI=; b=o+T2OgpOLr5WOLLBZBF7H0hFBI0euDHZRhMq5M5vyPM7MwSTuCZcIrLUTsRkPz3Lph pJydSMkWS712zcsqGw+cHIoIFRcWL6akd8cyBogVBYoF3bgwxoTuMIH7WUI6BqAgndGM i7l0ylCoDm+pgj8pfZeR52Mhd945rMu9R9laArVmL5amSlLE8wz7DvyppnkO7Moea7vO MgIr4Lwf3Ubhb2FnYuAk3+/bF4/Y1pmmaUZ3cvMLm1+14d4Wo03UrlFT2kWpVzuwiDM8 SoLJT3cPCYbon6Tvpd/4AcGpiKt324fDHJcfY8av0oQmxj+VI1MWAVusnwmckvHUc/o9 TiJw== X-Gm-Message-State: AFq9FYLPDOarJQ644TaIvJNfoDMRjbb4apdTi+AT9W+ISaSfJwQ6fI8F EOyAjKFG6BiIclxdFw29hTsCMOSGgJwDOgiBl6kJn6RvQZyqSwmlzafYUFSbd3PZb+DIRAl4LDT GzTxPDxvznc982qbFabCLPDcKSaqd+z/Ky061dBDifd0qNw9PrNxB1GjfpC8lt/2Iitv9 X-Gm-Gg: AYBFou1r+cFZEduiI8Ogtf48Eft8EdBgORZk1u0qKSac8UROMfTOg7X9+2z5XVY49Fd ZvvebriEuInPt8dLylKNqnlXc+A7OWyR2OrdeCNXMx+xpRyEk9b9IaeTSOC7WO95VIstOhNnUoD AHxqyk+cHLx3RVs8+5Tug6dluACa2mOwz9UCpRLQAf2e33g9CJmC4+0SGnSqnTox3FsDhHZoxvs wPYniL/obb8tcdJZFizwcwh2hvK2p5PaiNdXJmE5E5+qtknmwh56APUCx1N/0m14UGXEv+tJIBz btdVxICmKFUewpUF29t0aMl2nBr3yjE5U7P9a9Lx9LZrYjSaKWpt5ONj1TjkpUuX+0mJq2b7tDx 6NxvcbA8Avj4GGwLdcCJeMg9XjQGJWIUyVlcP8jHN X-Received: by 2002:a05:620a:2987:b0:93e:95ce:53c7 with SMTP id af79cd13be357-93f57f05babmr192785285a.4.1792552678699; Tue, 20 Oct 2026 20:17:58 -0700 (PDT) X-Received: by 2002:a05:620a:2987:b0:93e:95ce:53c7 with SMTP id af79cd13be357-93f57f05babmr192782885a.4.1792552678191; Tue, 20 Oct 2026 20:17:58 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 29/33] target/sh4: Use a static table in sh4_exception_name() Date: Wed, 21 Oct 2026 05:14:02 +0200 Message-ID: <20261021031407.24862-30-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXw8HgiROLW5Ts EPJsIdSKWApY+5QwgVSfQmUr+Ki8KJRSZXUMaN8BztAWEUJae1sQyYbbaF/4VcEmlJzPgshPDlG nOJ7YfxYfhq5ummOwM6l2KzRG+txMB0= X-Proofpoint-ORIG-GUID: FyT7r4-5LZ87rdygucZeryohS2zklkW3 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX9haExNjg7YdL eWDcnpaVaFgY0jRlXlrmR9FLoxKcnpCpiHLJAMxcpbmX3dKs8eGiE1xTOqEUqy269es8eskWbGs 38vHzpYwpBfAC6nBxVIKyZthRSIHexk72L8KWkOxlfgz1OGpn1sHk/SGF68pW6nUeeuM+yLU5sr 5bqMmHMj9Cfjs8tMj/lJY1zcxqmvHcTe/ZQzkJdqiWsq8GWJN+v9pD192zYt92CJGJncbGxzO6o nJ1lWTHvJc1aFLLex7r5tT2SSKlP+MIkTiC0Y3XbLaHL1IVtnCbOH37T4oR4SHyCbBsRP2Hu/NT sWJ7dX3WQHqqMRHAvOg0VUs7575QS9flffFxatMfGC5W/RIWqnizE6t/YmRXxWZuqfuHsClM8nQ Vse92FBDPapcBeLFZzf7J4OgdITmowCUBOQk5bIboOU8hIm197I8ACaglBDYcBU9Kwv5L7vfG4v ibd7dhhZNJrSIDD6Qcw== X-Authority-Analysis: v=2.4 cv=I6zw19gg c=1 sm=1 tr=0 ts=6ad82ee7 cx=c_pps a=HLyN3IcIa5EE8TELMZ618Q==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=rJkE3RaqiGZ5pbrm-msn:22 a=EUspDBNiAAAA:8 a=rdbtYueUxUB_busH31QA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=bTQJ7kPSJx9SKPbeHEYW:22 X-Proofpoint-GUID: FyT7r4-5LZ87rdygucZeryohS2zklkW3 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 suspectscore=0 clxscore=1015 bulkscore=0 lowpriorityscore=0 impostorscore=0 spamscore=0 priorityscore=1501 malwarescore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.180.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0b-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552873004158500 Replace the switch statement with a static lookup table. Suggested-by: Pierrick Bouvier Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/sh4/helper.c | 65 +++++++++++++-------------------------------- 1 file changed, 19 insertions(+), 46 deletions(-) diff --git a/target/sh4/helper.c b/target/sh4/helper.c index 5856bab6983..a4f80b10d3c 100644 --- a/target/sh4/helper.c +++ b/target/sh4/helper.c @@ -49,54 +49,27 @@ =20 const char *sh4_exception_name(int excp) { - const char *name; + /* Exception codes (EXPEVT) are multiples of 0x20 */ + static const char * const excp_names[] =3D { + [SH4_EXCP_ADDR_ERROR >> 5] =3D "addr_error", + [SH4_EXCP_TLB_MISS >> 5] =3D "tlb_miss", + [SH4_EXCP_TLB_VIOLATION >> 5] =3D "tlb_violation", + [SH4_EXCP_ILLEGAL_INSTRUCTION >> 5] =3D "illegal_instruction", + [SH4_EXCP_SLOT_ILLEGAL_INSTRUCTION >> 5] =3D "slot_illegal_instruc= tion", + [SH4_EXCP_FPU_DISABLE >> 5] =3D "fpu_disable", + [SH4_EXCP_SLOT_FPU_DISABLE >> 5] =3D "slot_fpu", + [SH4_EXCP_DATA_WRITE >> 5] =3D "data_write", + [SH4_EXCP_DTLB_MISS_WRITE >> 5] =3D "dtlb_miss_write", + [SH4_EXCP_DTLB_VIOLATION_WRITE >> 5] =3D "dtlb_violation_write= ", + [SH4_EXCP_FPU >> 5] =3D "fpu_exception", + [SH4_EXCP_INITIAL_PAGE_WRITE >> 5] =3D "initial_page_write", + [SH4_EXCP_TRAPA >> 5] =3D "trapa", + }; =20 - switch (excp) { - case SH4_EXCP_ADDR_ERROR: - name =3D "addr_error"; - break; - case SH4_EXCP_TLB_MISS: - name =3D "tlb_miss"; - break; - case SH4_EXCP_TLB_VIOLATION: - name =3D "tlb_violation"; - break; - case SH4_EXCP_ILLEGAL_INSTRUCTION: - name =3D "illegal_instruction"; - break; - case SH4_EXCP_SLOT_ILLEGAL_INSTRUCTION: - name =3D "slot_illegal_instruction"; - break; - case SH4_EXCP_FPU_DISABLE: - name =3D "fpu_disable"; - break; - case SH4_EXCP_SLOT_FPU_DISABLE: - name =3D "slot_fpu"; - break; - case SH4_EXCP_DATA_WRITE: - name =3D "data_write"; - break; - case SH4_EXCP_DTLB_MISS_WRITE: - name =3D "dtlb_miss_write"; - break; - case SH4_EXCP_DTLB_VIOLATION_WRITE: - name =3D "dtlb_violation_write"; - break; - case SH4_EXCP_FPU: - name =3D "fpu_exception"; - break; - case SH4_EXCP_INITIAL_PAGE_WRITE: - name =3D "initial_page_write"; - break; - case SH4_EXCP_TRAPA: - name =3D "trapa"; - break; - default: - name =3D "???"; - break; + if (excp & 0x1f) { + return "unknown"; } - - return name; + return ARRAY_ELEM_OR_NULL(excp_names, excp >> 5) ?: "unknown"; } =20 #if defined(CONFIG_USER_ONLY) --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552996; cv=none; d=zohomail.com; s=zohoarc; b=Uc2j93T7Gkavu9zL7JZfKIu94VayM4mmvT1qzLuTRvcLJfFRolE3NoM7zD2Bg9FrNnlKbsjh6sezDjNmrnUZ7q/GdaUrulsqjvh8EKmsFgyIE8fd7OIrEvT8fPJHB0955ik/8fIZ/9Iz3eVhGXAePU9zKnwFNj1LeFrCanzIYKM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552996; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=yHld9MMMXcLmKS0hkrcHdEUGfxdpa/G/zGBpwpoW6tM=; b=jk0XCDHwLI/+AO/JxGkUsGDVu9O12IjYYA8pjK7cHNvIM2Maz/GI/OD7hkmHtd9XG0AlISXgHWAqKwQH3VvQi9YtfgvPlvQeQKgANM7ogvEnVb0fs4Pq4dkLU6YNPJF76I3GY9fbSk81B9+g1lYELqp41JBlZp6cFz1spQY+ziw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552996657627.2621600541729; Tue, 20 Oct 2026 20:23:16 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMrP-0001No-FY; Tue, 20 Oct 2026 23:19:27 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMqL-0007aD-VH for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:18:22 -0400 Received: from mx0b-0031df01.pphosted.com ([205.220.180.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMqJ-0003Ae-Fj for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:18:21 -0400 Received: from pps.filterd (m0279868.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2FCCF3116289 for ; Wed, 21 Oct 2026 03:18:07 GMT Received: from mail-qv1-f70.google.com (mail-qv1-f70.google.com [209.85.219.70]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4hed9hsr7u-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:18:07 +0000 (GMT) Received: by mail-qv1-f70.google.com with SMTP id 6a1803df08f44-91b92acedd9so10259826d6.2 for ; Tue, 20 Oct 2026 20:18:07 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e25835f46sm2554462f8f.38.2026.10.20.20.18.04 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:18:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= yHld9MMMXcLmKS0hkrcHdEUGfxdpa/G/zGBpwpoW6tM=; b=ZQjD3gtqBGGCS48w Y+5GqOdDlP05VoKzhWO9OAbaGoej1ShXDdMNPIznPe5qSsYSYLcv5gz/9CSn1dUe d0NMVwoZTgFGXmyQPoYg8vW7Xq/nVwt2E+jxptvbbUQNPTfm0Jtgrg3BaiVavB2a N7raHqweWlZ9gQPUPeioX+aT+rkEz7hyzchNR/68Ktqf1CDkC48nzjeplPpfDJBZ IHqh6yJxm5Nus7vvYHBYu2ZTQ7IZpFQtrjMLcZ58BUdKbjxVL3wbE0H5iqJlUHtv 3MPb5LcVagHizad+Cdq9us8nWWiUqv+n8KsH21ANLAeuXr+JzRgPnuEtnyBACn8X SjaX5w== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552687; x=1793157487; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=yHld9MMMXcLmKS0hkrcHdEUGfxdpa/G/zGBpwpoW6tM=; b=VBacqCPWcd8HEowLUJIU79+p1xQeSoogwd6ScGsE26OqeqojHtDMOBR1Ukrob/CSqX roF5RTY++pGaqYZVl7cw2L6fU5/I/k3WGMLtOevHmffXVvyTshPMxiThDg9PLBRSkzZX cV48BgsARf1+6A+vNGIIPbz+fcltmuR1ewCFMBmLoUvlcMPNTwB18xDbtGsP4Iq+eJZf hC+teg7t8iMb/0m82KAPzqcjX48fTqefIW0WsBEQkL2E3TQanAQEsTgbM4jhzSueJCGb 3b6CKMFrfiu8Xyesnj9Noox4etynTSGd2+4Q9Q86kBKS0gkv3NqHevAmEd8S1ctc7LsJ KjJA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552687; x=1793157487; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=yHld9MMMXcLmKS0hkrcHdEUGfxdpa/G/zGBpwpoW6tM=; b=TfIp1NsiUsffvXxDAFaHYDYWi5GTd59WOgownZm7IaXwzcpGojamsjowg0Nq1l0GT7 SOBnQ9UV2VDGnAclmoi1lWti/GpXyphOXl3mUApDIrP56iSJ++CQzIEaBsi4coTR4geu LQEopA74Pf6PabDUr9G0V9T3pLrK8Jms7mLiGqLqlivbNDXR6sNQUa2bWKnEIVaQ8c8/ b1AjEUxsinfJKzU54n0roractDNI60gLSjY4JLSgpCCoE/HPo9iBBRMNPGR9F8gEQ538 Z3+DY+ktR2fWtIIb2GGLWjly+nzqJb/CShFjpaRh5loIdQsD7H1eDVzmubeGY6yfSY8h oxBQ== X-Gm-Message-State: AFq9FYLft47dROTJOIuTZJEdS1lX2m8UboxomJT7vxpG1q2iluS1DW3Q P6ZIkS2cTdjqFCcQk2oaxCDpoTgc9wH6AqLJdm96Q3UnY8Dkj1NZPXkgHsxkCQ1Xa5u9Ej9bhwR o4j4Ge8ChiCo8ZZykepLbN2EKef7Z8+EcckCecYmFfSjBvUR5L3kKEraFOplWEv2umqNU X-Gm-Gg: AYBFou0HMuE4pEWFQvf4/CYOP9NlYSSzsvfNfRAt2fCI6BnWCUWk+GC6C8z5iLDCtS8 OTFNVCj0R/w2Ucww3z0vyEeCm73HtlrHnSRC8zuPgc6lsGu8QrvBcdkjuoYxe6KhgdlhCHh7+V6 6oRnKop4ElYWPlNkFqRfH6ICWL5HNHmCbtl9JqFmsYuAKBs3RLV6bOt6OjwGkux3R27FKjH7Qwv YxQ+8GBtC/5L+LAhq+cKLNlH0UK15AkRw+LshEhg9z70Xj6BPzNUVs9wXvrq5N2CbKz9rGV4FMB /7oxJwfa1vT0X1duX45z87AIT3jA8xKgDuCRR1gRF8skhbQZfZdeBOI9tYEiJMm76m0047Cj7AS Y3Mt+EPNfuGU/fIsLylyWKT37XfDT+Qp0HDivVMQV X-Received: by 2002:a05:620a:4493:b0:93f:22f1:97bc with SMTP id af79cd13be357-93f57f639c0mr206987385a.67.1792552686803; Tue, 20 Oct 2026 20:18:06 -0700 (PDT) X-Received: by 2002:a05:620a:4493:b0:93f:22f1:97bc with SMTP id af79cd13be357-93f57f639c0mr206985285a.67.1792552686366; Tue, 20 Oct 2026 20:18:06 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 30/33] target/sparc: Remove well tested DEBUG_PCALL definition Date: Wed, 21 Oct 2026 05:14:03 +0200 Message-ID: <20261021031407.24862-31-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Authority-Analysis: v=2.4 cv=YuKa1IYX c=1 sm=1 tr=0 ts=6ad82eef cx=c_pps a=oc9J++0uMp73DTRD5QyR2A==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=ZpdpYltYx_vBUK5n70dp:22 a=EUspDBNiAAAA:8 a=d8nHZlMCPPOsqsKe8PUA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=iYH6xdkBrDN1Jqds4HTS:22 X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX2uYrj9g2DgVx Du0REDFQ/JmKjfb98Zi0u/ppaquH/8lIgmrJAwc96C3XKAh6GE/rhFfL8RRs92zA5n4gonFppOA R5vudUGWmBeLE9S75VQaxubnKdqxAhg= X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX4Sut355CNwNN ajFsz8SZJlhWDmri6qnYyFzMljnVYiecIQjrAaFC0YFnl4OQuCP4C3RbQ5I6CXOELSKv+vN3uOh tkPh9XALDLa/BBf2tp8Pc401hQQTAMHsJ6UOyoJUtjOdaA1rXTyNFWu1mGzKwurMh6uS0M6Dslz 0O4L90Es6FijbFu6zCoM3JmSTFr58xCZ2UFTFyFO3CzXWyCdDf4cMe4iJuW63dZxQK1Ftntrt4P ce3f/dftU2qOd30WSTdKcV5Hc8gjIObbdy8vhQJS7mxWywvWnRx1mR8yZdhc9MFNu4gQfplP9XC haEv34PMdn3PZqDu2QRA35DgwVC2zcl2Sgb7omf4jlkQK1eYFYwGasSoxXO/BogouAySy7GTYwb /YlFZ9pqdl3ePee+QxbtBQ0quTdQo6oH6AzW3plFjHLCepSouotl4pNSPUP6opILOrxC9yG9fLM 1lYAN0vIaqKamnWlvhQ== X-Proofpoint-GUID: lwkPDXtVVMGzkNTVhCg1KU5MsA-3S5m5 X-Proofpoint-ORIG-GUID: lwkPDXtVVMGzkNTVhCg1KU5MsA-3S5m5 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 impostorscore=0 suspectscore=0 spamscore=0 clxscore=1015 phishscore=0 adultscore=0 bulkscore=0 malwarescore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.180.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0b-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552997589158500 DEBUG_PCALL has been unconditionally defined for 14 years now (see commit b884fc5ecaa "target-sparc: Make CPU_LOG_INT useful by default"), so the #ifdef guards around the exception name table and the CPU_LOG_INT block are always taken. Remove the define and the now-redundant guards. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/sparc/int64_helper.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/target/sparc/int64_helper.c b/target/sparc/int64_helper.c index 60ab0478fc6..10341e0c282 100644 --- a/target/sparc/int64_helper.c +++ b/target/sparc/int64_helper.c @@ -26,9 +26,6 @@ #include "trace.h" #include "qemu/plugin.h" =20 -#define DEBUG_PCALL - -#ifdef DEBUG_PCALL static const char * const excp_names[0x80] =3D { [TT_TFAULT] =3D "Instruction Access Fault", [TT_TMISS] =3D "Instruction Access MMU Miss", @@ -62,7 +59,6 @@ static const char * const excp_names[0x80] =3D { [TT_EXTINT | 0xe] =3D "External Interrupt 14", [TT_EXTINT | 0xf] =3D "External Interrupt 15", }; -#endif =20 #if !defined(CONFIG_USER_ONLY) void cpu_check_irqs(CPUSPARCState *env) @@ -138,7 +134,6 @@ void sparc_cpu_do_interrupt(CPUState *cs) int intno =3D cs->exception_index; trap_state *tsptr; =20 -#ifdef DEBUG_PCALL if (qemu_loglevel_mask(CPU_LOG_INT)) { static int count; const char *name; @@ -177,7 +172,6 @@ void sparc_cpu_do_interrupt(CPUState *cs) #endif count++; } -#endif #if !defined(CONFIG_USER_ONLY) if (env->tl >=3D env->maxtl) { cpu_abort(cs, "Trap 0x%04x while trap level (%d) >=3D MAXTL (%d)," --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552904; cv=none; d=zohomail.com; s=zohoarc; b=Gb17bjWaVT67C0gTjBCnBuJZk8+ui1q/osluth7HFgP3sHNqd6Jk1hS7ljFJFORIB3NNB094wpZNOhobUFtUa21ItcKLauVJWkGUgLYVpuzcDhlpD9SEz/3FRMfnOACPpwrbKBaM2q2pCq1Ghd6xPeZKqh0dXJaDqQR6+CW6pzg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552904; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=m231c6VrBnhGE/a0T72yGbnBWbXskeYkpGIhIDnDSJQ=; b=M4X0a9hVMRPHcxGRKrwNt8kmCd2mMxR28Mk+FOKj7YhmonWJRWhuhUBmz3dLN+dtpzHT2mnPXZ/Hxv3aVQR5ekQ2CQyy4NcgtIcMKx3eC8jU9OIuGAai+LONSyGe59nONBzv+iKGaLytL48ax13aBSvRWCx7UknQcwRA0N/X4DI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792552904680529.7984705512206; Tue, 20 Oct 2026 20:21:44 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMs8-0001vb-Fh; Tue, 20 Oct 2026 23:20:14 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMqU-0008Co-Bf for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:18:30 -0400 Received: from mx0b-0031df01.pphosted.com ([205.220.180.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMqR-0003CE-Rf for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:18:30 -0400 Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L2UwxK3457250 for ; Wed, 21 Oct 2026 03:18:17 GMT Received: from mail-qk1-f197.google.com (mail-qk1-f197.google.com [209.85.222.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4heh5r0uh5-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:18:16 +0000 (GMT) Received: by mail-qk1-f197.google.com with SMTP id af79cd13be357-93caf6c528aso52909585a.0 for ; Tue, 20 Oct 2026 20:18:16 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e25828e2esm2367152f8f.30.2026.10.20.20.18.12 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:18:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= m231c6VrBnhGE/a0T72yGbnBWbXskeYkpGIhIDnDSJQ=; b=hLWC31GL7NvBoqBa E2PA8ZMLvOVOKizxr0TnfM33P3BzkmlE4JUBOXGiiWHC9rOAgIKEnMiFdh0qeBXf vGyHTMbfeUNNfsf92NpJC1fPzMJxh40nw2gqR+ArBEWi/TDfD2o6G4IWoYV2MvMx M609GbTQokF7wfiepEXj7aEXP0ElS4/Zb1ETkjCe1Om8TqCuri1nbgnKpdwWnFZu PvIBPhIzi1cdbDzE0cXrEfnw98Oe/jnmIxoDJDuvpzyOQUuAMH1FMZJVQ9hkEu8q oV/eoNkfFWsIILyWF7/jGITKi9Uy37Ol3D7ucUADVfhqhpFZ1Gr2gwgG7LqG4L9r ssFy6w== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552696; x=1793157496; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=m231c6VrBnhGE/a0T72yGbnBWbXskeYkpGIhIDnDSJQ=; b=Lnb6BDHNwR1ZUduBkw5Jw+47qVPAsnREFQwXhtVKz2LP7WXtei/zDMk/wsSscar7Bn RQxukXGG/3B3dJPEeW0vT7PVHVF2SvvS/PC+tqVGSPfEtoPV0DqKbC4B/DADQk9JiAF7 mtRIrKYnTcg0zqI3JMbbdhv/PzmG93B4i8fndtk0frtL9GJGr7zSDoR9P0gdTy26XoFt UlVxxbNYpfyhje9vIzhAvF8YPe/WP0QRoSodkBSTAinBl2taazZDhDYlmQ0w4Kut5aJi Dv7zZFpzFFBs7necy/Ep409Dw9yErLb7LrLhO2yOr/RYXEL9bbWRq5OhMfNfN/TW7uQ4 /FOQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552696; x=1793157496; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=m231c6VrBnhGE/a0T72yGbnBWbXskeYkpGIhIDnDSJQ=; b=D7LltphPYo5lYOaewBVMwZYf1mQjKoPKDf7xHy0SDiz80KR73PIe1ol2+uEyCf1+9F vd3ueYdt7b+0U3SnFrJbZjYeN4UBK1u81pdJd0/S7joC8i0YstGBVHo01W49kruyJDIr kzoFok8r9fxQy4Rs2JBruinNv65Yqk4ILJ0Rktrxs+UBnifBUnqOjleE5WFM+Q0Pv+js ZSbEpAuxW8BSmcTbLWNHbD6bxT+zpSbw/KRDgBQBSRFAI2jvGuZ5GeEGg+RNCpr/ZC7e OZJ6ETyEhTH47PikYCoLh6kOGpUKpcG1Q09PPZ64f12C6f5Rl41ZG1ccMjWSfVdEvi7j UULg== X-Gm-Message-State: AFq9FYJ8mRMxMa1YQRZ5W71maCFdpHvQzz1B+aThqKLHNBMZv5U4D6pB AAprdlGnQF6ukZgP4kxssE0cxKfL+1FFtCMjT3GtqKtGb+iDYaXX53JdthtYXFu5k7MhLj8rDGw YU0OnTzRPe03aJx+FKYwcfMqrzvvGjrEYWbwAEyam+yxmbmPIEFCMnAvxtuEjfXbE7lgn X-Gm-Gg: AYBFou3gEq4QFKrRVlQQdRZdodb/HmC7ZCF6NeoqpizJSjTfguo72w4vhwiC/hgDVv+ Mx7j/CnaqfuGnquqpCuHO+WNXtGFxwRvq4jauG3Y3ma7gz9lWQ71ex6z4cs4BtByrFhx2aeLrSI PTrbWzXuD4g5qoAV/psFlIxsjyJvfnVn272xxbGkC+BRzOJ6YD/AqI8fxmUPMTwRbIGS37ftQP2 Ig/bi+0yHwZ4lA2Ws1zpu64bsqCD9Ynhxd1u1f2fZOMd8OIXXwd5GMMFltlsJTgk/LHD0p9XCqF mDXsBPGCtXYS+zlWZPdGi3ByHPPHShWLk6MXu/gH+yxUlzRXO2WkyiN2G4AyVNd5J/gzFm2aaFI 9EBuxZJ7LEGYtqqPfiWEiba8NMG5zYUhl2StHbwsp X-Received: by 2002:a05:620a:3188:b0:93c:aff9:52c with SMTP id af79cd13be357-93f57f5861emr224115885a.60.1792552695548; Tue, 20 Oct 2026 20:18:15 -0700 (PDT) X-Received: by 2002:a05:620a:3188:b0:93c:aff9:52c with SMTP id af79cd13be357-93f57f5861emr224112885a.60.1792552695083; Tue, 20 Oct 2026 20:18:15 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 31/33] target/sparc: Register CPUClass::exception_name() handler Date: Wed, 21 Oct 2026 05:14:04 +0200 Message-ID: <20261021031407.24862-32-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Authority-Analysis: v=2.4 cv=aI5lOr9m c=1 sm=1 tr=0 ts=6ad82ef8 cx=c_pps a=50t2pK5VMbmlHzFWWp8p/g==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=gowsoOTTUOVcmtlkKump:22 a=EUspDBNiAAAA:8 a=kEJbCHFcLIL5wbn19PYA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=IoWCM6iH3mJn3m4BftBB:22 X-Proofpoint-ORIG-GUID: xsWHoouMgYMlASeNwyHJiMLOLzpY0KA3 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX1T02cybLIR9x js/ijlCJRdc5m/EG6x6C7El+V0D39x58OqU01//qMSwXiQIB/vpMGHDnnGJ1RP1MZdXInx4uDhP IAJfvMGFQEC5y3583u6iajG1WU2BzfZRTflS4WirXXoAFWH/AmTqKNxFZSo6EX7XMcdyWz5RQlV KeUawmQEPxWHU2omA7v5FNDXzg9eToE2WGNHffLqKzuvNHWrSAijCZSY/VT45TbpLkyFJjGWssJ wDvqIoNeAj3rfq4stvO7wmNlBnuAc4Dw3exupomV2ubrFlrnbXspaSahp3wwmizQfWewj7pOFRn UY9ynZcmfMjSyfp69ppaBnCiOMVpzjw85o0afBLuW7/hK8F7G+Jj3h4tR1cnepQip6vhpqhH6+1 tIKFgqQXRPxtF5RHf/SAQl9XFSMSzncSeiBzSKzQejd7s5nHD6nMR9aAmKmB6YXXrYG31+V0EZ5 47o20tRgs48um3tLhug== X-Proofpoint-GUID: xsWHoouMgYMlASeNwyHJiMLOLzpY0KA3 X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX+wG2pqOQVwEl 775FbIJi0qK+bwOW+QKKKSjYftM6QXxv9oJUU3ufPaPjZpvg1Dm7GQ0b0MSiBlSiGFJ/WtetWUz +NOs3yTMtdJOCNQFjBNryKxDDc72gos= X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 clxscore=1015 impostorscore=0 spamscore=0 bulkscore=0 malwarescore=0 suspectscore=0 adultscore=0 phishscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.180.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0b-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552905721158500 For each SPARC / SPARC64 target: factor sparc_exception_name() out of sparc_cpu_do_interrupt() and register it as the CPUClass::exception_name() handler, so the common exception logging can resolve SPARC exception codes to names. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/sparc/cpu.h | 1 + target/sparc/cpu.c | 1 + target/sparc/int32_helper.c | 21 +++++++-------------- target/sparc/int64_helper.c | 36 ++++++++++++++++++------------------ 4 files changed, 27 insertions(+), 32 deletions(-) diff --git a/target/sparc/cpu.h b/target/sparc/cpu.h index 31a16c2af03..3c1ba223eb2 100644 --- a/target/sparc/cpu.h +++ b/target/sparc/cpu.h @@ -583,6 +583,7 @@ extern const VMStateDescription vmstate_sparc_cpu; hwaddr sparc_cpu_get_phys_addr_debug(CPUState *cpu, vaddr addr); #endif =20 +const char *sparc_exception_name(int excp); void sparc_cpu_do_interrupt(CPUState *cpu); int sparc_cpu_gdb_read_register(CPUState *cpu, GByteArray *buf, int reg); int sparc_cpu_gdb_write_register(CPUState *cpu, uint8_t *buf, int reg); diff --git a/target/sparc/cpu.c b/target/sparc/cpu.c index ae9bdca9df8..1f9a62a8c76 100644 --- a/target/sparc/cpu.c +++ b/target/sparc/cpu.c @@ -1098,6 +1098,7 @@ static void sparc_cpu_class_init(ObjectClass *oc, con= st void *data) &scc->parent_phases); =20 cc->class_by_name =3D sparc_cpu_class_by_name; + cc->exception_name =3D sparc_exception_name; cc->list_cpus =3D sparc_cpu_list, cc->parse_features =3D sparc_cpu_parse_features; cc->dump_state =3D sparc_cpu_dump_state; diff --git a/target/sparc/int32_helper.c b/target/sparc/int32_helper.c index d6bb3fa1e54..6db5aee81c5 100644 --- a/target/sparc/int32_helper.c +++ b/target/sparc/int32_helper.c @@ -58,12 +58,12 @@ static const char * const excp_names[0x80] =3D { [TT_NCP_INSN] =3D "Coprocessor Disabled", }; =20 -static const char *excp_name_str(int32_t exception_index) +const char *sparc_exception_name(int excp) { - if (exception_index < 0 || exception_index >=3D ARRAY_SIZE(excp_names)= ) { - return "Unknown"; + if (excp >=3D 0x80 && excp < 0x100) { + return "Trap Instruction"; } - return excp_names[exception_index]; + return ARRAY_ELEM_OR_NULL(excp_names, excp) ?: "unknown"; } =20 #if !defined(CONFIG_USER_ONLY) @@ -107,15 +107,7 @@ void sparc_cpu_do_interrupt(CPUState *cs) =20 if (qemu_loglevel_mask(CPU_LOG_INT)) { static int count; - const char *name; - - if (intno < 0 || intno >=3D 0x100) { - name =3D "Unknown"; - } else if (intno >=3D 0x80) { - name =3D "Trap Instruction"; - } else { - name =3D excp_name_str(intno); - } + const char *name =3D sparc_exception_name(intno); =20 qemu_log("%6d: %s (v=3D%02x)\n", count, name, intno); log_cpu_state(cs, 0); @@ -129,7 +121,8 @@ void sparc_cpu_do_interrupt(CPUState *cs) } else { cpu_abort(cs, "Trap 0x%02x (%s) while interrupts disabled, " "Error state", - cs->exception_index, excp_name_str(cs->exception_ind= ex)); + cs->exception_index, + sparc_exception_name(cs->exception_index)); } return; } diff --git a/target/sparc/int64_helper.c b/target/sparc/int64_helper.c index 10341e0c282..aa4002e74da 100644 --- a/target/sparc/int64_helper.c +++ b/target/sparc/int64_helper.c @@ -60,6 +60,23 @@ static const char * const excp_names[0x80] =3D { [TT_EXTINT | 0xf] =3D "External Interrupt 15", }; =20 +const char *sparc_exception_name(int excp) +{ + QEMU_BUILD_BUG_ON(ARRAY_SIZE(excp_names) > 0x200); + if (excp < 0 || excp >=3D 0x200) { + return "unknown"; + } else if (excp >=3D 0x180) { + return "Hyperprivileged Trap Instruction"; + } else if (excp >=3D 0x100) { + return "Trap Instruction"; + } else if (excp >=3D 0xc0) { + return "Window Fill"; + } else if (excp >=3D 0x80) { + return "Window Spill"; + } + return excp_names[excp] ?: "unknown"; +} + #if !defined(CONFIG_USER_ONLY) void cpu_check_irqs(CPUSPARCState *env) { @@ -136,24 +153,7 @@ void sparc_cpu_do_interrupt(CPUState *cs) =20 if (qemu_loglevel_mask(CPU_LOG_INT)) { static int count; - const char *name; - - if (intno < 0 || intno >=3D 0x1ff) { - name =3D "Unknown"; - } else if (intno >=3D 0x180) { - name =3D "Hyperprivileged Trap Instruction"; - } else if (intno >=3D 0x100) { - name =3D "Trap Instruction"; - } else if (intno >=3D 0xc0) { - name =3D "Window Fill"; - } else if (intno >=3D 0x80) { - name =3D "Window Spill"; - } else { - name =3D excp_names[intno]; - if (!name) { - name =3D "Unknown"; - } - } + const char *name =3D sparc_exception_name(intno); =20 qemu_log("%6d: %s (v=3D%04x)\n", count, name, intno); log_cpu_state(cs, 0); --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792552929; cv=none; d=zohomail.com; s=zohoarc; b=XCKhFlioIciI9FcjAdCIZXWya/6Biu9W8l59U+QO1eG8clqks11kBqYINNBgAHhOgbOM+Cz+Xb+e+GxrGptuDa2PgZAm4ZeIk7RuweqSpLddDlUxedraYGpjo+cwGxIQdLiLLN94bSbfjk6sJGtLeDnLjdkbmQz553K0h40sqiE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792552929; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=tN/Psdg+xYNFE1sR78SY/F3GxG93c1pM+0fPtjv5xR8=; b=apvrgnmXpxruCoLgUm72NIo8zcoWW+5UyXYAJrQP5rxnVmoI6Ej6wwZr0VhcPvsTuBU0Lrx2u+gnc7oIjrpHTBPqX/ltpBL51feU4PifEag5RKKj1v1LODrPrON4KDaBt1ERNKTbxG/YbE1stmJ1MhH24TLClxyb3Twkyp4x0L0= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 179255292995365.81686840607858; Tue, 20 Oct 2026 20:22:09 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMs8-0001tD-E8; Tue, 20 Oct 2026 23:20:14 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMqc-0000JK-Ox for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:18:39 -0400 Received: from mx0b-0031df01.pphosted.com ([205.220.180.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMqa-0003EB-4Z for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:18:38 -0400 Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L3G4Vx3554514 for ; Wed, 21 Oct 2026 03:18:25 GMT Received: from mail-qk1-f200.google.com (mail-qk1-f200.google.com [209.85.222.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4heh5r0uhs-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:18:25 +0000 (GMT) Received: by mail-qk1-f200.google.com with SMTP id af79cd13be357-93e49a1d3b1so78844685a.2 for ; Tue, 20 Oct 2026 20:18:25 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e2583523asm2456199f8f.37.2026.10.20.20.18.21 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:18:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= tN/Psdg+xYNFE1sR78SY/F3GxG93c1pM+0fPtjv5xR8=; b=Z0gKjcbnqvpnB9AQ ml0TeflIA1bDFi7Bz6qxPJOjoCMRKFUT51wW64YiohxmJGyX+5/LqYvhAm38exWc QQIPiu7FdBlNZi8v21fcrG0rP6zlIWYq+290EAKVxFb+HbsB/UMiYvWmgnxQjphd zspiFvn/5AaITqLFC/hyVtixWYuzachQWkAQG2c7w79zX+GFyI36Kf35t2Sd1RM6 R7KA9e8c1nxD3se8Tc1mbpMgpIFUkC/HELDWcVkFjCm0WqdBWK6L9IeP38D8hkZc GFI9f0su+3LL8WQMBMdubH6RJpiJvUjf8DAf1qkhzv7AgZrIb+DEgkPmxdSBt+Zs GO3+JA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552704; x=1793157504; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=tN/Psdg+xYNFE1sR78SY/F3GxG93c1pM+0fPtjv5xR8=; b=gvcL2UPj78qMjfLIpr1MOCyr1qeBEy357HlbZfuf++0BcUSHWRIBVFK17DAEFR/LZj /UwiltVPoniRlB07fpzGecob4z0kNB2JLZfmvJ7B300J2526CGgzxaYCJeR4DvY5lUC8 XQ1miTtkon/W1pw1YH2ZsXfLFLKHlPOT9ys0Tq4Dp56APbgRxADNwDisDMrdNBV+tYqF LZMf9k4YOAQUPXuG0IRNU94JjWdeh55cu6yJLxFTIGQeHkvfrHbt5Qf0ORC+GBCEjut3 ueNk7TxzqHl8XLXPpnOMBpV51aZFDwdOF890mIw9tZUnKPv+SNnq+2cy0wrCDgOsmdcz Is8A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552704; x=1793157504; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=tN/Psdg+xYNFE1sR78SY/F3GxG93c1pM+0fPtjv5xR8=; b=miJcjxs7d9cuRwvJ/mPDy3/p5C+7avm/l9Sm03PuyMAZJGTR3SPFUqThN81RBm5zmT WGP8WLHArDwhnR7oMTDMX+uyianBWI/lwNY1RhWs5RGa4Zo8kI3Fv4HkVu1PTuaSpNAw NrJlQ6YvlTQ4EtpPmSXfX8zXgdRloMZGA0ADKj+TDX9zQBZw20OX7F5YJ1aU7JeIt/tV xmewoyQ5xsG60nBeOGTpNZ9qCqiS188fm9p0Lf3vHf94+JswuFRAD7rO5O/pEV0KnJ/K SUag+BM3ioMMUkWwucW2o8EK2gjaSxZy4aqiDttAIYZvedXnoB/UuNY/GTRk9s/S8XyI jT/w== X-Gm-Message-State: AFq9FYKh6ZlNddmLZYVXRgjyIxm4p0MkuSJprgFwhwbIVfmzS8Z6xwjr 15IWYNJlDuuIZqRPFeNoFe06j8NcUFTywaBwUdUR3GFWiB5FoJHwDIAZrzfILKj0MvOqkaoY6VZ htgarGRJJ+ZdaPO8w+IDp0eGLNoWNXH9VcuBSu9gPfSUa2/tJ4fVH4VlEUWC5IHA//JBN X-Gm-Gg: AYBFou3lfLYYrnFZDG51bL3s2iZljjQKWbQzgWM6T4VOjB9TJfZaJyanG7meDeCCfjg GHIiDUMiFck9o9+6IE1Rh54jb+4Fpd/kXbTAYzcTvztnIeCwOzhcFJxmSo6/P+nJKzRChkZWahi zdROz2pnpuDmFiYJaMF5uBXw5c0pBHafceF0XBswspqJgRvhULyIudRX/f+bEIF93MnIOXcG1Yw x6bC/83VbeBRtj0Zl7Nozu2GYxCOuosL4PzLo4fXi2jLp+aTNCzihOyaiuC+RvBFe7xEclNmzth 1KtIuQGabiWhHYk8TdTkTprOZFN+hS4a4TEEEoutyVH7tyUtFzuvZPocZ4+7qH5NoH+/jhLpn4b Yhz92/VKAE/V5vfmDO+L303PeO9BnEgx2bB2Z7cbq X-Received: by 2002:a05:620a:1d09:b0:93f:dea:3b7e with SMTP id af79cd13be357-93f57f055damr221204885a.24.1792552704514; Tue, 20 Oct 2026 20:18:24 -0700 (PDT) X-Received: by 2002:a05:620a:1d09:b0:93f:dea:3b7e with SMTP id af79cd13be357-93f57f055damr221201785a.24.1792552704052; Tue, 20 Oct 2026 20:18:24 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 32/33] target/tricore: Implement and register CPUClass::exception_name() Date: Wed, 21 Oct 2026 05:14:05 +0200 Message-ID: <20261021031407.24862-33-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Authority-Analysis: v=2.4 cv=aI5lOr9m c=1 sm=1 tr=0 ts=6ad82f01 cx=c_pps a=hnmNkyzTK/kJ09Xio7VxxA==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=gowsoOTTUOVcmtlkKump:22 a=EUspDBNiAAAA:8 a=M3mzNYHUzacmDIfs9B8A:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=PEH46H7Ffwr30OY-TuGO:22 X-Proofpoint-ORIG-GUID: FJ0cGm-bHy62PG-gr6ls-UcKWjtYEs5e X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX/r3nPZ5HdcE4 2uPKArfQ5gUftIbJekwpEDg9B/iVOtIYnKADMRBD5OPOk46d/3E/gK6d7yVe4SBJrzocG+2Z5Rr 6ou/fMxfTlzGkJ/94vADQJ12685u1aXfq/3v3erzmp9pHUOket55Lc+zruWfUSxdH1/vrjCUrzL tExvhhOZSB8NymqXKxlTxbDUKqIpVtZ89dx6e2qB/xuw6SxFSVYqrYf59GFOIwJIpopPn+mghQ8 MaL/EaVB21WAm+oKjOdEnJSiDb082Zam1zj/gLLdlnLcdfhCsy01VwO5SIQjKtjPxrxsFAKwLzs jT8gN6LqSiSnS1Ka7/qtbykLZjVmXhm8+0/nkhF8AKHqiAqI1/INiQJBntVRe90PZ56smKvOppu z4MlzhwjZZSzSgodzX75kbBg9Ty+DAMMBGRu/VIqnSkgGMT/DMogK/keXG0TDovL5s+lYiGIKCZ 2KNHtYILQHlYmDcat1w== X-Proofpoint-GUID: FJ0cGm-bHy62PG-gr6ls-UcKWjtYEs5e X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX/k0N6aq2rOEp I1Qm+3zkjk6yziinZC2jYy44tXWX5PbOTyyim9mVLnWbEhVKML6D7ZmHAcXLsFr746M4TzHI+to 17yjvAWLgWnmjThhYFueGhnjs7S35E8= X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 clxscore=1015 impostorscore=0 spamscore=0 bulkscore=0 malwarescore=0 suspectscore=0 adultscore=0 phishscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.180.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0b-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792552930143158500 Implement tricore_trap_name() and register it as the CPUClass::exception_name() handler, so the common exception logging can resolve TriCore trop numbers to names. Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/tricore/cpu.h | 2 ++ target/tricore/cpu.c | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/target/tricore/cpu.h b/target/tricore/cpu.h index 12e497d2a7a..fb8d2fd1011 100644 --- a/target/tricore/cpu.h +++ b/target/tricore/cpu.h @@ -178,6 +178,8 @@ enum { TRAPC_IRQ =3D 8 }; =20 +const char *tricore_trap_name(int trap); + /* Class 0 TIN */ enum { TIN0_VAF =3D 0, diff --git a/target/tricore/cpu.c b/target/tricore/cpu.c index 84a05e3d363..632568a6544 100644 --- a/target/tricore/cpu.c +++ b/target/tricore/cpu.c @@ -36,6 +36,23 @@ static const gchar *tricore_gdb_arch_name(CPUState *cs) return "tricore"; } =20 +const char *tricore_trap_name(int trap) +{ + static const char * const trap_names[] =3D { + [TRAPC_MMU] =3D "mmu", + [TRAPC_PROT] =3D "prot", + [TRAPC_INSN_ERR] =3D "insn err", + [TRAPC_CTX_MNG] =3D "ctx mng", + [TRAPC_SYSBUS] =3D "sysbus", + [TRAPC_ASSERT] =3D "assert", + [TRAPC_SYSCALL] =3D "syscall", + [TRAPC_NMI] =3D "NMI", + [TRAPC_IRQ] =3D "IRQ", + }; + + return ARRAY_ELEM_OR_NULL(trap_names, trap) ?: "unknown"; +} + static void tricore_disas_set_info(const CPUState *cpu, disassemble_info *= info) { CPUTriCoreState *env =3D cpu_env((CPUState *)cpu); @@ -240,6 +257,7 @@ static void tricore_cpu_class_init(ObjectClass *c, cons= t void *data) resettable_class_set_parent_phases(rc, NULL, tricore_cpu_reset_hold, N= ULL, &mcc->parent_phases); cc->class_by_name =3D tricore_cpu_class_by_name; + cc->exception_name =3D tricore_trap_name; =20 cc->gdb_read_register =3D tricore_cpu_gdb_read_register; cc->gdb_write_register =3D tricore_cpu_gdb_write_register; --=20 2.55.0 From nobody Fri Oct 23 20:50:54 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=oss.qualcomm.com ARC-Seal: i=1; a=rsa-sha256; t=1792553188; cv=none; d=zohomail.com; s=zohoarc; b=jR+xqm/Ks7R3K81rEo3oI6KAM9jJYQYOr3CG9AlQ2S9P8G62P0kQ7h62FPQZfRlxNFY0sG/20KVsfClbpRBqI7VkeYWGE3VOicMXui5aOV8uWvc4wIbxQO8t4DPwkQm9o2rde6CZNO/DH07xYzVA4aW8He7N421OAlhBDUUoctQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1792553188; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=D6JPPbP2ID1neE5DTExklpLS1x7Fwl4KCF0KFVVUP3Y=; b=GlfvYElOvn3iVdg6ySBlwQk/myOJDQBFLKDqN6xj1Adf09zVio6/PntbhGj8jiKEl/qiUzvVN0tPdxTlJFHLUUmFyI1gEjsqxtpBTLePAUIC4j10R4PY1fphUmgGeI8B1LQ5cLuRAQJcqagObXcTEfQ47EN1grasLIQgBLS8TPQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1792553188013870.8164000736682; Tue, 20 Oct 2026 20:26:28 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1xJMsE-0002DF-La; Tue, 20 Oct 2026 23:20:18 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMqj-0000jx-U9 for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:18:46 -0400 Received: from mx0b-0031df01.pphosted.com ([205.220.180.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1xJMqh-0003FY-87 for qemu-devel@nongnu.org; Tue, 20 Oct 2026 23:18:45 -0400 Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 69L36Ee63532775 for ; Wed, 21 Oct 2026 03:18:32 GMT Received: from mail-qk1-f198.google.com (mail-qk1-f198.google.com [209.85.222.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4heh5r0ujh-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 21 Oct 2026 03:18:32 +0000 (GMT) Received: by mail-qk1-f198.google.com with SMTP id af79cd13be357-93f32050e72so101149485a.1 for ; Tue, 20 Oct 2026 20:18:32 -0700 (PDT) Received: from localhost.localdomain (pmd666.hd.free.fr. [88.187.86.199]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-48e25b04883sm2363770f8f.0.2026.10.20.20.18.29 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 20 Oct 2026 20:18:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= D6JPPbP2ID1neE5DTExklpLS1x7Fwl4KCF0KFVVUP3Y=; b=WhO41krXCyhNUqb/ J5DWeUeW0gvAdbukW4/VYQ2EZGMM9nCqXDMs82We8GQPrlLYmTZR1f8i4UGnAmEo mU56DPIky4CBDM6aozjtgDDB6Gz772YTZrPqLhSXEJ+TplbfbvuLUhJfZWxDnWTI rQ33U9/kOUj0I0CJapQ8y206Of8WGsDUYehvfkiNQgbRbo2UDZGt6fAbQU1GtZYc 7dQRPuPsm/JZgIwtnFhHOXL8MWm8RkQRdOiIoqgdjf7X4iP6dWiJuel075E9Gqz/ PHGaFNl7yhGHvAqMyjOCrzlUzrndy4JOd+ZBwlNSqonZC/ZA//FpFYgexh9TM48v W0WG0w== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1792552711; x=1793157511; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=D6JPPbP2ID1neE5DTExklpLS1x7Fwl4KCF0KFVVUP3Y=; b=dGvyyQidaYcljE2o6URNxZcv7RhuQ1t3LjUoZV5XLXGlXSoI1vVf2MbGk0EGCiZag3 +/zDr120eiIbYJ7UxGgRcCUNC+xxrJDc2DJ2kw0hyV8w/YivOaeMmZqRlnWChr87ZsNU /QKaVS9njuVOmvc4jKOvJsumtGBDBeJQlHgZdLoRPu1uVv1S86vWqeAsDUVIVqv1Ce9Z hpLemFAoEy5QxGj8XKhVsXatSSYdj6Q3gJwyrwLmcgeBaKVkUofds+toYrCYQfi5n4f1 RMei2PAC0H5oLugdkkACBbc3gKVMpOUrouhBNdnoIQLzV4qKLfOewvQLxSrwEidIJZdl 0EoQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792552711; x=1793157511; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=D6JPPbP2ID1neE5DTExklpLS1x7Fwl4KCF0KFVVUP3Y=; b=MLPk9zMSh0PwRDCvO5OpF0ikM2Hoemv3rADHIseXcITfm7hY0niiuWzPxFpTxKCZx7 gEtF/8R4SCfhLP/dgHJ8o+azLiTD0fQS3328gtF2Xmqm/ZUqxjt1kR+/1fTTkMxzDZDd JWiF3VPGnvCa8pJ4gX0OU08ByRRsSHuo6688KW2xmccrIu8BwyW034yOVjqrF1xpnvMS 6nEe1C5tlxzKxCnrqXziltDkNTBmM0/d+3RNAcn8aU6Q1BbKnXEneKaB9ijzlc3CeIyg nYAnR8cnE7OFpdrgusJjbUMIjP74++njRza9Vrj9bnJb3BEi6Z3qp1iV8pxHEpARm6xH RkHQ== X-Gm-Message-State: AFq9FYLXAX91lqcBf77IHMgM2Me+9O7N14Lamedd/ir1N1wRzcfphOT1 61YAxTcRLT9YhRkM6FKgr98c9aZqzrNvcUauWTLM1Ba2KWL6e4FyuCrV/Ajrn9Y/ORVX8+7xuMi IwwfM0AwaO2jJSPl6Lb2U3+T76froaKQ0N9ZjK8iFF0R8P6MVhz16eabRqlpjHFHHFzRC X-Gm-Gg: AYBFou0rZQYo5aBzzYxYG/7aXZBjZ0Toq07T0CCSQLxJ3R1HErCRsR6e3T4CMZOGVfO TY7MBRirtHqtI4hRULxAW2oKr2Z7kMcVpQffBXxHXlfhJf8fOncW3TQTTj053X0QnmT8vhv7MCV pr8hrkLpEWnmkHRQITkvj4YntIcIGn7cpatTnyH+yBAPKFNXhLf/iLxUhaxqZ/X8RzhoMHGou1B +s4zXn6YRNDBO64EhFwgRD+2C/y0MnQJi1EqudqpdxaTvq8veVQxQcl3YWggeko/VP6HmmyrX7c jl1JuLFim1yQlApGX2vkgIPtFYFAnBxYtCHmD/Qb27gK92Ssdknx734C99x95+UbXaqb8OmqRbj /9TqYtumj2Ko3tiOhcIidt5ZdPRXQvo2K1P+5SnLB X-Received: by 2002:a05:620a:2913:b0:93e:53fd:4137 with SMTP id af79cd13be357-93f57f1f09emr220446485a.20.1792552711581; Tue, 20 Oct 2026 20:18:31 -0700 (PDT) X-Received: by 2002:a05:620a:2913:b0:93e:53fd:4137 with SMTP id af79cd13be357-93f57f1f09emr220444485a.20.1792552711090; Tue, 20 Oct 2026 20:18:31 -0700 (PDT) From: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= To: qemu-devel@nongnu.org Cc: qemu-ppc@nongnu.org, qemu-riscv@nongnu.org, qemu-arm@nongnu.org, qemu-s390x@nongnu.org, Pierrick Bouvier Subject: [PATCH v2 33/33] target/xtensa: Implement and register CPUClass::exception_name() Date: Wed, 21 Oct 2026 05:14:06 +0200 Message-ID: <20261021031407.24862-34-philmd@oss.qualcomm.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20261021031407.24862-1-philmd@oss.qualcomm.com> References: <20261021031407.24862-1-philmd@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Authority-Analysis: v=2.4 cv=aI5lOr9m c=1 sm=1 tr=0 ts=6ad82f08 cx=c_pps a=qKBjSQ1v91RyAK45QCPf5w==:117 a=4s3hRJSeHn4rkQlkrse1kQ==:17 a=IkcTkHD0fZMA:10 a=660iZSQnnn4A:10 a=M51BFTxLslgA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=gowsoOTTUOVcmtlkKump:22 a=EUspDBNiAAAA:8 a=-R6i_BgWeFa1qxdD66wA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=NFOGd7dJGGMPyQGDc5-O:22 X-Proofpoint-ORIG-GUID: FaX_M64Wyb4bgRcNJQKdqQMc6OJ3UklX X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfXwblK++Zwsw13 lo4FkHc7HZscbDRZF1PfRrno4zcWGzcxXHeb9/qqqUgZE3cpzaPwwWvZycaC10NUI5KPAb7h84e 8mTPlTFu8mooC14C0hmnwGO4Kh6tG1Wm80U5y6hCxDvbhzN6VGn3Ddxn/lEnVcmDzsbqMqDPHiE zvCGp4OOZSG6lnIp3kKPqb5lG+Moc8X3jWfKlIcoFaLXa+2fvvs60mYlD4CcFcbHXkBMYUfwUNq Udz7wgX2MD3n4C2GBH91/fbVzGqq1N+lgHL4gp2dQxKhzpFRbKh59zC1szn1pWoxfYVzIxLzU51 /PLfm9rZWWBeNkM6dnyWcWISrQZWLGwhxza21sRciBEu/knH4J4MJjI3IhwN2QOKtJcSnGJOSnJ nIYBZL/weX4rT27JfJVeACI1Ek8AOo3SjSRP1P9Auqx/vDlmL30IzNDUt5ncUQfUQJDkmQAfFZA UrDBhCS0jSdRMcTl+hw== X-Proofpoint-GUID: FaX_M64Wyb4bgRcNJQKdqQMc6OJ3UklX X-Proofpoint-Spam-Info: AW1haW4tMjYxMDIxMDAxMiBTYWx0ZWRfX+P6WA0bt5E12 YL36Ap/ypcd5m4mURImcjKtVDJlyb7IyR0fe/y+Vo3Qx4BnionjOKGVUWnl/rt39jLHEzDEwtI/ PahBM3WIsxQRoD5hHUQeTGjwklnnb6s= X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-10-21_01,2026-10-19_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 clxscore=1015 impostorscore=0 spamscore=0 bulkscore=0 malwarescore=0 suspectscore=0 adultscore=0 phishscore=0 lowpriorityscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2610190000 definitions=main-2610210012 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=205.220.180.131; envelope-from=philmd@oss.qualcomm.com; helo=mx0b-0031df01.pphosted.com X-Spam_score_int: -2 X-Spam_score: -0.3 X-Spam_bar: / X-Spam_report: (-0.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, SUSPICIOUS_RECIPS=2.51 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @qualcomm.com) X-ZM-MESSAGEID: 1792553189321158500 Implement xtensa_exception_name() and register it as the CPUClass::exception_name() handler, so the common exception logging can resolve Xtensa exception codes to names. Use the new helper in xtensa_cpu_do_interrupt(). Signed-off-by: Philippe Mathieu-Daud=C3=A9 Reviewed-by: Pierrick Bouvier --- target/xtensa/cpu.h | 2 ++ target/xtensa/cpu.c | 23 +++++++++++++++++++++++ target/xtensa/exc_helper.c | 3 ++- 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/target/xtensa/cpu.h b/target/xtensa/cpu.h index 49d6ad9083d..3440c27862b 100644 --- a/target/xtensa/cpu.h +++ b/target/xtensa/cpu.h @@ -262,6 +262,8 @@ enum { EXC_MAX }; =20 +const char *xtensa_exception_name(int excp); + enum { ILLEGAL_INSTRUCTION_CAUSE =3D 0, SYSCALL_CAUSE, diff --git a/target/xtensa/cpu.c b/target/xtensa/cpu.c index 7c25b9ab707..1f9cb7156be 100644 --- a/target/xtensa/cpu.c +++ b/target/xtensa/cpu.c @@ -239,6 +239,28 @@ static void xtensa_cpu_disas_set_info(const CPUState *= cs, : BFD_ENDIAN_LITTLE; } =20 +const char *xtensa_exception_name(int excp) +{ + static const char * const excp_names[] =3D { + [EXC_RESET0] =3D "reset", + [EXC_RESET1] =3D "reset", + [EXC_MEMORY_ERROR] =3D "memory error", + [EXC_WINDOW_OVERFLOW4] =3D "window overflow", + [EXC_WINDOW_UNDERFLOW4] =3D "window underflow", + [EXC_WINDOW_OVERFLOW8] =3D "window overflow", + [EXC_WINDOW_UNDERFLOW8] =3D "window underflow", + [EXC_WINDOW_OVERFLOW12] =3D "window overflow", + [EXC_WINDOW_UNDERFLOW12] =3D "window underflow", + [EXC_IRQ] =3D "interrupt", + [EXC_KERNEL] =3D "kernel", + [EXC_USER] =3D "user", + [EXC_DOUBLE] =3D "double", + [EXC_DEBUG] =3D "debug", + }; + + return ARRAY_ELEM_OR_NULL(excp_names, excp) ?: "unknown"; +} + static void xtensa_cpu_realizefn(DeviceState *dev, Error **errp) { CPUState *cs =3D CPU(dev); @@ -348,6 +370,7 @@ static void xtensa_cpu_class_init(ObjectClass *oc, cons= t void *data) &xcc->parent_phases); =20 cc->class_by_name =3D xtensa_cpu_class_by_name; + cc->exception_name =3D xtensa_exception_name; cc->dump_state =3D xtensa_cpu_dump_state; cc->set_pc =3D xtensa_cpu_set_pc; cc->get_pc =3D xtensa_cpu_get_pc; diff --git a/target/xtensa/exc_helper.c b/target/xtensa/exc_helper.c index 7cb67d179a8..ff71e5d6462 100644 --- a/target/xtensa/exc_helper.c +++ b/target/xtensa/exc_helper.c @@ -236,9 +236,10 @@ void xtensa_cpu_do_interrupt(CPUState *cs) case EXC_USER: case EXC_DOUBLE: case EXC_DEBUG: - qemu_log_mask(CPU_LOG_INT, "%s(%d) " + qemu_log_mask(CPU_LOG_INT, "%s(%d:%s) " "pc =3D %08x, a0 =3D %08x, ps =3D %08x, ccount =3D %= 08x\n", __func__, cs->exception_index, + xtensa_exception_name(cs->exception_index), env->pc, env->regs[0], env->sregs[PS], env->sregs[CCOUNT]); if (env->config->exception_vector[cs->exception_index]) { --=20 2.55.0