From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-11.6 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 30BBDC433DB for ; Mon, 15 Mar 2021 15:59:56 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id C8D8A64ED2 for ; Mon, 15 Mar 2021 15:59:55 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C8D8A64ED2 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linaro.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:40178 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lLpdK-00084B-Rh for qemu-devel@archiver.kernel.org; Mon, 15 Mar 2021 11:59:54 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:51138) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lLpcB-0006lH-3A for qemu-devel@nongnu.org; Mon, 15 Mar 2021 11:58:43 -0400 Received: from mail-ot1-x32a.google.com ([2607:f8b0:4864:20::32a]:37388) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lLpc9-0004MV-G0 for qemu-devel@nongnu.org; Mon, 15 Mar 2021 11:58:42 -0400 Received: by mail-ot1-x32a.google.com with SMTP id t23-20020a0568301e37b02901b65ab30024so5371534otr.4 for ; Mon, 15 Mar 2021 08:58:40 -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:mime-version :content-transfer-encoding; bh=KUgxjWQ77+Jw26A5E2dK9Y6J+511lV+n9oG7cF3w+1A=; b=UyCYBD5/yLCWF0sQE6Sf0zwGPJHUiVITULxnu8pWiX1OM7UqL33c6RK9hxBem5kact tIdbgxQj8QjYowm0ZgQw4EoNKlWGM7P8GaAFHKe06a4IFKpssPSG2tV8JJXoBitfr+dQ masfsfTlwBGwJKhifim5R5NYUEdEQnBsfHFvXS0b12NDIrFG2WNG8fWHNtTHH0M1JsQ0 gpuBgin0yYXthOab8PPePaRRqtcfjyzskDSeOpzRxySOsh7g2I1kejgZzkMt6NJ4IMHH Fhd1xrA5rMnYG/1i/EZURXZCVLG7hQw15BiAIznAuck/SLtizeseCwiy+HnsRPu2VIso h20g== 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:mime-version :content-transfer-encoding; bh=KUgxjWQ77+Jw26A5E2dK9Y6J+511lV+n9oG7cF3w+1A=; b=fmLH49QnYZ1HxZGNRc5ZhWqT6C2E3lInTVt765yus5/mFf/G5txtpuW4SOOIbyR+9L rgUJmudng4CRMCy1w113We6gr2NNv8GBc1fzfheYEqVZ82rFxJB9ms2VPCHXY6toVWBn bauLytEP5j95he8m15MIyS4Ot4M2H/yH6UPEzatQo95WaIUx/i+gte7GE51C0TxtLxA1 +4FvFpLd4+GlR3W4OwDfkUlZ1CiCoS+kKe3q6BTsIYoKLfZYHgX1H1vYgUfxYyjFmRxq Bc5RZea/eDSZBZFy4nqmcr/pchBhaIExkzkU8F0AtAB5MhhfX5zCPMsPE5KM/KO7dnk3 E5yA== X-Gm-Message-State: AOAM532UVxnN9ehmz+6WrsIMGi20eh44hK2TcXKxOTrChPSlHhZn76fb awimmFxmfx8vA/fMIbQYV+n0/jBEpJmtUzr0 X-Google-Smtp-Source: ABdhPJzqWFs6npLEzn7hZvSYcXDlCi8499+K0oH49UbVAIfoRFgXmTCqg66qOPPbm2CByb8P2cHASw== X-Received: by 2002:a05:6830:15d2:: with SMTP id j18mr15105034otr.75.1615823920009; Mon, 15 Mar 2021 08:58:40 -0700 (PDT) Received: from localhost.localdomain (fixed-187-189-51-144.totalplay.net. [187.189.51.144]) by smtp.gmail.com with ESMTPSA id h24sm7278548otg.20.2021.03.15.08.58.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 15 Mar 2021 08:58:39 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Subject: [PATCH v2 0/1] Fix qemu_strtosz regression Date: Mon, 15 Mar 2021 09:58:34 -0600 Message-Id: <20210315155835.1970210-1-richard.henderson@linaro.org> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=2607:f8b0:4864:20::32a; envelope-from=richard.henderson@linaro.org; helo=mail-ot1-x32a.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: philmd@redhat.com, thuth@redhat.com Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" Supercedes: 20210314234821.1954428-1-richard.henderson@linaro.org ("utils: Use fma in qemu_strtosz") On second thoughts, using fma isn't the best workaround. Let's just do some fixed-point arithmetic and compute the exact result of the multiply. This makes overflow detection simple and obvious. Round up from 0.5, because. This fixes one testsuite failure and causes another, so amend the testsuite. r~ Richard Henderson (1): utils: Use fixed-point arithmetic in qemu_strtosz tests/unit/test-cutils.c | 2 +- util/cutils.c | 50 ++++++++++++++++++++++++++++------------ 2 files changed, 36 insertions(+), 16 deletions(-) -- 2.25.1