From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=54499 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Q9J0i-0004MA-PA for qemu-devel@nongnu.org; Mon, 11 Apr 2011 11:26:42 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Q9J0h-0007je-0v for qemu-devel@nongnu.org; Mon, 11 Apr 2011 11:26:39 -0400 Received: from mnementh.archaic.org.uk ([81.2.115.146]:38275) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Q9J0g-0007bo-OJ for qemu-devel@nongnu.org; Mon, 11 Apr 2011 11:26:38 -0400 From: Peter Maydell Date: Mon, 11 Apr 2011 16:26:23 +0100 Message-Id: <1302535583-15733-14-git-send-email-peter.maydell@linaro.org> In-Reply-To: <1302535583-15733-1-git-send-email-peter.maydell@linaro.org> References: <1302535583-15733-1-git-send-email-peter.maydell@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: [Qemu-devel] [PATCH 13/13] target-arm: Handle UNDEF cases for VDUP (scalar) List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: patches@linaro.org From: Juha Riihimäki Handle the UNDEF cases for VDUP(scalar): imm4 == x000 Q == 1 && Vd<0> == 1 Signed-off-by: Juha Riihimäki --- target-arm/translate.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/target-arm/translate.c b/target-arm/translate.c index be25c8f..6190028 100644 --- a/target-arm/translate.c +++ b/target-arm/translate.c @@ -6057,6 +6057,9 @@ static int disas_neon_data_insn(CPUState * env, DisasContext *s, uint32_t insn) tcg_temp_free_i32(tmp); } else if ((insn & 0x380) == 0) { /* VDUP */ + if ((insn & (7 << 16)) == 0 || (q && (rd & 1))) { + return 1; + } if (insn & (1 << 19)) { tmp = neon_load_reg(rm, 1); } else { -- 1.7.1