From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id jPM3FkOu6GTC4QoAWB0awg (envelope-from ) for ; Fri, 25 Aug 2023 09:36:03 -0400 Authentication-Results: simark.ca; dkim=pass (1024-bit key; secure) header.d=sourceware.org header.i=@sourceware.org header.a=rsa-sha256 header.s=default header.b=BkTclIkF; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 4A7B51E0C2; Fri, 25 Aug 2023 09:36:03 -0400 (EDT) Received: from server2.sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 2FA141E092 for ; Fri, 25 Aug 2023 09:36:01 -0400 (EDT) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 717113858425 for ; Fri, 25 Aug 2023 13:36:00 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 717113858425 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1692970560; bh=sX6uETIFYqzxr/hyQSxdzN7095HcS4jzu+3h1Q3e1vc=; h=To:CC:Subject:Date:References:In-Reply-To:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe: From:Reply-To:From; b=BkTclIkFvaJGASnVF1rmMxjiNWI5YYh5ThUV71ZPB9I1jvaZPj39J+OQsLr7oWN3a RULupGUVJjzi7ebqDCIQmTfwicij0pn29NXCy1qphaWfZXiT1XcwJ5SOMR9yg/wQEM gQO3Ixg9zI1O5I273htKKRDkwbA/ni1bekrXuhQc= Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by sourceware.org (Postfix) with ESMTPS id 302833858C1F for ; Fri, 25 Aug 2023 13:35:36 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 302833858C1F Received: from pps.filterd (m0353728.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 37PCqo4R008510 for ; Fri, 25 Aug 2023 13:35:35 GMT Received: from nam11-bn8-obe.outbound.protection.outlook.com (mail-bn8nam11lp2169.outbound.protection.outlook.com [104.47.58.169]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3spvpq9qfr-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Fri, 25 Aug 2023 13:35:34 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NN+oH7QsVJ+JnyMFO9XJ5i3HPHb84FrkKZCZK5NEkguR70H9SslxX6G2mGcFx3UWvEdOWpEjrkOaQcu0ITUIvdJzGBuf6rsAHi7bO1R6JhbcK+ZVAtCR8Og6TgOucEhVlZD5yM4egAYWqDtU4NdtVR1spCldG7E8ITCYbtYzfmyVPsc360L77CxsfmS34bvQ4ZtBx0MT8+8R2DhdcwZBGX+yEyxBr2fVE2aDbnl6R3uxisvlIgLvJu0NandVct3p8oKmnNKzrwc84dlSdvceI2tx6n6/b1ofKcBUjRHvmWTFhGAeKDlFzy0XNzhP16wwYNhH5xIaDhf0yF2+ju7ClA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=jf6573D4HZhIWn3OsE7n19zvOY8ipkD183iTCBfFbvE=; b=ijb4rDgFhpnw5uc61DhG/wnsdOR424dZkgt/vVwbX+0mwItQylq7yZZDv0/9fvYdv2iiuw9hBu0HW+KGMI9Kf0uocjPPKL/AX+aJpLB6A9FUAMkw4AcFE5bsV6CAO/RHv1eU9dHMOvcJoPNdnyl8QnTi/oII0UJFT1CcT24n+SgcBfK8wEb+Cvj/aRzZeOA2K+cPRNg6rOs2rrfKbY2u4W9Bv7eLWH1ldR355bKj17I2fMlSYKtNkLXRVwc0NDvtT7ghnjfTJM7G3KgNvOjOZ8DspGAY0kR9gD9x4kzCW5YDkJloqpsQkUGaQGHVi56tROB11Yoaynr+/KS8phGSnQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ibm.com; dmarc=pass action=none header.from=ibm.com; dkim=pass header.d=ibm.com; arc=none Received: from CH2PR15MB3544.namprd15.prod.outlook.com (2603:10b6:610:5::26) by BL1PR15MB5314.namprd15.prod.outlook.com (2603:10b6:208:385::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6699.29; Fri, 25 Aug 2023 13:35:31 +0000 Received: from CH2PR15MB3544.namprd15.prod.outlook.com ([fe80::530b:2bc9:5319:fefb]) by CH2PR15MB3544.namprd15.prod.outlook.com ([fe80::530b:2bc9:5319:fefb%6]) with mapi id 15.20.6699.028; Fri, 25 Aug 2023 13:35:31 +0000 To: Ulrich Weigand , "gdb-patches@sourceware.org" CC: Sangamesh Mallayya Subject: Re: [PATCH] Fix for call feature having nine parameters or more in AIX Thread-Topic: [PATCH] Fix for call feature having nine parameters or more in AIX Thread-Index: AQHZ1yv30H4J47aaDEK1rj/rWmyke6/63b4AgAAXO1A= Date: Fri, 25 Aug 2023 13:35:31 +0000 Message-ID: References: <0f53c04c1877d7a35200607144724d8fd774a365.camel@de.ibm.com> In-Reply-To: <0f53c04c1877d7a35200607144724d8fd774a365.camel@de.ibm.com> Accept-Language: en-IN, en-US Content-Language: en-IN X-MS-Has-Attach: yes X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CH2PR15MB3544:EE_|BL1PR15MB5314:EE_ x-ms-office365-filtering-correlation-id: 72f88c94-d75a-457f-408d-08dba570272d x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: OxDt1+Pcgshn2xxSutrjaSr9OleSwxQGCi/mrOp3juIwBWHk9/ZY/X/8BEgjLMH/iMFNOYDk9LvZsbTRolc4prFhX+ZljzJWkmOmJEuM3B9Ez9G3VLu/jv17mMs4TlS8CVCYuLW7cMg715hKclg5hnq4/f7GOOba+nIT8dgG3cTrWOlwt050VZ+XUhcFQSsv2JOcePQIodFppZP3Ziw7rWp4B0/umDIr5Dx8NQ/ymkm9Y8njyBpD9VADa6/KEqE0eULEwhKcMigS342us882zS+SlRVz5OBB3dHWg6EeTZwqRHAwz8obk1Gl853l9ClX7Jipq4VYhWEhCsX7kTcL5a8rUo++i+AqC228gmuFBScpchTYe1hDPSCjua2gLNr73Fmk/BpWKUhcDmCXTQk3TRQJl4m8o/8M8asULZBgxqLsl2HHbqQox4UaFEI6ngXnOiwqiTDNU3+Hekt6o24gCtDwjW5JArbECyNVWEwWmG0yuA3pY2mZ/kavmiISpNL5rMP1sP0w70kwKGMg5DDbdrCVcsXXyNqt9BZ2ambFtfPOsBR4amym/1fI3QN/mN9hbQr6kHHjSyub7tPHYGOlpHukizxRi5zBLxeCEjrCeN8= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CH2PR15MB3544.namprd15.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(136003)(396003)(346002)(366004)(39860400002)(376002)(1800799009)(451199024)(186009)(83380400001)(9686003)(478600001)(55016003)(5660300002)(52536014)(2906002)(8676002)(8936002)(4326008)(99936003)(38070700005)(38100700002)(122000001)(66556008)(66946007)(76116006)(66476007)(86362001)(71200400001)(41300700001)(64756008)(53546011)(33656002)(110136005)(7696005)(66446008)(316002)(6506007); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?Windows-1252?Q?FZzoGMu2wYlz2fN9rt1T+SKlUOUgAlBhaidVZaKrufYC1NDQusAmd2BV?= =?Windows-1252?Q?PDKUSHJyqwBbgKTn3QcnGdEUwZLfmK/oBTHyQH+Ol9CtWBy5bIgKHhh5?= =?Windows-1252?Q?oeHzkO9XN7G+bvQIYcOepMrgu4+WQNlFsj+5TFJCFkDIDoESxVZAJPB2?= =?Windows-1252?Q?peHwVa3GIOjsRJ+rhldqyUTCPZNus9uLVCAsP41s8MQGD/YGpKuSX18A?= =?Windows-1252?Q?xGcAB1priy9ysiJZPyps/fO10xnWhrWo/HpI8iqr6aZAoPnjQnJ0rpEU?= =?Windows-1252?Q?c4gKY+B6WbfFaZOs/T8DPpBkRZmbjCGe8UsJJ7u69qU+OIgW6dUHklpn?= =?Windows-1252?Q?OmdMS8vUUDd0F2kvsVhxtSBLOGqf27WQyy5DuJi9kNEAEjR36zqjGqxk?= =?Windows-1252?Q?OpbkLcmjF1QqyGTUiyKIl0QnLvZMLDdrVOJHbJEvAnUqiuq7sP6N8wIX?= =?Windows-1252?Q?J2in7I/eHTJ7gqPs4dmFGxofvqiUrThCxtEhROSxXLTmAWe8qv6vnrSx?= =?Windows-1252?Q?nHzkGCyGAmluM8PYPPd8bMLgiFT6iPvERjKOG2A+u+PJBwcJLX10Xm8h?= =?Windows-1252?Q?68Pyk93hNlXnykcC0Ow7RsXhxTNmoghXh/WSQzD5uTDBJpmqiep2KIhg?= =?Windows-1252?Q?NuAs73WPhxbYiSAELFne5WhPnbSbw8I3FjoILrCt0rWo3bZtHP5a26QV?= =?Windows-1252?Q?BBvEZ5l0xsa0b4FNX0GHxwI+/oDIijwXl0p28i3tcTEj2j7gJar/I4yz?= =?Windows-1252?Q?t1lEVKU6TFPfFSxD8tqgz+mzZDNDUE0G0AbyrFQ+LlPy80LB83fxWIDN?= =?Windows-1252?Q?YLScR5nYwjKf7BI3xZZBN99ZcPdT31BdeepjyJCq9WosHBYtes2Z/Au2?= =?Windows-1252?Q?Tb5vDQ1OVEiu3zDnequhNtHYJblZoq6kMgWpOi5id4TooSjo+Cf7TKQT?= =?Windows-1252?Q?9K4olarZgQ9VfptODMIWjdj5zcPAVotxhIcz88l1FnE49+9hrWKTKwPX?= =?Windows-1252?Q?pz+pAgHUpj1508g5zRhx2dZlw1A3TXmiZN8QnFPpM3NQ5k/fMwwxK/r8?= =?Windows-1252?Q?Ja5RcQMrWFVCFZqJK5X24jjhvvoTg3zy1/QMR3BFWzXwufpoEhcAH7vI?= =?Windows-1252?Q?JaucC/KGVmwutLCa8H5acIq6LVultI9PGcJxWAcfZJBJXygjg5z+bObp?= =?Windows-1252?Q?fDmhwF5CNZjD3C5s7moNDWu5qyfmxWCsYNU1OtYGoJtglJbVQIs/tQ8B?= =?Windows-1252?Q?qlLc6wBCXhzjaFVs5iX4a5OfCKexU1tbKLXatBxmvUe+lEaa8Udi9zxz?= =?Windows-1252?Q?E7H52Y64boG39ZH5TD2Nuxdrh5vj8Ar/fEXK2KjD+pQH1pL+WH3Q7ylF?= =?Windows-1252?Q?ZRF7Ay4tVVDDIVuGASov5dRXMLIBTfQ7qDHFJRwPaXhf3yjPrLDMzTjd?= =?Windows-1252?Q?gidleO1ZVyYxy88k8x7m0+xuigzypjB8gt0kb0Kf1qyZIiVQ8OuJ3Bnx?= =?Windows-1252?Q?DpXTvkfDzdISwU4ghMlavgW+M3Dpol1TnZu2PyLP8jyCc2OWsTDpxoa9?= =?Windows-1252?Q?ZAMJWIn/coR/sB4UCEyDpgRNxdhbJJdm35I1TpnVuJQpojczJoGYxrMy?= =?Windows-1252?Q?bxI5oTT+VWSV7v/t5WfxmhUpDP6jU7XyyxsYrrUATwASYVCI1BHlyNV5?= =?Windows-1252?Q?pJU7GwFfg/FVBMFm+6WU+zwh+g+e+LhSDo2s9Tk5DpM4QVqXsNoSf5IQ?= =?Windows-1252?Q?KrAhOyObuekPpOhyzOc7ZTSo9YywM5FAFvjCDgHyZnkRt3OelwbFLP8e?= =?Windows-1252?Q?8SwVbQ=3D=3D?= Content-Type: multipart/mixed; boundary="_004_CH2PR15MB3544875C14E9D34421C81146D6E3ACH2PR15MB3544namp_" X-OriginatorOrg: ibm.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CH2PR15MB3544.namprd15.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 72f88c94-d75a-457f-408d-08dba570272d X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Aug 2023 13:35:31.5132 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: fcf67057-50c9-4ad4-98f3-ffca64add9e9 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: bMDrdcUmJ2SvDjwPUS16D5gNLz/i+4cqTZi8aPcsCgJp/5jHbchcrVLOvjLCkA2SxCwOdklpWqcICsiFftYgoQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL1PR15MB5314 X-Proofpoint-GUID: eTTu7gOKEZlIGfU8VliB7RwdaFEHdMR- X-Proofpoint-ORIG-GUID: eTTu7gOKEZlIGfU8VliB7RwdaFEHdMR- X-Proofpoint-UnRewURL: 0 URL was un-rewritten MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.267,Aquarius:18.0.957,Hydra:6.0.601,FMLib:17.11.176.26 definitions=2023-08-25_12,2023-08-25_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 clxscore=1015 mlxscore=0 suspectscore=0 mlxlogscore=999 lowpriorityscore=0 priorityscore=1501 malwarescore=0 bulkscore=0 spamscore=0 phishscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2308100000 definitions=main-2308250120 X-Spam-Status: No, score=-1.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, HTML_MESSAGE, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, SCC_10_SHORT_WORD_LINES, SCC_5_SHORT_WORD_LINES, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Aditya Kamath1 via Gdb-patches Reply-To: Aditya Kamath1 Errors-To: gdb-patches-bounces+public-inbox=simark.ca@sourceware.org Sender: "Gdb-patches" --_004_CH2PR15MB3544875C14E9D34421C81146D6E3ACH2PR15MB3544namp_ Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable Hi Ulrich and GDB community members, Thank you for the feedback. Please find attached the patch. See:- 0001-Fix-= for-call-feature-having-9th-function-parameter-a.patch > I agree you've identified a problem, but I think your patch isn't quite c= omplete. > For example, immediately after the code you changed follows: > ii +=3D ((len + 3) & -4) / 4; > The intent is to always uses full stack slots even for arguments of odd s= izes. > But I understand in the 64-bit ABI the stack slot size is 8 bytes, so this > should round up to the next multiple of 8. > Similarly, you need to make sure that the first loop that computes the *s= ize* > of the stack that will be used for arguments performs the same calculatio= ns > as the code that actually fills in the arguments - or else you can overwr= ite > unrelated areas: > space +=3D ((len - argbytes + 3) & -4); > space +=3D ((val->type ()->length ()) + 3) & -4; > All of this should round up to wordsize instead of 4, I guess. > This will now round up to word size after the changes in this patch I get why you are saying this. So the slack slots need to be of 8 bytes. In= this case they are adding 3 cz assume a character guy comes then it become= s 1+3 =3D 4, which then & -4 will give you 4. Even if a bigger guy than cha= racter datatype comes it will be 4 at least. So it will be rounded to 4 all= the time. Similarly when for our 8 byte friend we will need the number 7 instead of 3. So 4 byte =3D 3, 8 byte =3D 7, this is a pattern of 2 power log base 2 (wor= dsize) -1. Example if the wordsize is 4 then we get 2*pow ( log 2 (4)) =96 = 1 =3D 2 pow (2) =96 1 =3D 4 =96 1 =3D3.. Same substitute we can do for 8 wo= rd size and we will get seven. So in my patch you will see this change wher= ever possible. - space +=3D ((len - argbytes + 3) & -4); + space +=3D ((len - argbytes + (int) pow (2, (int)log2 (wor= dsize)) -1) & -wordsize); So now space becomes 4, 8, 12 in 32 bit mode and 8, 16, 24 in 64 bit mode f= or 9th, 10th and 11th parameter of a function. Same goes with ii as well. I= t will come 8, 9, 10 irrespective of any word size. Hope this works for all of us.. Please see the 32 bit and 64 bit output pasted. They work fine. Thank you once again for guiding me. Let me know if it works. If this okay = please push this patch. If not let me know what else I can learn or need to= change. Also, I am curious to know why didn=92t I get a SEG fault or garbage the la= st time and why was it working without these space changes. I was trying to= understand but somehow am not fully clear about this. Let me know if you d= id.. Have a nice day ahead. Thanks and regards, Aditya. 32 bit output with patch:- Reading symbols from /home/aditya/gdb_tests/nine_parameter_func... (gdb) b main Breakpoint 1 at 0x1000078c: file /home/aditya/gdb_tests/nine_parameter_func= .c, line 27. (gdb) r Starting program: /home/aditya/gdb_tests/nine_parameter_func Breakpoint 1, main () at /home/aditya/gdb_tests/nine_parameter_func.c:27 27 const float register f3 =3D 19.0; (gdb) list 22 printf ("j =3D %d \n", j); 23 return (int)(d); 24 } 25 int main () 26 { 27 const float register f3 =3D 19.0; 28 const int register i1 =3D 700; 29 printf("%f \n", f3 + i1); 30 b (); 31 a (1, 2, 3, 4, 5, 6, 7, 8, 9, 983, 19); (gdb) call a (1, 2, 3, 4, 5, 6, 7, 8, 9, 983, 19) 812.000000 9th para =3D 9 , 10th para =3D 983 j =3D 9 $1 =3D 1041 (gdb) call a (1, 2, 3, 4, 5, 6, 7, 8, 9, 983, 25) 812.000000 9th para =3D 9 , 10th para =3D 983 j =3D 9 $2 =3D 1047 (gdb) 64 bit output with patch:- Breakpoint 1, main () at /home/aditya/gdb_tests/nine_parameter_func.c:27 27 const float register f3 =3D 19.0; (gdb) lsit Undefined command: "lsit". Try "help". (gdb) list 22 printf ("j =3D %d \n", j); 23 return (int)(d); 24 } 25 int main () 26 { 27 const float register f3 =3D 19.0; 28 const int register i1 =3D 700; 29 printf("%f \n", f3 + i1); 30 b (); 31 a (1, 2, 3, 4, 5, 6, 7, 8, 9, 983, 19); (gdb) call a (1, 2, 3, 4, 5, 6, 7, 8, 9, 983, 19) 812.000000 9th para =3D 9 , 10th para =3D 983 j =3D 9 $1 =3D 1041 (gdb) call a (1, 2, 3, 4, 5, 6, 7, 8, 9, 983, 25) 812.000000 9th para =3D 9 , 10th para =3D 983 j =3D 9 $2 =3D 1047 (gdb) call a (1, 2, 3, 4, 5, 6, 7, 8, 9, 983, 30) 812.000000 9th para =3D 9 , 10th para =3D 983 j =3D 9 $3 =3D 1052 (gdb) From: Ulrich Weigand Date: Friday, 25 August 2023 at 4:49 PM To: gdb-patches@sourceware.org , Aditya Kamath1= Cc: Sangamesh Mallayya Subject: Re: [PATCH] Fix for call feature having nine parameters or more in= AIX Aditya Kamath1 wrote: >So, debugging further I realized that the parameters of function in AIX >are stored in registers 3 to 10. More about this fact can be read in this >document {https://www.ibm.com/docs/en/aix/7.2?topic=3Doverview-register-us= age-conventions}. >If the function has more than 8 parameters then the 9th one onwards, we s= tore >the function parameters in the stack. This can be seen in the rs6000-aix-t= dep.c >file in the dummy_call function from line 700 and beyond. Over here we have >this line below. > >write_memory (sp + 24 + (ii * 4), arg->contents ().data (), len); > >This the root cause of this issue. I agree you've identified a problem, but I think your patch isn't quite com= plete. For example, immediately after the code you changed follows: ii +=3D ((len + 3) & -4) / 4; The intent is to always uses full stack slots even for arguments of odd siz= es. But I understand in the 64-bit ABI the stack slot size is 8 bytes, so this should round up to the next multiple of 8. Similarly, you need to make sure that the first loop that computes the *siz= e* of the stack that will be used for arguments performs the same calculations as the code that actually fills in the arguments - or else you can overwrite unrelated areas: if (argbytes) { space +=3D ((len - argbytes + 3) & -4); jj =3D argno + 1; } else jj =3D argno; for (; jj < nargs; ++jj) { struct value *val =3D args[jj]; space +=3D ((val->type ()->length ()) + 3) & -4; } All of this should round up to wordsize instead of 4, I guess. Bye, Ulrich --_004_CH2PR15MB3544875C14E9D34421C81146D6E3ACH2PR15MB3544namp_ Content-Type: application/octet-stream; name="0001-Fix-for-call-feature-having-9th-function-parameter-a.patch" Content-Description: 0001-Fix-for-call-feature-having-9th-function-parameter-a.patch Content-Disposition: attachment; filename="0001-Fix-for-call-feature-having-9th-function-parameter-a.patch"; size=3427; creation-date="Fri, 25 Aug 2023 13:21:59 GMT"; modification-date="Fri, 25 Aug 2023 13:21:59 GMT" Content-Transfer-Encoding: base64 RnJvbSA3NzE4N2VkMjQwNjJjOTViYWIxMWMwNDQyNDBjZDBjNzhiODczNmQxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGl0eWEgVmlkeWFkaGFyIEthbWF0aCA8QWRpdHlhLkthbWF0 aDFAaWJtLmNvbT4KRGF0ZTogRnJpLCAyNSBBdWcgMjAyMyAwODoyMjowMCAtMDUwMApTdWJqZWN0 OiBbUEFUQ0hdIEZpeCBmb3IgY2FsbCBmZWF0dXJlIGhhdmluZyA5dGggZnVuY3Rpb24gcGFyYW1l dGVyIGFuZCBiZXlvbmQKICAgY29ycnVwdCB2YWx1ZXMuCgpJbiBBSVggdGhlIGZpcnN0IGVpZ2h0 IGZ1bmN0aW9uIHBhcmFtZXRlcnMgYXJlIHN0b3JlZCBmcm9tIFIzIHRvIFIxMC4KSWYgdGhlcmUg YXJlIG1vcmUgdGhhbiBlaWdodCBwYXJhbWV0ZXJzIGluIGEgZnVuY3Rpb24gdGhlbiB3ZSBzdG9y ZSB0aGUgOXRoIHBhcmFtZXRlciBvbndhcmRzIGluIHRoZSBzdGFjay4KV2hpbGUgZG9pbmcgc28s IGluIDY0IGJpdCBtb2RlIHRoZSB3b3JkcyB3ZXJlIG5vdCB6ZXJvIGV4dGVuZGVkIGFuZCB3YXMg Y29taW5nIGxpa2UgMzIgYml0IG1vZGUuClRoaXMgcGF0Y2ggaXMgYSBmaXggdG8gdGhlIHNhbWUu Ci0tLQogZ2RiL3JzNjAwMC1haXgtdGRlcC5jIHwgMzUgKysrKysrKysrKysrKysrKysrKysrKysr KysrLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAyNyBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL2dkYi9yczYwMDAtYWl4LXRkZXAuYyBiL2dkYi9yczYwMDAtYWl4 LXRkZXAuYwppbmRleCA4MjlmNTU5ODFjYS4uZWJjYjk4NTBkYzcgMTAwNjQ0Ci0tLSBhL2dkYi9y czYwMDAtYWl4LXRkZXAuYworKysgYi9nZGIvcnM2MDAwLWFpeC10ZGVwLmMKQEAgLTM5LDYgKzM5 LDcgQEAKICNpbmNsdWRlICJnZGJzdXBwb3J0L3htbC11dGlscy5oIgogI2luY2x1ZGUgInRyYWQt ZnJhbWUuaCIKICNpbmNsdWRlICJmcmFtZS11bndpbmQuaCIKKyNpbmNsdWRlIDxtYXRoLmg+CiAK IC8qIElmIHRoZSBrZXJuZWwgaGFzIHRvIGRlbGl2ZXIgYSBzaWduYWwsIGl0IHB1c2hlcyBhIHNp Z2NvbnRleHQKICAgIHN0cnVjdHVyZSBvbiB0aGUgc3RhY2sgYW5kIHRoZW4gY2FsbHMgdGhlIHNp Z25hbCBoYW5kbGVyLCBwYXNzaW5nCkBAIC02NDksNyArNjUwLDcgQEAgcnM2MDAwX3B1c2hfZHVt bXlfY2FsbCAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gsIHN0cnVjdCB2YWx1ZSAqZnVuY3Rpb24s CiAKICAgICAgIGlmIChhcmdieXRlcykKIAl7Ci0JICBzcGFjZSArPSAoKGxlbiAtIGFyZ2J5dGVz ICsgMykgJiAtNCk7CisJICBzcGFjZSArPSAoKGxlbiAtIGFyZ2J5dGVzICsgKGludCkgcG93ICgy LCAoaW50KWxvZzIgKHdvcmRzaXplKSkgLTEpICYgLXdvcmRzaXplKTsKIAkgIGpqID0gYXJnbm8g KyAxOwogCX0KICAgICAgIGVsc2UKQEAgLTY1OCw3ICs2NTksNyBAQCByczYwMDBfcHVzaF9kdW1t eV9jYWxsIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwgc3RydWN0IHZhbHVlICpmdW5jdGlvbiwK ICAgICAgIGZvciAoOyBqaiA8IG5hcmdzOyArK2pqKQogCXsKIAkgIHN0cnVjdCB2YWx1ZSAqdmFs ID0gYXJnc1tqal07Ci0JICBzcGFjZSArPSAoKHZhbC0+dHlwZSAoKS0+bGVuZ3RoICgpKSArIDMp ICYgLTQ7CisJICBzcGFjZSArPSAoKCh2YWwtPnR5cGUgKCktPmxlbmd0aCAoKSkgKyAoaW50KSBw b3cgKDIsIChpbnQpbG9nMiAod29yZHNpemUpKSAtMSkgJiAtd29yZHNpemUpOwogCX0KIAogICAg ICAgLyogQWRkIGxvY2F0aW9uIHJlcXVpcmVkIGZvciB0aGUgcmVzdCBvZiB0aGUgcGFyYW1ldGVy cy4gICovCkBAIC02NzksMTEgKzY4MCwyMCBAQCByczYwMDBfcHVzaF9kdW1teV9jYWxsIChzdHJ1 Y3QgZ2RiYXJjaCAqZ2RiYXJjaCwgc3RydWN0IHZhbHVlICpmdW5jdGlvbiwKIAogICAgICAgaWYg KGFyZ2J5dGVzKQogCXsKLQkgIHdyaXRlX21lbW9yeSAoc3AgKyAyNCArIChpaSAqIDQpLAotCQkJ YXJnLT5jb250ZW50cyAoKS5kYXRhICgpICsgYXJnYnl0ZXMsCi0JCQlsZW4gLSBhcmdieXRlcyk7 CisJICBpZiAod29yZHNpemUgPT0gOCkKKwkgICAgeworCSAgICAgIGdkYl9ieXRlIHdvcmRbUFBD X01BWF9SRUdJU1RFUl9TSVpFXTsKKwkgICAgICBtZW1zZXQgKHdvcmQsIDAsIFBQQ19NQVhfUkVH SVNURVJfU0laRSk7CisJICAgICAgc3RvcmVfdW5zaWduZWRfaW50ZWdlciAod29yZCwgdGRlcC0+ d29yZHNpemUsIGJ5dGVfb3JkZXIsCisJCQkJICAgICAgdW5wYWNrX2xvbmcgKHR5cGUsIGFyZy0+ Y29udGVudHMgKCkuZGF0YSAoKSkpOworCSAgICAgIHdyaXRlX21lbW9yeSAoc3AgKyA0OCArIChp aSAqIHdvcmRzaXplKSwgd29yZCwgUFBDX01BWF9SRUdJU1RFUl9TSVpFKTsKKwkgICAgfQorCSAg ZWxzZQorCSAgICB3cml0ZV9tZW1vcnkgKHNwICsgMjQgKyAoaWkgKiB3b3Jkc2l6ZSksCisJCQkg IGFyZy0+Y29udGVudHMgKCkuZGF0YSAoKSArIGFyZ2J5dGVzLAorCQkJICBsZW4gLSBhcmdieXRl cyk7CiAJICArK2FyZ25vOwotCSAgaWkgKz0gKChsZW4gLSBhcmdieXRlcyArIDMpICYgLTQpIC8g NDsKKwkgIGlpICs9ICgobGVuIC0gYXJnYnl0ZXMgKyAoaW50KSBwb3cgKDIsIChpbnQpbG9nMiAo d29yZHNpemUpKSAtIDEpICYgLXdvcmRzaXplKSAvIHdvcmRzaXplOwogCX0KIAogICAgICAgLyog UHVzaCB0aGUgcmVzdCBvZiB0aGUgYXJndW1lbnRzIGludG8gc3RhY2suICAqLwpAQCAtNzA3LDgg KzcxNywxNyBAQCByczYwMDBfcHVzaF9kdW1teV9jYWxsIChzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJj aCwgc3RydWN0IHZhbHVlICpmdW5jdGlvbiwKIAkgICAgICArK2ZfYXJnbm87CiAJICAgIH0KIAot CSAgd3JpdGVfbWVtb3J5IChzcCArIDI0ICsgKGlpICogNCksIGFyZy0+Y29udGVudHMgKCkuZGF0 YSAoKSwgbGVuKTsKLQkgIGlpICs9ICgobGVuICsgMykgJiAtNCkgLyA0OworCSAgaWYgKHdvcmRz aXplID09IDgpCisJICAgIHsKKwkgICAgICBnZGJfYnl0ZSB3b3JkW1BQQ19NQVhfUkVHSVNURVJf U0laRV07CisJICAgICAgbWVtc2V0ICh3b3JkLCAwLCBQUENfTUFYX1JFR0lTVEVSX1NJWkUpOwor CSAgICAgIHN0b3JlX3Vuc2lnbmVkX2ludGVnZXIgKHdvcmQsIHRkZXAtPndvcmRzaXplLCBieXRl X29yZGVyLAorCQkJCSAgICAgIHVucGFja19sb25nICh0eXBlLCBhcmctPmNvbnRlbnRzICgpLmRh dGEgKCkpKTsKKwkgICAgICB3cml0ZV9tZW1vcnkgKHNwICsgNDggKyAoaWkgKiB3b3Jkc2l6ZSks IHdvcmQsIFBQQ19NQVhfUkVHSVNURVJfU0laRSk7CisJICAgIH0KKwkgIGVsc2UKKwkgICAgd3Jp dGVfbWVtb3J5IChzcCArIDI0ICsgKGlpICogd29yZHNpemUpLCBhcmctPmNvbnRlbnRzICgpLmRh dGEgKCksIGxlbik7CisJICBpaSArPSAoKGxlbiArIChpbnQpIHBvdyAoMiwgKGludClsb2cyICh3 b3Jkc2l6ZSkpIC0xKSAmIC13b3Jkc2l6ZSkgLyB3b3Jkc2l6ZTsKIAl9CiAgICAgfQogCi0tIAoy LjM4LjMKCg== --_004_CH2PR15MB3544875C14E9D34421C81146D6E3ACH2PR15MB3544namp_--