From nobody Wed Nov 5 08:24:38 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=gmail.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1533493883648693.8563386717045; Sun, 5 Aug 2018 11:31:23 -0700 (PDT) Received: from localhost ([::1]:59490 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fmNoI-0007un-DX for importer@patchew.org; Sun, 05 Aug 2018 14:31:22 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:40040) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fmNm8-000675-Vb for qemu-devel@nongnu.org; Sun, 05 Aug 2018 14:29:09 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fmNm8-0005No-7J for qemu-devel@nongnu.org; Sun, 05 Aug 2018 14:29:08 -0400 Received: from mail-qt0-x243.google.com ([2607:f8b0:400d:c0d::243]:36491) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fmNm8-0005NT-3F; Sun, 05 Aug 2018 14:29:08 -0400 Received: by mail-qt0-x243.google.com with SMTP id t5-v6so11517184qtn.3; Sun, 05 Aug 2018 11:29:07 -0700 (PDT) Received: from WAL-L-PZ01.rocketsoftware.com (inet-64-112-177-9.bos.netblazr.com. [64.112.177.9]) by smtp.gmail.com with ESMTPSA id j86-v6sm12842786qkh.60.2018.08.05.11.29.06 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 05 Aug 2018 11:29:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=ONCGhK3cISoK+xkij5LWkorBj4hdHejynu5QRtlwveY=; b=spFKZOQ9HbL1sZ2DGkUuEwvAoIEL1tjSvcBA3VTGwD755V2qjPIb8sCgjCX+sskTLs vltX4ihMei/bp5HR4eH9kZSWxR/ORyK2ptD5M5rA8Pah6Sqh14XOlkvrR+Q1G+1E9xTq 3CZJ8xXDHVmauJYK7NFvsbgKujjRYraWSGmYMlqepOYoYp3IEtTZPWVvdXPFN6EosaIB 30npquZfOjRhsuOqN3Sg7WtDk+THVoAINRvVvtIRluTUv+9dSMsQoHJ7z6kAMno5N+p7 aG0oKlKqV/0mXFnIUR4Yrv1htJ8lO8lsyrTFZZhYp9p4DzSo4ksslmrxxk6nwfh6gwFQ r87A== 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; bh=ONCGhK3cISoK+xkij5LWkorBj4hdHejynu5QRtlwveY=; b=K9sbWKAvFkJraRRqaY5M32jkLJEos8eRJzLBu7msu9dPxIBZ0QBgeFrT5zycKnGU/B T4GnpDGohesODhQlhMyR8i9Ig6l3jqG71uiaF64ZFzkcXOg5XgBO3LWS5e4HAaPLoBtt 9u8bzIDVhZUt8rZDd6c0QfZ8zN7fq3IjtVBPES/9JgEO8LKw0fpiqIcqDBC7igB7clVB 59RX/Rn5PP490kFBi8qIWK8qQCvfki3qjiie8l7CnDL5k9oWwEb9ubtDONrZZ/XTion7 ZklkLmIpj/xthhS3/4HU1MtLBzf2zn84jotZrVS1IaY+MH8qmR+HQEjv6byAAGZ/PdLR tRGA== X-Gm-Message-State: AOUpUlE5FgKZDLGTR+N1shLwNdvFlPAwsfKO4qgVhIA3WxcAc7NEMaCR 9HnNGqtw8WUIl5sxP76fvvyavqIEf1k= X-Google-Smtp-Source: AAOMgpeAzUSDGfiasumOy9lBI57MoDbpz6qVExYwmSOAmm+wqj8PhzMMPKOaAhDtxyUmfhtBxtQ5uQ== X-Received: by 2002:ac8:32c1:: with SMTP id a1-v6mr10063584qtb.73.1533493747420; Sun, 05 Aug 2018 11:29:07 -0700 (PDT) From: Pavel Zbitskiy To: qemu-devel@nongnu.org Date: Sun, 5 Aug 2018 14:28:28 -0400 Message-Id: <20180805182832.3012-4-pavel.zbitskiy@gmail.com> In-Reply-To: <20180805182832.3012-1-pavel.zbitskiy@gmail.com> References: <20180805182832.3012-1-pavel.zbitskiy@gmail.com> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400d:c0d::243 Subject: [Qemu-devel] [PATCH 3/6] target/s390x: fix ipm polluting irrelevant bits 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: Pavel Zbitskiy , David Hildenbrand , qemu-trivial@nongnu.org, Cornelia Huck , Alexander Graf , "open list:S390" , Richard Henderson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDMRC_1 RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Suppose psw.mask=3D0x0000000080000000, cc=3D2, r1=3D0 and we do "ipm 1". This command must touch only bits 32-39, so the expected output is r1=3D0x20000000. However, currently qemu yields r1=3D0x20008000, because irrelevant parts of PSW leak into r1 during program mask transfer. Signed-off-by: Pavel Zbitskiy --- target/s390x/translate.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/target/s390x/translate.c b/target/s390x/translate.c index f318fb6e4e..05442dff36 100644 --- a/target/s390x/translate.c +++ b/target/s390x/translate.c @@ -2442,8 +2442,8 @@ static DisasJumpType op_ipm(DisasContext *s, DisasOps= *o) tcg_gen_andi_i64(o->out, o->out, ~0xff000000ull); =20 t1 =3D tcg_temp_new_i64(); - tcg_gen_shli_i64(t1, psw_mask, 20); - tcg_gen_shri_i64(t1, t1, 36); + tcg_gen_andi_i64(t1, psw_mask, 0x00000f0000000000); + tcg_gen_shri_i64(t1, t1, 16); tcg_gen_or_i64(o->out, o->out, t1); =20 tcg_gen_extu_i32_i64(t1, cc_op); --=20 2.16.2.windows.1