From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=56986 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PPeQF-0002PA-OZ for qemu-devel@nongnu.org; Mon, 06 Dec 2010 12:00:27 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PPeQD-00063k-VA for qemu-devel@nongnu.org; Mon, 06 Dec 2010 12:00:19 -0500 Received: from mnementh.archaic.org.uk ([81.2.115.146]:34389) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PPeQD-00063W-MS for qemu-devel@nongnu.org; Mon, 06 Dec 2010 12:00:17 -0500 Received: from pm215 by mnementh.archaic.org.uk with local (Exim 4.69) (envelope-from ) id 1PPeQ7-0007mP-WD for qemu-devel@nongnu.org; Mon, 06 Dec 2010 17:00:12 +0000 From: Peter Maydell Date: Mon, 6 Dec 2010 17:00:11 +0000 Message-Id: <1291654811-29863-11-git-send-email-peter.maydell@linaro.org> In-Reply-To: <1291654811-29863-1-git-send-email-peter.maydell@linaro.org> References: <1291654811-29863-1-git-send-email-peter.maydell@linaro.org> Subject: [Qemu-devel] [PATCH 10/10] ARM: Implement VCVT to 16 bit integer using new softfloat routines List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Use the softfloat conversion routines for conversion to 16 bit integers, because just casting to a 16 bit type truncates the value rather than saturating it at 16-bit MAXINT/MININT. Signed-off-by: Peter Maydell Reviewed-by: Nathan Froyd --- target-arm/helper.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/target-arm/helper.c b/target-arm/helper.c index 2925782..9ba2f4f 100644 --- a/target-arm/helper.c +++ b/target-arm/helper.c @@ -2560,7 +2560,7 @@ ftype VFP_HELPER(to##name, p)(ftype x, uint32_t shift, CPUState *env) \ return ftype##_zero; \ } \ tmp = ftype##_scalbn(x, shift, &env->vfp.fp_status); \ - return vfp_ito##p((itype)ftype##_to_##sign##int32_round_to_zero(tmp, \ + return vfp_ito##p(ftype##_to_##itype##_round_to_zero(tmp, \ &env->vfp.fp_status)); \ } -- 1.6.3.3