From nobody Fri May 17 09:37:59 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1681398887; cv=none; d=zohomail.com; s=zohoarc; b=ZM85px0S9bilLdyhOVNAPhuBD645k8VbdsINIJ9RhUlJxyCfeD+seElUF5RgHRG3vgpy5XDnGoOLu/Gps5DsQzRNan3+RlPK0k2xbXeK5IR7ADOflE2gtzvwTnLr9DBsy2V3INhE1RICozRSdjmTizfwgEdPvtcilB3jaQklq68= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1681398887; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=HcNE87o0f0C+/KDhMsNvMltg4rU/Zv0SfTFvCiZuAWo=; b=CXRhoR0ifwm0QTzuUVS98vJ/q9iz2/ks0urxrqnElHgGf3uRMQN/q5sPgkDSgv1+ViN+eWbl6D8Nme1iprDfD/umiVWDQOs1Rs3xcNGFCBDmVGGpnlUET8I5brwpI01Ci5tin+4uITB637NaGziRk3SsC+FnSPFUu2Pr3nNW0YQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1681398887225548.2593518707781; Thu, 13 Apr 2023 08:14:47 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pmyeG-0003M3-TH; Thu, 13 Apr 2023 11:14:08 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pmyeE-0003LS-Vl; Thu, 13 Apr 2023 11:14:07 -0400 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pmyeC-0006qv-JY; Thu, 13 Apr 2023 11:14:06 -0400 Received: from pps.filterd (m0098410.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 33DEbjEh027445; Thu, 13 Apr 2023 15:13:48 GMT Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3pxjn0d63w-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 13 Apr 2023 15:13:47 +0000 Received: from m0098410.ppops.net (m0098410.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 33DDV020010905; Thu, 13 Apr 2023 15:13:47 GMT Received: from ppma02fra.de.ibm.com (47.49.7a9f.ip4.static.sl-reverse.com [159.122.73.71]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3pxjn0d62m-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 13 Apr 2023 15:13:47 +0000 Received: from pps.filterd (ppma02fra.de.ibm.com [127.0.0.1]) by ppma02fra.de.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id 33D2xqjb003977; Thu, 13 Apr 2023 15:13:44 GMT Received: from smtprelay06.fra02v.mail.ibm.com ([9.218.2.230]) by ppma02fra.de.ibm.com (PPS) with ESMTPS id 3pu0h5tkk6-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 13 Apr 2023 15:13:44 +0000 Received: from smtpav06.fra02v.mail.ibm.com (smtpav06.fra02v.mail.ibm.com [10.20.54.105]) by smtprelay06.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 33DFDgeX39911948 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 13 Apr 2023 15:13:42 GMT Received: from smtpav06.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 5DDD020043; Thu, 13 Apr 2023 15:13:42 +0000 (GMT) Received: from smtpav06.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id BF64220040; Thu, 13 Apr 2023 15:13:40 +0000 (GMT) Received: from ltc-boston1.aus.stglabs.ibm.com (unknown [9.40.193.18]) by smtpav06.fra02v.mail.ibm.com (Postfix) with ESMTP; Thu, 13 Apr 2023 15:13:40 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=subject : from : to : cc : date : message-id : in-reply-to : references : mime-version : content-type : content-transfer-encoding; s=pp1; bh=HcNE87o0f0C+/KDhMsNvMltg4rU/Zv0SfTFvCiZuAWo=; b=L/Z6B953UK+N8ZZVzUQz0nAX5gXF0/oUkFPp/kSyRBt85yFKXRh783gLhhD3CddxvheG EWBNTgwSENnbcR98NfnMMn9AJGlFM6ixM8O8P3QwRY3z/R74pEaJJF3pUCVgQma+JmIn dk/orNb2Dnig8YaJnCqfH0PicO5Nmrv+Fzn94jUoxKeGuURGGw87HRVGVUcWkPIL+ERp ZMYf6hKqNOTEabXBssgcgiFtV8vAMfPk3vgtWkGyX4v4wVCzcDuFXCAwzbXD0k8wA80u SqfwgbcWT056KnrVr3RiFShkVUDv9I25h6mnpWrFMTMAhW6sPMHSwXC81X2pxdwvEDHz Cw== Subject: [PATCH 1/2] tcg: ppc64: Fix mask generation for vextractdm From: Shivaprasad G Bhat To: philmd@linaro.org, richard.henderson@linaro.org, danielhb413@gmail.com, lucas.araujo@eldorado.org.br, qemu-ppc@nongnu.org, clg@kaod.org, david@gibson.dropbear.id.au, groug@kaod.org, qemu-ppc@nongnu.org Cc: john_platts@hotmail.com, sbhat@linux.ibm.com, qemu-devel@nongnu.org Date: Thu, 13 Apr 2023 15:01:01 -0400 Message-ID: <168141245022.3026479.1619179446205380588.stgit@ltc-boston1.aus.stglabs.ibm.com> In-Reply-To: <168141244011.3026479.13697197743885252330.stgit@ltc-boston1.aus.stglabs.ibm.com> References: <168141244011.3026479.13697197743885252330.stgit@ltc-boston1.aus.stglabs.ibm.com> User-Agent: StGit/1.5 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: N5J1HaLOCk2ZigvGhUaL2HtuBlYhHBYl X-Proofpoint-GUID: edl9RAQdxJFsCUMPlpGODDWTTIkh4IVQ X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.942,Hydra:6.0.573,FMLib:17.11.170.22 definitions=2023-04-13_10,2023-04-13_01,2023-02-09_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 priorityscore=1501 bulkscore=0 adultscore=0 mlxlogscore=999 malwarescore=0 spamscore=0 mlxscore=0 clxscore=1015 lowpriorityscore=0 phishscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2303200000 definitions=main-2304130134 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=148.163.156.1; envelope-from=sbhat@linux.ibm.com; helo=mx0a-001b2d01.pphosted.com X-Spam_score_int: 10 X-Spam_score: 1.0 X-Spam_bar: + X-Spam_report: (1.0 / 5.0 requ) BAYES_00=-1.9, DATE_IN_FUTURE_03_06=3.027, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1681398887661100005 In function do_extractm() the mask is calculated as dup_const(1 << (element_width - 1)). '1' being signed int works fine for MO_8,16,32. For MO_64, on PPC64 host this ends up becoming 0 on compilation. The vextractdm uses MO_64, and it ends up having mask as 0. Explicitly use 1ULL instead of signed int 1 like its used everywhere else. Signed-off-by: Shivaprasad G Bhat Reviewed-by: Alex Benn=C3=A9e Reviewed-by: Lucas Mateus Castro Reviewed-by: Richard Henderson --- target/ppc/translate/vmx-impl.c.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/ppc/translate/vmx-impl.c.inc b/target/ppc/translate/vmx= -impl.c.inc index 112233b541..c8712dd7d8 100644 --- a/target/ppc/translate/vmx-impl.c.inc +++ b/target/ppc/translate/vmx-impl.c.inc @@ -2058,7 +2058,7 @@ static bool trans_VEXPANDQM(DisasContext *ctx, arg_VX= _tb *a) static bool do_vextractm(DisasContext *ctx, arg_VX_tb *a, unsigned vece) { const uint64_t elem_width =3D 8 << vece, elem_count_half =3D 8 >> vece, - mask =3D dup_const(vece, 1 << (elem_width - 1)); + mask =3D dup_const(vece, 1ULL << (elem_width - 1)); uint64_t i, j; TCGv_i64 lo, hi, t0, t1; From nobody Fri May 17 09:37:59 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=reject dis=none) header.from=linux.ibm.com ARC-Seal: i=1; a=rsa-sha256; t=1681398896; cv=none; d=zohomail.com; s=zohoarc; b=id/gl/NXC4ArIBmc+YgG54/EhY2xeMDpRv92O40tQp0GFQRIf4d0e4V6vb2So5uEXap+1ZDqVVN8Hq4ZrMmXSDIMmTe1Uo2JHQzr1849Xzcov+M2lPeLTuyfuqB94Jw+lGSNpT9VynpsvYxqGddlBHLQ2UHncstA0O9m9Ww5PbQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1681398896; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=LanScZX1fnW0lRfaSmjd3DQN2TQ2S+Ey95eSL0Twurw=; b=knQg7ZnZRJSqKaJTSAgxaNjC9vbQXh969947OrbuYTi8UkXS4Wi90hBoUG0gqyy1NK2VHVcaqhm9pjbwVl2SMGLoEDSn/Xz7tRapWl+hK+I+93r7/Ve5e2j3vGRnZdLZbN2kfBBKoyItu+5kFM3AMwBX7XnZmytJI2txag3yi/4= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1681398896598740.5247446584456; Thu, 13 Apr 2023 08:14:56 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pmyeP-0003OM-63; Thu, 13 Apr 2023 11:14:17 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pmyeN-0003Nc-U2; Thu, 13 Apr 2023 11:14:15 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pmyeK-0006ro-MW; Thu, 13 Apr 2023 11:14:14 -0400 Received: from pps.filterd (m0127361.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 33DEwSqt005329; Thu, 13 Apr 2023 15:14:04 GMT Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3pxkym8t5r-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 13 Apr 2023 15:14:03 +0000 Received: from m0127361.ppops.net (m0127361.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 33DExdJO008743; Thu, 13 Apr 2023 15:14:03 GMT Received: from ppma06fra.de.ibm.com (48.49.7a9f.ip4.static.sl-reverse.com [159.122.73.72]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3pxkym8t4e-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 13 Apr 2023 15:14:03 +0000 Received: from pps.filterd (ppma06fra.de.ibm.com [127.0.0.1]) by ppma06fra.de.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id 33D3JBYG004875; Thu, 13 Apr 2023 15:14:01 GMT Received: from smtprelay01.fra02v.mail.ibm.com ([9.218.2.227]) by ppma06fra.de.ibm.com (PPS) with ESMTPS id 3pu0hq2kp1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 13 Apr 2023 15:14:01 +0000 Received: from smtpav01.fra02v.mail.ibm.com (smtpav01.fra02v.mail.ibm.com [10.20.54.100]) by smtprelay01.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 33DFDwqk61604104 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 13 Apr 2023 15:13:58 GMT Received: from smtpav01.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id B101A2004E; Thu, 13 Apr 2023 15:13:58 +0000 (GMT) Received: from smtpav01.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 233B12004D; Thu, 13 Apr 2023 15:13:57 +0000 (GMT) Received: from ltc-boston1.aus.stglabs.ibm.com (unknown [9.40.193.18]) by smtpav01.fra02v.mail.ibm.com (Postfix) with ESMTP; Thu, 13 Apr 2023 15:13:56 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=subject : from : to : cc : date : message-id : in-reply-to : references : content-type : content-transfer-encoding : mime-version; s=pp1; bh=LanScZX1fnW0lRfaSmjd3DQN2TQ2S+Ey95eSL0Twurw=; b=VoZqAlf9g+fVt/R0eW0G/wJKhDgnkCmfkkgNJsopbC2YnZ1HvkLOHASiCGlJXESdttg7 KvGQC+1CzTWegJSJWK1FGuyC8Qg5FC6+wXfTFLMltn4t8yBiQwzUZhBorzyQOr+gl6rk MB8C7GBGk5OvycnIAY/2nwmnWoKFNx9+V2CTBAiaURVx00rmBV3I3myr6KbpXyf72l4e lWBupOPFc6u6zL1lo3nGfN4ix3jB4PdjYRg0mCGSBEJaxjf1BvmFyJsbgITiNkBbvJuI jTtfqT5uKrxtJczFXuoxbSsD5BolPS5Z7j61j0pGy0XPc4sSbPjccwnlixS9UFidNnf7 CA== Subject: [PATCH 2/2] tests: tcg: ppc64: Add tests for Vector Extract Mask Instructions From: Shivaprasad G Bhat To: philmd@linaro.org, richard.henderson@linaro.org, danielhb413@gmail.com, lucas.araujo@eldorado.org.br, qemu-ppc@nongnu.org, clg@kaod.org, david@gibson.dropbear.id.au, groug@kaod.org, qemu-ppc@nongnu.org Cc: john_platts@hotmail.com, sbhat@linux.ibm.com, qemu-devel@nongnu.org Date: Thu, 13 Apr 2023 15:01:16 -0400 Message-ID: <168141246968.3026479.12755025628496245070.stgit@ltc-boston1.aus.stglabs.ibm.com> In-Reply-To: <168141244011.3026479.13697197743885252330.stgit@ltc-boston1.aus.stglabs.ibm.com> References: <168141244011.3026479.13697197743885252330.stgit@ltc-boston1.aus.stglabs.ibm.com> User-Agent: StGit/1.5 Content-Type: text/plain; charset="utf-8" X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: NP8nVZVjaafFMxJgpJQv2e4ivmelASQb X-Proofpoint-GUID: c8GGCz-HjCQln4QFcXmBUa6svfJJ--l_ Content-Transfer-Encoding: quoted-printable X-Proofpoint-UnRewURL: 0 URL was un-rewritten MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.942,Hydra:6.0.573,FMLib:17.11.170.22 definitions=2023-04-13_10,2023-04-13_01,2023-02-09_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 impostorscore=0 malwarescore=0 spamscore=0 mlxscore=0 priorityscore=1501 bulkscore=0 suspectscore=0 adultscore=0 phishscore=0 lowpriorityscore=0 mlxlogscore=879 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2303200000 definitions=main-2304130134 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=148.163.158.5; envelope-from=sbhat@linux.ibm.com; helo=mx0b-001b2d01.pphosted.com X-Spam_score_int: 10 X-Spam_score: 1.0 X-Spam_bar: + X-Spam_report: (1.0 / 5.0 requ) BAYES_00=-1.9, DATE_IN_FUTURE_03_06=3.027, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @ibm.com) X-ZM-MESSAGEID: 1681398898370100003 Add test for vextractbm, vextractwm, vextractdm and vextractqm instructions. Test works for both qemu-ppc64 and qemu-ppc64le. Based on the test case written by John Platts posted at [1] References: [1]: https://gitlab.com/qemu-project/qemu/-/issues/1536 Signed-off-by: John Platts Signed-off-by: Shivaprasad G Bhat Reviewed-by: Lucas Mateus Castro --- tests/tcg/ppc64/Makefile.target | 6 ++++- tests/tcg/ppc64/vector.c | 50 +++++++++++++++++++++++++++++++++++= ++++ 2 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 tests/tcg/ppc64/vector.c diff --git a/tests/tcg/ppc64/Makefile.target b/tests/tcg/ppc64/Makefile.tar= get index f081f1c683..4fd543ce28 100644 --- a/tests/tcg/ppc64/Makefile.target +++ b/tests/tcg/ppc64/Makefile.target @@ -20,7 +20,7 @@ PPC64_TESTS +=3D mtfsf PPC64_TESTS +=3D mffsce =20 ifneq ($(CROSS_CC_HAS_POWER10),) -PPC64_TESTS +=3D byte_reverse sha512-vector +PPC64_TESTS +=3D byte_reverse sha512-vector vector endif byte_reverse: CFLAGS +=3D -mcpu=3Dpower10 run-byte_reverse: QEMU_OPTS+=3D-cpu POWER10 @@ -33,6 +33,10 @@ sha512-vector: sha512.c run-sha512-vector: QEMU_OPTS+=3D-cpu POWER10 run-plugin-sha512-vector-with-%: QEMU_OPTS+=3D-cpu POWER10 =20 +vector: CFLAGS +=3D -mcpu=3Dpower10 +run-vector: QEMU_OPTS +=3D -cpu POWER10 +run-plugin-vector-with-%: QEMU_OPTS +=3D -cpu POWER10 + PPC64_TESTS +=3D signal_save_restore_xer PPC64_TESTS +=3D xxspltw =20 diff --git a/tests/tcg/ppc64/vector.c b/tests/tcg/ppc64/vector.c new file mode 100644 index 0000000000..3cb2b88c87 --- /dev/null +++ b/tests/tcg/ppc64/vector.c @@ -0,0 +1,50 @@ +#include +#include + +int main(void) +{ + unsigned int result_wi; + vector unsigned char vbc_bi_src =3D { 0xFF, 0xFF, 0, 0xFF, 0xFF, 0xFF, + 0xFF, 0xFF, 0xFF, 0xFF, 0, 0, 0, + 0, 0xFF, 0xFF}; + vector unsigned short vbc_hi_src =3D { 0xFFFF, 0, 0, 0xFFFF, + 0, 0, 0xFFFF, 0xFFFF}; + vector unsigned int vbc_wi_src =3D {0, 0, 0xFFFFFFFF, 0xFFFFFFFF}; + vector unsigned long long vbc_di_src =3D {0xFFFFFFFFFFFFFFFF, 0}; + vector __uint128_t vbc_qi_src; + + asm("vextractbm %0, %1" : "=3Dr" (result_wi) : "v" (vbc_bi_src)); +#if __BYTE_ORDER__ =3D=3D __ORDER_BIG_ENDIAN__ + assert(result_wi =3D=3D 0b1101111111000011); +#else + assert(result_wi =3D=3D 0b1100001111111011); +#endif + + asm("vextracthm %0, %1" : "=3Dr" (result_wi) : "v" (vbc_hi_src)); +#if __BYTE_ORDER__ =3D=3D __ORDER_BIG_ENDIAN__ + assert(result_wi =3D=3D 0b10010011); +#else + assert(result_wi =3D=3D 0b11001001); +#endif + + asm("vextractwm %0, %1" : "=3Dr" (result_wi) : "v" (vbc_wi_src)); +#if __BYTE_ORDER__ =3D=3D __ORDER_BIG_ENDIAN__ + assert(result_wi =3D=3D 0b0011); +#else + assert(result_wi =3D=3D 0b1100); +#endif + + asm("vextractdm %0, %1" : "=3Dr" (result_wi) : "v" (vbc_di_src)); +#if __BYTE_ORDER__ =3D=3D __ORDER_BIG_ENDIAN__ + assert(result_wi =3D=3D 0b10); +#else + assert(result_wi =3D=3D 0b01); +#endif + + vbc_qi_src[0] =3D 0x1; + vbc_qi_src[0] =3D vbc_qi_src[0] << 127; + asm("vextractqm %0, %1" : "=3Dr" (result_wi) : "v" (vbc_qi_src)); + assert(result_wi =3D=3D 0b1); + + return 0; +}