From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:47762) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QhIR6-0001Dv-4F for qemu-devel@nongnu.org; Thu, 14 Jul 2011 05:42:25 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QhIR2-0002w7-6N for qemu-devel@nongnu.org; Thu, 14 Jul 2011 05:42:23 -0400 Received: from mail-iw0-f173.google.com ([209.85.214.173]:47869) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QhIR1-0002vm-Sk for qemu-devel@nongnu.org; Thu, 14 Jul 2011 05:42:20 -0400 Received: by iwn3 with SMTP id 3so42896iwn.4 for ; Thu, 14 Jul 2011 02:42:18 -0700 (PDT) From: Tsuneo Saito Date: Thu, 14 Jul 2011 18:41:40 +0900 Message-Id: <1310636503-8956-6-git-send-email-tsnsaito@gmail.com> In-Reply-To: <1310636503-8956-1-git-send-email-tsnsaito@gmail.com> References: <1310636503-8956-1-git-send-email-tsnsaito@gmail.com> Subject: [Qemu-devel] [PATCH v2 5/8] SPARC64: Add UA2007 ASI_BLK_AIU[PS]L? ASIs for ldfa List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Tsuneo Saito Support UA2007 block load ASIs for ldfa instructions. Signed-off-by: Tsuneo Saito --- target-sparc/op_helper.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/target-sparc/op_helper.c b/target-sparc/op_helper.c index fe71829..b76ffb6 100644 --- a/target-sparc/op_helper.c +++ b/target-sparc/op_helper.c @@ -3353,6 +3353,10 @@ void helper_ldf_asi(target_ulong addr, int asi, int size, int rd) } return; + case 0x16: /* UA2007 Block load primary, user privilege */ + case 0x17: /* UA2007 Block load secondary, user privilege */ + case 0x1e: /* UA2007 Block load primary LE, user privilege */ + case 0x1f: /* UA2007 Block load secondary LE, user privilege */ case 0x70: // Block load primary, user privilege case 0x71: // Block load secondary, user privilege if (rd & 7) { @@ -3361,7 +3365,7 @@ void helper_ldf_asi(target_ulong addr, int asi, int size, int rd) } helper_check_align(addr, 0x3f); for (i = 0; i < 16; i++) { - *(uint32_t *)&env->fpr[rd++] = helper_ld_asi(addr, asi & 0x1f, 4, + *(uint32_t *)&env->fpr[rd++] = helper_ld_asi(addr, asi & 0x19, 4, 0); addr += 4; } -- 1.7.5.4