From patchwork Thu Mar 1 15:56:19 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: David Brenken X-Patchwork-Id: 879922 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=nongnu.org (client-ip=2001:4830:134:3::11; helo=lists.gnu.org; envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=efs-auto.org Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3zscb50LlVz9s2b for ; Fri, 2 Mar 2018 03:00:17 +1100 (AEDT) Received: from localhost ([::1]:57778 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1erQcx-0003ne-3i for incoming@patchwork.ozlabs.org; Thu, 01 Mar 2018 11:00:15 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58361) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1erQZx-0001YC-7L for qemu-devel@nongnu.org; Thu, 01 Mar 2018 10:57:12 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1erQZw-0002P3-B8 for qemu-devel@nongnu.org; Thu, 01 Mar 2018 10:57:09 -0500 Received: from mout.kundenserver.de ([212.227.126.134]:37273) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1erQZw-0002Oq-1E for qemu-devel@nongnu.org; Thu, 01 Mar 2018 10:57:08 -0500 Received: from localhost.localdomain ([178.239.76.114]) by mrelayeu.kundenserver.de (mreue002 [212.227.15.167]) with ESMTPSA (Nemesis) id 0McvJJ-1f9N4K3Ag5-00HsqC; Thu, 01 Mar 2018 16:57:05 +0100 From: David Brenken To: qemu-devel@nongnu.org Date: Thu, 1 Mar 2018 16:56:19 +0100 Message-Id: <20180301155619.8640-5-david.brenken@efs-auto.org> X-Mailer: git-send-email 2.16.1.windows.4 In-Reply-To: <20180301155619.8640-1-david.brenken@efs-auto.org> References: <20180301155619.8640-1-david.brenken@efs-auto.org> X-Provags-ID: V03:K0:vnBhcXl9IYJNe2eIBlAo3tXwUoY1g1959ZarM1L58FVys+WRkLP rI0zmNNlwuOcPL/oZCb5KBGDu1O0mVVXxSzx+Iwf/ExJ7C6INNEYs4A0LLtczlo6LT+Xf+K c+ZxxweR5bmAaY0rLtB1wd6U9AuoKw4rGPCBDAQTkNnDRbLKvQgOzT8KA4nIdaqptW/D/kL 2jdobGVWPPvFZ+rxCdGzw== X-UI-Out-Filterresults: notjunk:1; V01:K0:xw3XLnoGCy0=:v4vzWftw8GO+qVbmO2VLZ+ CKXgCXRxQ+tqj7XwipmPta5YsaKJM4cT53tcA8h1nWVlAAPK0bijQ4Nm78WpebxDshZw8Zdtk aGkTPIzFalXk/6KY5GJ7QyxMpupHAasjbDrbfwrcTELkazYV2y1gzILWlC71W+ukJUSrD3B6F ba35UGh3eWO6T8TSWFeyyKojZoMvPH23R3gwWcHWMgRTZFXVLvLxhVxWuLNzcFRkxnz5gaBdN 9HhRG1OY1sEdq1grQdW6ZuKP8K3yOlLaxAWv4bebw8qSYiyF8E5meD8S/KtJ4SoJqfYT0f6Z5 thp+EECcy5kWlrKsbGUs+vhTfhBsKtuz3eem2hJCWbdCaSjxJZdxP09LCqVF1EzrTGTg06hRN rcHw1GsT8feQ/WmYmGkTcBCcOcnIrZAXwLIVjD9XsOa8j6Ao3uxfG2EMf/4Kx1uW4+M64ox6y 4nSaWb0JJzvgNpyU+NCP9OeW6ROSG9pHb2Hl84r16BzcRv0WtV1eZQ76Zfq/DGhlF0qF9iFCg r40u34LCcMEMR8kt3R2hVQekeU3KajjB6uvcYhzGnIGSouEeno43u3saqEWO8y1K+/4bKix5h oo6K2bgxJbpjWC42voQ+4UL1++YxM4wL5NdBkIEcMn/XV0gW7hwmMWT5oEMHrtWY6/ME/7ZGH hs3LtwgnsqLoK4mmp2CvKhhBdNf3k0cweHio/Z+SHg805h5baVndhFuRZ4UdUlH5L+yNWuF0E 3W7V9PzN4pCiUMkBef4UkXUvYZd/iN+4kl1NrQ== X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 212.227.126.134 Subject: [Qemu-devel] [PATCH v2 4/4] tricore: renamed masking of PIE X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kbastian@mail.uni-paderborn.de, Florian Artmeier , David Brenken , Georg Hofstetter Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: "Qemu-devel" From: David Brenken Signed-off-by: David Brenken Signed-off-by: Florian Artmeier Signed-off-by: Georg Hofstetter --- target/tricore/cpu.h | 3 ++- target/tricore/op_helper.c | 16 ++++++++-------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/target/tricore/cpu.h b/target/tricore/cpu.h index a98b6f2..defab5e 100644 --- a/target/tricore/cpu.h +++ b/target/tricore/cpu.h @@ -230,7 +230,8 @@ void tricore_cpu_dump_state(CPUState *cpu, FILE *f, #define MASK_PCXI_PCPN 0xff000000 -#define MASK_PCXI_PIE 0x00800000 +#define MASK_PCXI_PIE_1_3 0x00800000 +#define MASK_PCXI_PIE_1_6 0x00200000 #define MASK_PCXI_UL 0x00400000 #define MASK_PCXI_PCXS 0x000f0000 #define MASK_PCXI_PCXO 0x0000ffff diff --git a/target/tricore/op_helper.c b/target/tricore/op_helper.c index 475b6ce..16955f2 100644 --- a/target/tricore/op_helper.c +++ b/target/tricore/op_helper.c @@ -84,7 +84,7 @@ raise_exception_sync_internal(CPUTriCoreState *env, uint32_t class, int tin, ICR.IE and ICR.CCPN are saved */ /* PCXI.PIE = ICR.IE */ - env->PCXI = ((env->PCXI & ~MASK_PCXI_PIE) + + env->PCXI = ((env->PCXI & ~MASK_PCXI_PIE_1_3) + ((env->ICR & MASK_ICR_IE_1_3) << 15)); /* PCXI.PCPN = ICR.CCPN */ env->PCXI = (env->PCXI & 0xffffff) + @@ -2464,7 +2464,7 @@ void helper_call(CPUTriCoreState *env, uint32_t next_pc) env->PCXI = (env->PCXI & 0xffffff) + ((env->ICR & MASK_ICR_CCPN) << 24); /* PCXI.PIE = ICR.IE; */ - env->PCXI = ((env->PCXI & ~MASK_PCXI_PIE) + + env->PCXI = ((env->PCXI & ~MASK_PCXI_PIE_1_3) + ((env->ICR & MASK_ICR_IE_1_3) << 15)); /* PCXI.UL = 1; */ env->PCXI |= MASK_PCXI_UL; @@ -2562,7 +2562,7 @@ void helper_bisr(CPUTriCoreState *env, uint32_t const9) env->PCXI = (env->PCXI & 0xffffff) + ((env->ICR & MASK_ICR_CCPN) << 24); /* PCXI.PIE = ICR.IE */ - env->PCXI = ((env->PCXI & ~MASK_PCXI_PIE) + + env->PCXI = ((env->PCXI & ~MASK_PCXI_PIE_1_3) + ((env->ICR & MASK_ICR_IE_1_3) << 15)); /* PCXI.UL = 0 */ env->PCXI &= ~(MASK_PCXI_UL); @@ -2604,7 +2604,7 @@ void helper_rfe(CPUTriCoreState *env) env->PC = env->gpr_a[11] & ~0x1; /* ICR.IE = PCXI.PIE; */ env->ICR = (env->ICR & ~MASK_ICR_IE_1_3) - + ((env->PCXI & MASK_PCXI_PIE) >> 15); + + ((env->PCXI & MASK_PCXI_PIE_1_3) >> 15); /* ICR.CCPN = PCXI.PCPN; */ env->ICR = (env->ICR & ~MASK_ICR_CCPN) + ((env->PCXI & MASK_PCXI_PCPN) >> 24); @@ -2628,8 +2628,8 @@ void helper_rfm(CPUTriCoreState *env) { env->PC = (env->gpr_a[11] & ~0x1); /* ICR.IE = PCXI.PIE; */ - env->ICR = (env->ICR & ~MASK_ICR_IE_1_3) | - ((env->PCXI & MASK_PCXI_PIE) >> 15); + env->ICR = (env->ICR & ~MASK_ICR_IE_1_3) + | ((env->PCXI & MASK_PCXI_PIE_1_3) >> 15); /* ICR.CCPN = PCXI.PCPN; */ env->ICR = (env->ICR & ~MASK_ICR_CCPN) | ((env->PCXI & MASK_PCXI_PCPN) >> 24); @@ -2694,7 +2694,7 @@ void helper_svlcx(CPUTriCoreState *env) env->PCXI = (env->PCXI & 0xffffff) + ((env->ICR & MASK_ICR_CCPN) << 24); /* PCXI.PIE = ICR.IE; */ - env->PCXI = ((env->PCXI & ~MASK_PCXI_PIE) + + env->PCXI = ((env->PCXI & ~MASK_PCXI_PIE_1_3) + ((env->ICR & MASK_ICR_IE_1_3) << 15)); /* PCXI.UL = 0; */ env->PCXI &= ~MASK_PCXI_UL; @@ -2737,7 +2737,7 @@ void helper_svucx(CPUTriCoreState *env) env->PCXI = (env->PCXI & 0xffffff) + ((env->ICR & MASK_ICR_CCPN) << 24); /* PCXI.PIE = ICR.IE; */ - env->PCXI = ((env->PCXI & ~MASK_PCXI_PIE) + + env->PCXI = ((env->PCXI & ~MASK_PCXI_PIE_1_3) + ((env->ICR & MASK_ICR_IE_1_3) << 15)); /* PCXI.UL = 1; */ env->PCXI |= MASK_PCXI_UL;