From patchwork Fri Dec 21 19:51:59 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Emilio Cota X-Patchwork-Id: 10741007 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id F40E71399 for ; Fri, 21 Dec 2018 19:59:02 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E00A926E90 for ; Fri, 21 Dec 2018 19:59:02 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id CF41D289B5; Fri, 21 Dec 2018 19:59:02 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 7578626E90 for ; Fri, 21 Dec 2018 19:59:02 +0000 (UTC) Received: from localhost ([::1]:47421 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gaQwn-00055d-86 for patchwork-qemu-devel@patchwork.kernel.org; Fri, 21 Dec 2018 14:59:01 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53887) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gaQvd-00040X-7w for qemu-devel@nongnu.org; Fri, 21 Dec 2018 14:57:49 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gaQva-0002Kx-17 for qemu-devel@nongnu.org; Fri, 21 Dec 2018 14:57:49 -0500 Received: from out1-smtp.messagingengine.com ([66.111.4.25]:38697) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gaQvZ-0002JD-Pc for qemu-devel@nongnu.org; Fri, 21 Dec 2018 14:57:45 -0500 Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id 28CF82210E; Fri, 21 Dec 2018 14:52:03 -0500 (EST) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Fri, 21 Dec 2018 14:52:03 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=braap.org; h= from:to:cc:subject:date:message-id:in-reply-to:references; s= mesmtp; bh=xG/LpmnSnWke2ID4B6pCAz1sGRZzxFrqaWWt4KwB2CY=; b=KtaLi w6znrFoqa+yakFIV3mY/20orx4kKQQPCwlTIXz0JpTK1v1nhFUFeW3XL8QRKLBZ+ +iUkKytkD4btkMg5obP3XxATXkLRZWFAX5yzY3ln0SHCkARQsZ7hj3TXcr6u1ySn Hxrgp9oYvm2K3PUrLiVOAqq4IFK7jyDiJBRJ7Q= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:date:from:in-reply-to:message-id :references:subject:to:x-me-proxy:x-me-proxy:x-me-sender :x-me-sender:x-sasl-enc; s=fm1; bh=xG/LpmnSnWke2ID4B6pCAz1sGRZzx FrqaWWt4KwB2CY=; b=LOwG+7w2QGeAk3tFfFQCsHiaxW2LkDgnuq72EXMs7Zg0z jbZAselS+6koQb/76WmY1UKDL117vOsrq5NnrI0lOKi+RAVRNILiXzz8s3W8qzFU 0358dcBK/jY2OL3UbPEzIkEdOkGmRmaAsiqnl0jPOO7o0TKgfFExTPjHjKN5aJYK +j+leJu+Cac6y85kKUzCIOlFrjszPkEokAI66Axo/8UPYkwFzcKpurKJbNFNHxL4 wQaphvNCe9Pd1c4S4qx64yNstTtJhz/fThox1C1CHND3WmMRcSdLMu7PyIRWgPVx 2yl/oL5nkMCEs3KfbQ12ER5W46JHjF7TkbvZ1M4Hg== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedtkedrudejhedgudefvdcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfhuthenuceurghilhhouhhtmecu fedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujfgurhephffvufffkf fojghfsedttdertdertddtnecuhfhrohhmpedfgfhmihhlihhoucfirdcuvehothgrfdcu oegtohhtrgessghrrggrphdrohhrgheqnecukfhppeduvdekrdehledrvddtrddvudeine curfgrrhgrmhepmhgrihhlfhhrohhmpegtohhtrgessghrrggrphdrohhrghenucevlhhu shhtvghrufhiiigvpedt X-ME-Proxy: Received: from localhost (flamenco.cs.columbia.edu [128.59.20.216]) by mail.messagingengine.com (Postfix) with ESMTPA id 998DDE40E1; Fri, 21 Dec 2018 14:52:02 -0500 (EST) From: "Emilio G. Cota" To: qemu-devel@nongnu.org Date: Fri, 21 Dec 2018 14:51:59 -0500 Message-Id: <20181221195200.6544-2-cota@braap.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20181221195200.6544-1-cota@braap.org> References: <20181221195200.6544-1-cota@braap.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 66.111.4.25 Subject: [Qemu-devel] [PATCH 1/2] fp-bench: fix update_random_ops 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: =?utf-8?q?Alex_Benn=C3=A9e?= Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP The second test in the branches is wrong; fix while converting to a switch statement, which is easier to get right. Signed-off-by: Emilio G. Cota Reviewed-by: Richard Henderson Reviewed-by: Philippe Mathieu-Daudé --- tests/fp/fp-bench.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/tests/fp/fp-bench.c b/tests/fp/fp-bench.c index f5bc5edebf..546bac9c9c 100644 --- a/tests/fp/fp-bench.c +++ b/tests/fp/fp-bench.c @@ -143,15 +143,20 @@ static void update_random_ops(int n_ops, enum precision prec) for (i = 0; i < n_ops; i++) { uint64_t r = random_ops[i]; - if (prec == PREC_SINGLE || PREC_FLOAT32) { + switch (prec) { + case PREC_SINGLE: + case PREC_FLOAT32: do { r = xorshift64star(r); } while (!float32_is_normal(r)); - } else if (prec == PREC_DOUBLE || PREC_FLOAT64) { + break; + case PREC_DOUBLE: + case PREC_FLOAT64: do { r = xorshift64star(r); } while (!float64_is_normal(r)); - } else { + break; + default: g_assert_not_reached(); } random_ops[i] = r; From patchwork Fri Dec 21 19:52:00 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Emilio Cota X-Patchwork-Id: 10741009 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 231B613B5 for ; Fri, 21 Dec 2018 19:59:03 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 140FF26E90 for ; Fri, 21 Dec 2018 19:59:03 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 07DDB289AA; Fri, 21 Dec 2018 19:59:03 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id B7127289A0 for ; Fri, 21 Dec 2018 19:59:02 +0000 (UTC) Received: from localhost ([::1]:47422 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gaQwo-000569-1C for patchwork-qemu-devel@patchwork.kernel.org; Fri, 21 Dec 2018 14:59:02 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53886) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gaQvd-00040W-7t for qemu-devel@nongnu.org; Fri, 21 Dec 2018 14:57:49 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gaQva-0002L3-1p for qemu-devel@nongnu.org; Fri, 21 Dec 2018 14:57:49 -0500 Received: from out1-smtp.messagingengine.com ([66.111.4.25]:49105) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gaQvZ-0002JE-Qg for qemu-devel@nongnu.org; Fri, 21 Dec 2018 14:57:45 -0500 Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id 28BC922102; Fri, 21 Dec 2018 14:52:03 -0500 (EST) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Fri, 21 Dec 2018 14:52:03 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=braap.org; h= from:to:cc:subject:date:message-id:in-reply-to:references; s= mesmtp; bh=NKtma9Y14EXJvQWkOZjoAJBtIubNhlpzcEjHk9OQirI=; b=jYHQS DdKcJlNHEZkLs+cW+I1xHL0j2SuiGyOeHHhScgyGHVXVTEuIQRRDZe0CihX/n8Ox SEkxnJEf2WbRVsT0LtacqwVJ10D0BWm4d5lVrGk1W6LZkHbi/z8MjRPo0tvgUK1R 2M1ZTfO59xM1fDtemQ9ctDXsFmydcz+XMJCxgI= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:date:from:in-reply-to:message-id :references:subject:to:x-me-proxy:x-me-proxy:x-me-sender :x-me-sender:x-sasl-enc; s=fm1; bh=NKtma9Y14EXJvQWkOZjoAJBtIubNh lpzcEjHk9OQirI=; b=BUjgmQdV631+C2PXNIBvwdCoIXWwCNXXaJwfFxBuBFgMi ajwMGTT6JRP/ASUMFyn4RERyTaNthML+roDN1hDAV46DwSo85Nl1tvrOsE/JdsMb qqlZPEdA10Jgo5CvEmEM9VgRnjW8rN6O714NVMxIEbcm3nBBLQeLR8M2QTF1pC1B 6cAm6/itFfmVThcgVWoCGfR74KKSbtza5MJDDTNOvja0wzFD2vs/qUs0JIDAVKtG /tuusQV2R8MoKCZcuCIGVCNlsFn7oiBDLksUkztnHhNK89GBc0P0kGkkdoUxbbJU juv0FzSownzAc4xzYKoGB5kRt9AUlGEiNd+UlW/2w== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedtkedrudejhedgudefvdcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfhuthenuceurghilhhouhhtmecu fedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujfgurhephffvufffkf fojghfsedttdertdertddtnecuhfhrohhmpedfgfhmihhlihhoucfirdcuvehothgrfdcu oegtohhtrgessghrrggrphdrohhrgheqnecukfhppeduvdekrdehledrvddtrddvudeine curfgrrhgrmhepmhgrihhlfhhrohhmpegtohhtrgessghrrggrphdrohhrghenucevlhhu shhtvghrufhiiigvpedt X-ME-Proxy: Received: from localhost (flamenco.cs.columbia.edu [128.59.20.216]) by mail.messagingengine.com (Postfix) with ESMTPA id D0FF8E4596; Fri, 21 Dec 2018 14:52:02 -0500 (EST) From: "Emilio G. Cota" To: qemu-devel@nongnu.org Date: Fri, 21 Dec 2018 14:52:00 -0500 Message-Id: <20181221195200.6544-3-cota@braap.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20181221195200.6544-1-cota@braap.org> References: <20181221195200.6544-1-cota@braap.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 66.111.4.25 Subject: [Qemu-devel] [PATCH 2/2] fp-bench: remove wrong exponent raise in fill_random 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: =?utf-8?q?Alex_Benn=C3=A9e?= Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP At this point random_ops[] only contains normals, so there's no need to do anything to them. In fact, raising the exponent here can make the output !normal, which is precisely what the comment says we want to avoid. Signed-off-by: Emilio G. Cota Reviewed-by: Richard Henderson --- tests/fp/fp-bench.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/tests/fp/fp-bench.c b/tests/fp/fp-bench.c index 546bac9c9c..4ba5e1d2d4 100644 --- a/tests/fp/fp-bench.c +++ b/tests/fp/fp-bench.c @@ -176,8 +176,6 @@ static void fill_random(union fp *ops, int n_ops, enum precision prec, if (no_neg && float32_is_neg(ops[i].f32)) { ops[i].f32 = float32_chs(ops[i].f32); } - /* raise the exponent to limit the frequency of denormal results */ - ops[i].f32 |= 0x40000000; break; case PREC_DOUBLE: case PREC_FLOAT64: @@ -185,8 +183,6 @@ static void fill_random(union fp *ops, int n_ops, enum precision prec, if (no_neg && float64_is_neg(ops[i].f64)) { ops[i].f64 = float64_chs(ops[i].f64); } - /* raise the exponent to limit the frequency of denormal results */ - ops[i].f64 |= LIT64(0x4000000000000000); break; default: g_assert_not_reached();