From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=60686 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Pova8-0001ek-MZ for qemu-devel@nongnu.org; Mon, 14 Feb 2011 05:23:01 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Pova7-0007GP-Gx for qemu-devel@nongnu.org; Mon, 14 Feb 2011 05:23:00 -0500 Received: from mnementh.archaic.org.uk ([81.2.115.146]:38934) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Pova7-0007FP-4g for qemu-devel@nongnu.org; Mon, 14 Feb 2011 05:22:59 -0500 From: Peter Maydell Date: Mon, 14 Feb 2011 10:22:47 +0000 Message-Id: <1297678969-3433-1-git-send-email-peter.maydell@linaro.org> Subject: [Qemu-devel] [PATCH v2 0/2] target-arm: fix Neon VUZP, VZIP instructions 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 This patch series fixes bugs in the Neon VZIP and VUZP instructions by abandoning the existing inline implementations in favour of calling out to straightforward helper functions. The inline routines could generate 50+ TCG ops each, which is well over the recommended limit in tcg/README for using helpers instead; they also did not give the correct results... I've tested these patches using the usual random instruction generation approach. V2 changes: moved the decoding of register numbers, size and q flag out of the helper functions into translate.c; split the helpers up into one per (size, q) combination. Peter Maydell (2): target-arm: Move Neon VUZP to helper functions target-arm: Move Neon VZIP to helper functions target-arm/helpers.h | 11 +++ target-arm/neon_helper.c | 186 +++++++++++++++++++++++++++++++++++++++ target-arm/translate.c | 215 +++++++++++++++------------------------------- 3 files changed, 267 insertions(+), 145 deletions(-)