From patchwork Wed May 2 22:15:45 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Richard Henderson X-Patchwork-Id: 134872 Delivered-To: patch@linaro.org Received: by 10.46.151.6 with SMTP id r6csp1208773lji; Wed, 2 May 2018 15:27:30 -0700 (PDT) X-Google-Smtp-Source: AB8JxZrGldw/uIBgoi5/nioA/AbFtpHNL2oHQ/Y52eDx2iN8xGcuXj3o8WxY+8Av30q0rXmiVKcd X-Received: by 2002:a0c:f690:: with SMTP id p16-v6mr1467596qvn.69.1525300050374; Wed, 02 May 2018 15:27:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1525300050; cv=none; d=google.com; s=arc-20160816; b=K70mLGOROT1i4bljDeUHvPNtMUVQY9wN2dehVW22fSX1MxPFSrmaenGfjSI1r74jmG +cEWDT8SXlOmltW8ssVQR3Lm90RJKQ5egx9BCdzb/XPbguzq0hLK++n8jzSxZ7IBijQi nVD39X3yYATKrR6M0U1YRtcb24n69GaVuZZAnm9ATAfGwSsvyL3ydRB4HBGe0v6zke6q KQQD4nWUr43EfTEH35AsgAotUFZBAqCwqYekbam6kMTXrdPPh4scIKm0NPARXIN7AdAx /mC73SBQK/Uju2pAHmGea0QSah0Yd9I9Kdx/UZrAqWWJ5DeAKaPFMFozo0TIug8kcpgp NGzA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:to:from:dkim-signature:arc-authentication-results; bh=aO/IxXadKJBMZQYzwQFN+bW33atvEbEmYfm1LunIZS0=; b=McBk3YD5KuxMOYTRGxJFq2j4o/zLvZuiio1LzUh6a8j8BVlZLi+pOktBwiFz93B8Aa J6usgewvLIMe4gmjSbJYoC172VLAjJOlhkdCQCkwrap0TsQpsXrXUfAAdUSrw/ulbaVy 5o4IPfD3X4w/Wgy5bx1tpCtBSVQOb4bMZQN6qIfjZqvEogibWXwG9xfYoojq6AwF4fU4 qu9xeGYceNEL/taFN2zbU6dtyIQS8UjB0JjWPQ2+GpNIkn0P8jloDqWoQQ9g+XUhykTo 2ymug4cGFkizMfB6vfB6I9XwATTv+MFubWAtc14GWM4QZX6FnEx+/Uq3rJRWF4xbSbZ/ Wp/g== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=kDI9+kYI; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom=qemu-devel-bounces+patch=linaro.org@nongnu.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id h7-v6si6930926qvk.34.2018.05.02.15.27.30 for (version=TLS1 cipher=AES128-SHA bits=128/128); Wed, 02 May 2018 15:27:30 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=kDI9+kYI; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom=qemu-devel-bounces+patch=linaro.org@nongnu.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:52863 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fE0Dh-0001Y0-R4 for patch@linaro.org; Wed, 02 May 2018 18:27:29 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58837) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fE02i-0000kg-GG for qemu-devel@nongnu.org; Wed, 02 May 2018 18:16:16 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fE02f-0007v6-6e for qemu-devel@nongnu.org; Wed, 02 May 2018 18:16:08 -0400 Received: from mail-pf0-x242.google.com ([2607:f8b0:400e:c00::242]:43067) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fE02f-0007uf-04 for qemu-devel@nongnu.org; Wed, 02 May 2018 18:16:05 -0400 Received: by mail-pf0-x242.google.com with SMTP id b26so199950pfi.10 for ; Wed, 02 May 2018 15:16:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=aO/IxXadKJBMZQYzwQFN+bW33atvEbEmYfm1LunIZS0=; b=kDI9+kYIiW2Ns1Xtcm6k9UlDtX6pF6xMISajHn9ml7wV7mTE9PzDmEh9hHJFwHKSsa gUDCFwaEJBC7OcXV42oC4B1UaEyWTpATQatmnFUPhFXY4kt2IUbvJn/HsN6yMyEVEqJ+ 9rrjgfm4MRbmo8yDXedNKjx5ONITOuVZUUvSw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=aO/IxXadKJBMZQYzwQFN+bW33atvEbEmYfm1LunIZS0=; b=k8QOxb4puFlPyTpvLl7FAG6/1E3LUT4ZukUmpXyan8Zjf0oH5gsGPnoTTIO0N5R237 luuaxQBOAGsz09GP+kKy63/hPrgO/FFfTppGoysoC3IPJq8emLD3oxrExhYiTrLzJnWZ XwvFWM05057OqrDivH+pK94DkNMI4C6r86tCxc28K4Alx6Eus096y+X+xDgFDuqlZIQQ eSLmOSXb4+qWhR6qybeCIvC0TgkZ3s2F/cxAptEBW+ZwmnHZzQB8EXfw7UkgVHBM+8Cy ewk4TC4HIc1abH4IkVaQrxHsTGshdpAesU8BxqmLLbsNYRmWJ6bxVzY49FTJRyD6dlVr Uh0Q== X-Gm-Message-State: ALQs6tBeXKF2nNkFDIlh6PHEXG1vpASG6ndK/AFMEg8J8afMk18T8gXC oGCJ2njttnbeuSsodUXiNQjgLX4gPlE= X-Received: by 10.98.35.11 with SMTP id j11mr20798987pfj.177.1525299363768; Wed, 02 May 2018 15:16:03 -0700 (PDT) Received: from cloudburst.twiddle.net (97-113-2-170.tukw.qwest.net. [97.113.2.170]) by smtp.gmail.com with ESMTPSA id 65sm26170145pft.74.2018.05.02.15.16.02 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 02 May 2018 15:16:02 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Date: Wed, 2 May 2018 15:15:45 -0700 Message-Id: <20180502221552.3873-8-richard.henderson@linaro.org> X-Mailer: git-send-email 2.14.3 In-Reply-To: <20180502221552.3873-1-richard.henderson@linaro.org> References: <20180502221552.3873-1-richard.henderson@linaro.org> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400e:c00::242 Subject: [Qemu-devel] [PATCH v2 07/14] target/arm: Implement FCVT (scalar, fixed-point) for fp16 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: peter.maydell@linaro.org, qemu-arm@nongnu.org, qemu-stable@nongnu.org Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Cc: qemu-stable@nongnu.org Reviewed-by: Alex Bennée Signed-off-by: Richard Henderson --- target/arm/translate-a64.c | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) -- 2.14.3 diff --git a/target/arm/translate-a64.c b/target/arm/translate-a64.c index d794744aec..e19d97e8f1 100644 --- a/target/arm/translate-a64.c +++ b/target/arm/translate-a64.c @@ -5460,8 +5460,7 @@ static void disas_fp_fixed_conv(DisasContext *s, uint32_t insn) bool sf = extract32(insn, 31, 1); bool itof; - if (sbit || (type > 1) - || (!sf && scale < 32)) { + if (sbit || (!sf && scale < 32)) { unallocated_encoding(s); return; } @@ -5480,6 +5479,20 @@ static void disas_fp_fixed_conv(DisasContext *s, uint32_t insn) return; } + switch (type) { + case 0: /* float32 */ + case 1: /* float64 */ + break; + case 3: /* float16 */ + if (arm_dc_feature(s, ARM_FEATURE_V8_FP16)) { + break; + } + /* fallthru */ + default: + unallocated_encoding(s); + return; + } + if (!fp_access_check(s)) { return; }