From patchwork Thu Feb 15 15:58:15 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jens Remus X-Patchwork-Id: 201607 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7300:b825:b0:106:860b:bbdd with SMTP id da37csp498054dyb; Thu, 15 Feb 2024 08:02:49 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCWlMYfXkTkNNeC/xOKOKs1sqxBgIIZkLkMIP3DSv1FwydbADlEjecg04zrq7xBgOygMPRh5Nrfz1VFciJzFLF/U6OqzoA== X-Google-Smtp-Source: AGHT+IE960+qTCMQCeoxBkTw6cTCnCJnZY89bG0NzMecePIfllfxTYNm+eUEEtB3r9I//x9lzqoS X-Received: by 2002:a2e:9cd3:0:b0:2d1:1715:a7a2 with SMTP id g19-20020a2e9cd3000000b002d11715a7a2mr1538143ljj.0.1708012969495; Thu, 15 Feb 2024 08:02:49 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1708012969; cv=pass; d=google.com; s=arc-20160816; b=ky/co/H1LQzRFqpwMyV1XVMfaZaIG/rbbpqpm884BpdfxzIEWKGj5vJ8ifwNHGD6HJ A/mGSc6uolpJrRYb+3m6diAJFoO0/nD8W7Go51c9ilt/v7r+gV28fYMG7dDBdTICOppZ cXcPn6zRVGZX3m3fvVAVLJdhRhrLCWeaRf2EN4Y00KI65HyLt/kVZH0OgAa/HBGdJ+UQ idjUoxKkP1prp0iZdySaBaHEHdy0a49ndhCETIbyMRxwN4eqxhfski77KLd74DY7Geu0 m9tGhc4mmYKBnz4qLKXhRUCqiuCyylA3873LMGCQKqRTxQPYaazBwLhL/G6aJiSOV752 rFkg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature:arc-filter:dmarc-filter:delivered-to; bh=J8AZMcViBN/vOjk6IY/PBemTwr0ECs9SmDQ4xfDzs5s=; fh=6sWHPsCQUoLz5ZcbqIohOjwdU7jjRT/citiAJwaEf0c=; b=N/Truogq7e86oFeS9g8c2MGYpUolNACNLGoDuKe2XqdXaysGz+KEfRijTgfVOnh8lH wcG5GH5LSa4px9Uc9DBkz8qjascjVUHzMz9Dxq4T6LSgQH2D0kjwaW7W+Z3nNKI0ZhgM qdimeZ3/dhOZpYA+hFqecAar1seUtd2lrWYBpjxdhm3ZYtOLFD6DCZEWfSfYiDywN+eC 4NsNFyi4Q/lT0J+dA4hHu4QxkNmi5Ybh6oJETo50zxa69cEeoHnuzH0IKBfnYO9Pfu3o wQNDQQIlF9OxnnrZGn3TXA5e9SCbfcTrdrUkvFdLMemcXfzEn1Ne/zOLfz1XfZB1NGGW LZYQ==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@ibm.com header.s=pp1 header.b=BtHVvobL; arc=pass (i=1); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=REJECT sp=NONE dis=NONE) header.from=ibm.com Received: from server2.sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id p17-20020adff211000000b0033cf43f1c3asi888610wro.531.2024.02.15.08.02.49 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 Feb 2024 08:02:49 -0800 (PST) Received-SPF: pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) client-ip=2620:52:3:1:0:246e:9693:128c; Authentication-Results: mx.google.com; dkim=pass header.i=@ibm.com header.s=pp1 header.b=BtHVvobL; arc=pass (i=1); spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=REJECT sp=NONE dis=NONE) header.from=ibm.com Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 7BE8A386C5B7 for ; Thu, 15 Feb 2024 16:01:51 +0000 (GMT) X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by sourceware.org (Postfix) with ESMTPS id D2497384CB95 for ; Thu, 15 Feb 2024 15:58:37 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D2497384CB95 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=linux.ibm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linux.ibm.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org D2497384CB95 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=148.163.156.1 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1708012721; cv=none; b=OczDK0oCx2vhYohHrbAg7Bgyq6C57eQvTIXcKwnE6gQedRxAsHMXC41ZG3Onk/rQqNgY4KDpGV7EEfjkNn9hc5TPAkYSoV8QjU2akOKhj/51DkRzM28+yBwjJvHwX9VCq+g1Et6+etFEFN3LwaiU9F8aNpUSTytsoTVpy13HW7Y= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1708012721; c=relaxed/simple; bh=TZaMsFjpOpXeZVCMiUP5ls32zRPx54lWiatGLpG70g8=; h=DKIM-Signature:From:To:Subject:Date:Message-Id:MIME-Version; b=BmtjpXBVR78ZqGFZ7QKWJX6aI8xrmA7wXRjp6/Up5Th4+suOD4vLL5K/nOT8T4eL7VKzhQDlC3lDC832KNy1vMWfan/v96Za+DsSSAajb5J4T2OQQsON95Hn9Y7KgUassawVgPuHS5oMU9YSfz4a/YUnHcD5QfkmZZTECEoIniE= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from pps.filterd (m0353727.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 41FFauN2004061 for ; Thu, 15 Feb 2024 15:58:37 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding; s=pp1; bh=J8AZMcViBN/vOjk6IY/PBemTwr0ECs9SmDQ4xfDzs5s=; b=BtHVvobLveghRIRh8HavJotslPEXUACvDKvGHCRE3ZvQyNL2NPHJStphBigOyPN4gbuA 2NlNnJEwTVKqUKSlEPJbSjdqRUhe8tV28c4K3nGVNxYqL1mQkC5kFCu/k2LGhwXQw3ys iMhiPvfWxhXXAUlO4GXrBaEZ9rxSP38wUZhB3pgW9SPa0IArllV+yHW+3qUfsLQ4J8L4 H+MIxjeMQo+JHNb+5SpJe/1HfUwqF3L0ddxVjp2eKZzbgVEyNOvKR7Sc7cYp+u1Y8Qb8 QjTVUJAeJUNB0BWsix3g8oSft/RKUXQRXv7Ga60VdjZtNS9nPXwKrN2notCoQEN3RAvO ng== Received: from ppma13.dal12v.mail.ibm.com (dd.9e.1632.ip4.static.sl-reverse.com [50.22.158.221]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3w9ndkrg7s-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 15 Feb 2024 15:58:36 +0000 Received: from pps.filterd (ppma13.dal12v.mail.ibm.com [127.0.0.1]) by ppma13.dal12v.mail.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id 41FFVLmi010083 for ; Thu, 15 Feb 2024 15:58:35 GMT Received: from smtprelay01.fra02v.mail.ibm.com ([9.218.2.227]) by ppma13.dal12v.mail.ibm.com (PPS) with ESMTPS id 3w6npm5bk2-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 15 Feb 2024 15:58:34 +0000 Received: from smtpav04.fra02v.mail.ibm.com (smtpav04.fra02v.mail.ibm.com [10.20.54.103]) by smtprelay01.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 41FFwTcg14746294 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 15 Feb 2024 15:58:31 GMT Received: from smtpav04.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 7677E2004F; Thu, 15 Feb 2024 15:58:29 +0000 (GMT) Received: from smtpav04.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 516DC2006A; Thu, 15 Feb 2024 15:58:29 +0000 (GMT) Received: from tuxmaker.boeblingen.de.ibm.com (unknown [9.152.85.9]) by smtpav04.fra02v.mail.ibm.com (Postfix) with ESMTP; Thu, 15 Feb 2024 15:58:29 +0000 (GMT) From: Jens Remus To: binutils@sourceware.org Cc: Jens Remus , Andreas Krebbel Subject: [PATCH 08/14] s390: Add test case for disassembler option warn-areg-zero Date: Thu, 15 Feb 2024 16:58:15 +0100 Message-Id: <20240215155821.4065623-9-jremus@linux.ibm.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20240215155821.4065623-1-jremus@linux.ibm.com> References: <20240215155821.4065623-1-jremus@linux.ibm.com> MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: 4N9yhqdt62M9qPkAcycVoRjYPYJdBiRh X-Proofpoint-ORIG-GUID: 4N9yhqdt62M9qPkAcycVoRjYPYJdBiRh X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.1011,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2024-02-15_14,2024-02-14_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 priorityscore=1501 impostorscore=0 mlxscore=0 spamscore=0 mlxlogscore=588 phishscore=0 malwarescore=0 bulkscore=0 suspectscore=0 adultscore=0 lowpriorityscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2402150129 X-Spam-Status: No, score=-12.2 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: binutils-bounces+ouuuleilei=gmail.com@sourceware.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1790981407425761390 X-GMAIL-MSGID: 1790981407425761390 gas/ * testsuite/gas/s390/s390.exp: Add test cases for s390-specific assembler option "warn-areg-zero". * testsuite/gas/s390/zarch-warn-areg-zero.s: Likewise. * testsuite/gas/s390/zarch-warn-areg-zero.l: Likewise. Reviewed-by: Andreas Krebbel Signed-off-by: Jens Remus --- gas/testsuite/gas/s390/s390.exp | 1 + gas/testsuite/gas/s390/zarch-warn-areg-zero.l | 65 ++++++++++ gas/testsuite/gas/s390/zarch-warn-areg-zero.s | 116 ++++++++++++++++++ 3 files changed, 182 insertions(+) create mode 100644 gas/testsuite/gas/s390/zarch-warn-areg-zero.l create mode 100644 gas/testsuite/gas/s390/zarch-warn-areg-zero.s diff --git a/gas/testsuite/gas/s390/s390.exp b/gas/testsuite/gas/s390/s390.exp index f5798b4778e1..613487fc453c 100644 --- a/gas/testsuite/gas/s390/s390.exp +++ b/gas/testsuite/gas/s390/s390.exp @@ -60,4 +60,5 @@ if [expr [istarget "s390-*-*"] || [istarget "s390x-*-*"]] then { run_list_test "zarch-omitted-base-index-err" "" run_dump_test "zarch-base-index-0" "{as -m64}" run_list_test "zarch-base-index-0-err" "" + run_list_test "zarch-warn-areg-zero" "-m64 -mwarn-areg-zero" } diff --git a/gas/testsuite/gas/s390/zarch-warn-areg-zero.l b/gas/testsuite/gas/s390/zarch-warn-areg-zero.l new file mode 100644 index 000000000000..decf896aecc7 --- /dev/null +++ b/gas/testsuite/gas/s390/zarch-warn-areg-zero.l @@ -0,0 +1,65 @@ +.*: Assembler messages: +.*:6: Warning: base register specified but zero +.*:7: Warning: base register specified but zero +.*:15: Warning: index register specified but zero +.*:16: Warning: index register specified but zero +.*:19: Warning: base register specified but zero +.*:20: Warning: base register specified but zero +.*:22: Warning: index register specified but zero +.*:22: Warning: base register specified but zero +.*:23: Warning: index register specified but zero +.*:23: Warning: base register specified but zero +.*:25: Warning: index register specified but zero +.*:25: Warning: base register specified but zero +.*:26: Warning: index register specified but zero +.*:26: Warning: base register specified but zero +.*:28: Warning: index register specified but zero +.*:28: Warning: base register specified but zero +.*:29: Warning: base register specified but zero +.*:30: Warning: base register specified but zero +.*:40: Warning: base register specified but zero +.*:41: Warning: base register specified but zero +.*:44: Warning: base register specified but zero +.*:45: Warning: base register specified but zero +.*:48: Warning: base register specified but zero +.*:48: Warning: base register specified but zero +.*:49: Warning: base register specified but zero +.*:49: Warning: base register specified but zero +.*:51: Warning: base register specified but zero +.*:52: Warning: base register specified but zero +.*:52: Warning: base register specified but zero +.*:53: Warning: base register specified but zero +.*:53: Warning: base register specified but zero +.*:55: Warning: base register specified but zero +.*:60: Warning: base register specified but zero +.*:61: Warning: base register specified but zero +.*:68: Warning: base register specified but zero +.*:69: Warning: base register specified but zero +.*:72: Warning: base register specified but zero +.*:73: Warning: base register specified but zero +.*:76: Warning: base register specified but zero +.*:76: Warning: base register specified but zero +.*:77: Warning: base register specified but zero +.*:77: Warning: base register specified but zero +.*:79: Warning: base register specified but zero +.*:80: Warning: base register specified but zero +.*:80: Warning: base register specified but zero +.*:81: Warning: base register specified but zero +.*:81: Warning: base register specified but zero +.*:83: Warning: base register specified but zero +.*:88: Warning: base register specified but zero +.*:89: Warning: base register specified but zero +.*:96: Warning: index register specified but zero +.*:97: Warning: index register specified but zero +.*:100: Warning: base register specified but zero +.*:101: Warning: base register specified but zero +.*:103: Warning: index register specified but zero +.*:103: Warning: base register specified but zero +.*:104: Warning: index register specified but zero +.*:104: Warning: base register specified but zero +.*:106: Warning: index register specified but zero +.*:106: Warning: base register specified but zero +.*:107: Warning: index register specified but zero +.*:107: Warning: base register specified but zero +.*:109: Warning: base register specified but zero +.*:110: Warning: base register specified but zero diff --git a/gas/testsuite/gas/s390/zarch-warn-areg-zero.s b/gas/testsuite/gas/s390/zarch-warn-areg-zero.s new file mode 100644 index 000000000000..15c792d776fa --- /dev/null +++ b/gas/testsuite/gas/s390/zarch-warn-areg-zero.s @@ -0,0 +1,116 @@ +.text +foo: + +# D1(B1),I2 + mvi 16(%r1),32 + mvi 16(%r0),32 + mvi 16(0),32 +# mvi 16(),32 # syntax error: empty parentheses + mvi 16,32 + mvi 0,32 + mvi 0,0 + +# R1,D2(X2,B2) + a %r1,16(%r2,%r3) + a %r1,16(%r0,%r3) + a %r1,16(0,%r3) + a %r1,16(,%r3) + a %r1,16(%r3) + a %r1,16(%r2,%r0) + a %r1,16(%r2,0) +# a %r1,16(%r2,) # syntax error: explicitly omitted base + a %r1,16(%r0,%r0) + a %r1,16(%r0,0) +# a %r1,16(%r0,) # syntax error: explicitly omitted base + a %r1,16(0,%r0) + a %r1,16(0,0) +# a %r1,16(0,) # syntax error: explicitly omitted base + a %r1,16(0,%r0) + a %r1,16(,%r0) + a %r1,16(,0) +# a %r1,16(,) # syntax error: explicitly omitted index & base +# a %r1,16() # syntax error: empty parentheses + a %r1,16 + a %r1,0 + a %r0,0 + a 0,0 + +# D1(L1,B1),D2(B2) + mvc 16(1,%r1),32(%r2) + mvc 16(1,%r0),32(%r2) + mvc 16(1,0),32(%r2) +# mvc 16(1,),32(%r2) # syntax error: explicitly omitted base + mvc 16(1),32(%r2) + mvc 16(1,%r1),32(%r0) + mvc 16(1,%r1),32(0) +# mvc 16(1,%r1),32() # syntax error: empty parentheses + mvc 16(1,%r1),32 + mvc 16(1,%r0),32(%r0) + mvc 16(1,%r0),32(0) +# mvc 16(1,%r0),32() # syntax error: empty parentheses + mvc 16(1,%r0),32 + mvc 16(1,0),32(%r0) + mvc 16(1,0),32(0) +# mvc 16(1,0),32() # syntax error: empty parentheses + mvc 16(1,0),32 +# mvc 16(1,),32(%r0) # syntax error: explicitly omitted base +# mvc 16(1,),32(0) # syntax error: explicitly omitted base +# mvc 16(1,),32() # syntax error: explicitly omitted base & empty parentheses +# mvc 16(1,),32 # syntax error: explicitly omitted base + mvc 16(1),32(%r0) + mvc 16(1),32(0) +# mvc 16(1),32() # syntax error: empty parentheses + mvc 16(1),32 + mvc 0(1),0 + +# D1(L1,B1),D2(L2,B2) + unpk 16(1,%r1),32(2,%r2) + unpk 16(1,%r0),32(2,%r2) + unpk 16(1,0),32(2,%r2) +# unpk 16(1,),32(2,%r2) # syntax error: explicitly omitted base + unpk 16(1),32(2,%r2) + unpk 16(1,%r1),32(2,%r0) + unpk 16(1,%r1),32(2,0) +# unpk 16(1,%r1),32(2,) # syntax error: explicitly omitted base + unpk 16(1,%r1),32(2) + unpk 16(1,%r0),32(2,%r0) + unpk 16(1,%r0),32(2,0) +# unpk 16(1,%r0),32(2,) # syntax error: explicitly omitted base + unpk 16(1,%r0),32(2) + unpk 16(1,0),32(2,%r0) + unpk 16(1,0),32(2,0) +# unpk 16(1,0),32(2,) # syntax error: explicitly omitted base + unpk 16(1,0),32(2) +# unpk 16(1,),32(2,%r0) # syntax error: explicitly omitted base +# unpk 16(1,),32(2,0) # syntax error: explicitly omitted base +# unpk 16(1,),32(2,) # syntax error: explicitly omitted base +# unpk 16(1,),32(2) # syntax error: explicitly omitted base + unpk 16(1),32(2,%r0) + unpk 16(1),32(2,0) +# unpk 16(1),32(2,) # syntax error: explicitly omitted base + unpk 16(1),32(2) + unpk 0(1),0(2) + +# V1,D2(VX2,B2),M3 + vgef %v1,16(%v2,%r3),0 + vgef %v1,16(%v0,%r3),0 + vgef %v1,16(0,%r3),0 + vgef %v1,16(,%r3),0 + vgef %v1,16(%r3),0 + vgef %v1,16(%v2,%r0),0 + vgef %v1,16(%v2,0),0 +# vgef %v1,16(%v2,),0 # syntax error: explicitly omitted base + vgef %v1,16(%v0,%r0),0 + vgef %v1,16(%v0,0),0 +# vgef %v1,16(%v0,),0 # syntax error: explicitly omitted base + vgef %v1,16(0,%r0),0 + vgef %v1,16(0,0),0 +# vgef %v1,16(0,),0 # syntax error: explicitly omitted base + vgef %v1,16(,%r0),0 + vgef %v1,16(,0),0 +# vgef %v1,16(,),0 # syntax error: explicitly omitted index & base +# vgef %v1,16(),0 # syntax error: empty parentheses + vgef %v1,16,0 + vgef %v0,16,0 + vgef 0,16,0 + vgef 0,0,0