From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id 7F7ED3858D20 for ; Wed, 17 Apr 2024 23:56:45 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 7F7ED3858D20 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=oracle.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=oracle.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 7F7ED3858D20 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1713398208; cv=pass; b=blTnIuPxd+9pWRrdapOi9Du67gcrtrYIEYHdDHN+DKWNzR4hGEHCmfHlyi7j09D1yNZdX+9YMOUZVoGR9GZSz6beztSaRFLiwNPCTXN2YLMliejQ17sUDMQtIaxW5TAzk2hrPtLTCVBY2XraXkR8GazHG5TyugndQCOVjoRHdZU= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1713398208; c=relaxed/simple; bh=D8qH4jMEY0gr5QyA3+YHAdutYMurdLV5GXz0QiEZ+5A=; h=DKIM-Signature:DKIM-Signature:Message-ID:Date:Subject:To:From: MIME-Version; b=o1hLoxrXG9RirNvDNsfwYTtWYx1PmeNb3sXTKfGUOZxygKnKoqY7dagFpfFTTOy53sZZ+fiuxBeXhYMk/jTb4MupaXqrtR+D+cCpjg+9Xl5G4FRch7ipI6d++SyeE5YwpuEuXo1QwGOZE8HwD+EeVahheMWgqLqD5awXHLlI6Uk= ARC-Authentication-Results: i=2; server2.sourceware.org Received: from pps.filterd (m0246617.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 43HM4Uuc009517; Wed, 17 Apr 2024 23:56:43 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=message-id : date : subject : to : cc : references : from : in-reply-to : content-type : content-transfer-encoding : mime-version; s=corp-2023-11-20; bh=Raz+615pwC9fUFkW/jtKWXosyYqauiZbzl55xv6NU1o=; b=e1SDainybguT2h+usOss2/C496SjfZMpg4bN11ynS52J6kGqc6KJAPDnSjwSuMtVfZFy r2QjtoBGpgsmcQ+X2/Z//wgtsaWIglw4Yuh3ujxOm60AgN4Pj+gJqbjOxHDB0SqK7PW7 lnj+yw/WP2ZyqH3VP/7OfE8W55pi8IMxkMBJVDzcDNZVflVQIH3mE4qlMoL72towVwds nEcIrbOvaR3VfFKBfeI/Grx7/7wXAgWdFb6bc2Y2Wr8uTBQS/O4m4vITRtEIImeA4hnv 7rLlD7G3hJ6AcgsvdwiJr5iXHnIPTgym33GxGxZxjcfnydmzg2MdXIHL3uQQQgDMvg1V EQ== Received: from phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta02.appoci.oracle.com [147.154.114.232]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3xfjkv93w4-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 17 Apr 2024 23:56:43 +0000 Received: from pps.filterd (phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 43HNVVqL029172; Wed, 17 Apr 2024 23:56:42 GMT Received: from nam10-bn7-obe.outbound.protection.outlook.com (mail-bn7nam10lp2101.outbound.protection.outlook.com [104.47.70.101]) by phxpaimrmta02.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3xfgg9kfna-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 17 Apr 2024 23:56:42 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=W0NWyEEpg9/gr+TGhBJ1p43KhN36klBCl/GYaWmb2QCX8VT4J60rfPi3MFEZB06EkH7SC5Z58YWfZYO4YVIPLld/9LGneDI6SjET9bVaQ1qCmeMx4Lg0CAwzL/xhhLbYSjmGMoIjPKMo24P5hu5z77E/YIINn943+yNJCp0nPzo3fniKJSZVk/9PVzvOqAjY3nl62jNWZ3RnXtpXqdDHKe1muQu13cFIMJNkrKmgkCyRnndqK2pOW6V6fXadvaKb+p+sOCXpMqFvl56/d3WFjvgYDpkPQ4pB3pQipkK4HSNRjPs4domLTLz/uaOczv6sO7rq85xU65Il/QmJ+7+Q5A== 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=Raz+615pwC9fUFkW/jtKWXosyYqauiZbzl55xv6NU1o=; b=TnAMdldRypPcukO0Cal8SJIIyxgZCfJ1g+qqJ/Uay5jlEozaEsj7ZikFAuDzLXywE2dRcZKOJHXzMrv1sQV2ZsN+PUGeXKKfRSx+ElQ4k/+crZIZOgkamxoUaF9zTcklGfs9qHQl17C/fw8ct3ON0++EDLZ0VAUiJDQXb5Im6y8FLVnVwgWuXNk/Lo0mUpx5oHkLg7rWWYQh/JsWVBQXLeXxDYI2zT8xUmOOQS+iNc+5VN8UYqrkm3MzeQkOsMdMxGOd4t4uSt+bP+/KJ1nlyN43AUEmigMGxT6IS7lSuB8+wHbMB0k9lb1/OwsySm3AgUrPwmNl+54Fo5jvyczhHg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Raz+615pwC9fUFkW/jtKWXosyYqauiZbzl55xv6NU1o=; b=ZaAOejPgBeUqqW4Q0hSk4ewoxzXL9j8Fj+Mi60WX0xlcYElKz5AbPZlP2g9rj209wG36Wv1Q9ldtGcDTnSo0h+hVEcSOuCTiWIZoFymSHvF7Tu4N4WUXm5xM4kHlZpCpRvIfiVvlMa4PsIdZCflm5ySCTjvhovqQIh6i9QA8Hrg= Received: from MWHPR1001MB2158.namprd10.prod.outlook.com (2603:10b6:301:2d::17) by PH0PR10MB4808.namprd10.prod.outlook.com (2603:10b6:510:35::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7452.50; Wed, 17 Apr 2024 23:56:40 +0000 Received: from MWHPR1001MB2158.namprd10.prod.outlook.com ([fe80::6f0e:742a:270:889]) by MWHPR1001MB2158.namprd10.prod.outlook.com ([fe80::6f0e:742a:270:889%5]) with mapi id 15.20.7452.049; Wed, 17 Apr 2024 23:56:39 +0000 Message-ID: <9bbfb6a8-c83c-484c-922b-cef90603f663@oracle.com> Date: Wed, 17 Apr 2024 16:56:37 -0700 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v3 10/15] gas: Skip SFrame FDE if FP without RA on stack Content-Language: en-US To: Jens Remus Cc: Andreas Krebbel , binutils@sourceware.org References: <20240412144718.4191286-1-jremus@linux.ibm.com> <20240412144718.4191286-11-jremus@linux.ibm.com> <35d18b75-5509-4aae-9e5b-408382010573@linux.ibm.com> From: Indu Bhagat In-Reply-To: <35d18b75-5509-4aae-9e5b-408382010573@linux.ibm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: MW4PR03CA0269.namprd03.prod.outlook.com (2603:10b6:303:b4::34) To MWHPR1001MB2158.namprd10.prod.outlook.com (2603:10b6:301:2d::17) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MWHPR1001MB2158:EE_|PH0PR10MB4808:EE_ X-MS-Office365-Filtering-Correlation-Id: a22bddb2-c7d6-4ca2-5fee-08dc5f3a0637 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: ua7xi7QSgtAgzhBbv/d0VyYmDbIst7kD5cJrPioRsMMUdjsf1izsPyBvezpNlydTplxdup5fvsFfehrHNLj0D1mOmnwYqAU9upEB7hpJmsLh1oJbyAxPXKT9k+WobDsWRCJj+mLMlyxROAjVDfj9yOfYogdRJrUdoCTRqtWCbdI7OOpASeBIJNC7PCJr8E5MZMSiB9Xn4KcTpO3/OwXO2IsASJI69QuVCGecKc0SGVNouXVlWObqsPm7yucJvLBp3dvjOvzFvs+bzVFZqfU/Gln6uInyMpvjQxICAQ4tqtlX5sNjorkc8PSPKiZMKFZCfp586kmm0BXPToS+T/LoVFki4vfh8haB4Kgq+qpQua1uY+VFT34ZefIg2zbLA3pzjkk7u8sDmrl2yug+Ar4GRfePjKAJxDqMoLyHH/5ISX5GlqvsY0GnVzmoxd/ECjhPYd7IE1ZVX8C5L1Y3/wIAVeqly9qWo6mWW89E8fswksa9qzhMc/eDcbO/SepDk5WNG1cpGnMMft2MaToaB+K83lYujOyiUxSkCpBGhvy772Fidlgr7iFAA56puTSg0uttvblGuDskxXBd1mwR5KiZBrrxKQ7cMjTjXnyZm0mS7KfF1RE4HUcNMSU7S8A+92kNP8ia/HREFFtmdglQGEjd1509lTXbDYZ3FkUFTVl2X4Q= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR1001MB2158.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376005)(1800799015)(366007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?em5NS1orUUwrVG1WRm5ndjRLQXcyZU1ZTnU4bXNXeWFyNldBazVUWUdxL3Mx?= =?utf-8?B?M3hZUGpYVTFOUDdkUVhXUllqYUZndnA3aUNVcmVSMXpGYVVMd3FHa1h2UGx5?= =?utf-8?B?N2piZWJMSW1SeU5qVkswbHZ6UHVVOFQxYWFOOE1aZlgrTzZiTFJ2Qmk1MWhR?= =?utf-8?B?eGFlTWE1RkMvTkw2dEpmdFhYWldZM001M0lmaTJHQjRkTjhsK3ZWYWxPTm55?= =?utf-8?B?a0tHbDFjQ2YwbFhZS1g5LzNQOTVocWYrOWtCcHhVSlNuZnZndFRZQXV2Z2Ns?= =?utf-8?B?UjJ2dEZzOTdrejExLzNLQjJ2ZlpTWUJCVExKZEZWdTk4TjU2T05oTTlselZQ?= =?utf-8?B?SXZvdGJDemlIenZDRHBmdGg3TWRmamF5TTB1UmdnQTNycXFFSEdINjZIVm9N?= =?utf-8?B?WDNRRzhHdVBBQWErK1NwdkkvaWpFeFdKUCtqN2IzcjhBdnpHcDdMNWZkYjBH?= =?utf-8?B?MVU3bHFHU3J4RjIyYkQ0cW9XeGd4bGpBMVdqeU42eld6cXVoU3QzT0FESDJH?= =?utf-8?B?dTJFUEZFUHluRnZaUWdXR0cyQjByUllWV0pDMWVZNDVzSHVYanBrYnlyZTVh?= =?utf-8?B?TXBoRUNBNm9nUGN6ejFaejBkdGxtQ1k4KzhwWHIrSWtYZ2FSZTd0NVdaWFgv?= =?utf-8?B?Yzl4NFNCcFFkMkR0RHBxUW9LRVQ0Z2JNbGpkd2UwT2FkNDAvdFBZVytVZnN0?= =?utf-8?B?SkpCakIyU2xvTHN4OE5jZnFRTC93OEI4L2QxU1p0ekZLL21Wb0FaaDYyczl5?= =?utf-8?B?MkxqWmdtelYydEgvejVjcmExUFZ6ZkhiN1hZQ08xRGJBbUZnZW9LN3VpRmlL?= =?utf-8?B?aWIwMnoydmphVFNaQU5OZG4yK3J5WGVHSW5GMDV2OURYclVDcTdEMjBoOC9j?= =?utf-8?B?NnBIZ2VtQmtERUxDTWczcFdpTnQwWWk2N1B3VEZoemE2Q0FsQTVNR0lLVVpt?= =?utf-8?B?RUlYWnhaU1ozR2h6S3YyUXhUNFUrTFYyQ3JPZEV4eXdnc1Y0Q0piYytJY3pI?= =?utf-8?B?RUhCa2JiVU0xeVZPTmlEQXAyeStGM1RsZENWckk3dVYrNU02bHlrNHB3aU5O?= =?utf-8?B?SVlvUU1YVis2UFd2YkVKQXZNUHFwRTV6VHlmdnBDbGN2Y1creU9jb01OOUVj?= =?utf-8?B?KzROenpwdWlMRWtuVFFSeWhPc01JTk5nTFpSb2F6T3ZXV3R1bk0wclNOcFBE?= =?utf-8?B?Y2dsQytIQWQxemw2NkNCcXdNLzdPa3ZlZDNrNW5PSUx5ekluWkN3TXVwRllR?= =?utf-8?B?aWhvRVJxeElTSmtZNTlOcUF1RkdRRDBZREIvcUNZbWRJQzg5RXFHYy84eXRx?= =?utf-8?B?d2ZDZEhlS0VvTEV0enBoQTBvb0JzZlVQSEo3V1J4ZVM1RjZXeURlYlVyWXBN?= =?utf-8?B?OGlNYktsdGJXV1IyQVcxSnFnaXlVU0s2SHFiRFpRendWV09aaGtacXNBVDV5?= =?utf-8?B?ZjZuVVNVdWZ2VFN5U0piUU83YlpFTGQ5anVyeFViaXY4TWtrQ0VpeFd5RzhX?= =?utf-8?B?VWd5c2s5YVZYMXpiZWZnWXNqc1RVSWpqU2RlUnpWVDdQMThjTW5ZMlQvTmI1?= =?utf-8?B?UTFCSnFHUk9MMVEyZzYwS0R1d2h5Q0w0U01jem05RmxxQlhZYVByNkFRdCtK?= =?utf-8?B?YUVpcnFYc0hKU3J0Nlh2UTlNTGFmNENIcFluWnhKNEZYZzJQc29UZVVPamVa?= =?utf-8?B?djBOeURIVTdqUFF2SEszdGJHenplRDYzUGZveGpzWXZqYUR3dmJTMVVJNjRO?= =?utf-8?B?SjVNUnIvUXZrSkpRSDYwZnZRUHMvWWhUc0tKNXQrallzS3d0RDc0UGlQUWNl?= =?utf-8?B?aWZQNnVKMWdZUXM0QnVTRHM0YUNaeWpteTBGVmxSMkR6cHdxS2ZrdU1xMDdq?= =?utf-8?B?OEZ3bFh2MXBGVU9iYU51M0hLUVVzb3ZPNmFZM2RkQXNnS1NVNE1wS0NYQWJu?= =?utf-8?B?SGI3Z0JtcC9MdWJXejFCWFNmMGd5c00zdlU4RllNdnBMMFJOM0J2Z0U4TFBi?= =?utf-8?B?Z1drSDZmWmlrVkRUWjYrN3FHRDdkOEJIUno0dDVhTGljbCtBR3ZPSHBhcGRx?= =?utf-8?B?OURZb2IvQmlXVm5TcGV5UVlqaURaWEtmVDZ5Y2c4MWJQTkJoREhmOHlxaytN?= =?utf-8?B?ZHhINFN3d2xITXBMeTBTRHdYSzdIVEpLUk83K0c3SGxOczJHU2dna1F6VllU?= =?utf-8?Q?WeqYnDjeWwJTDssdjnhAnQk=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: ByATQznpbtc3Cp1LswSTDwYAeh44HdwwN8S8R+VF8yfQBrnfDhra2u5cJ02Lqzm4wXc7+r0Y5+3MOhj7njOkqDr17G7JZ+e9sl11J0GQnsvjXD0VvHW8EcnOpG61gVG+Oxl3QtG8IthxvxFdhkdO9uoSPBlGQ51/WE9omzwiwAoPGd96ZAoKnNXMpETiubkPCb8bHfCMy95lRob8DPkZ2Q3JUKTdVt0CvvCaKXc4fZSoTrpfBp6veHIJeFGZ5QGpClxRbIpdCDCG6k5MAWK4Vcf/vornH+P6LdODQHXc4hDh3A/N236h3s+I4FRTjC9CL3sL3CADpg6zx2A9F3qiuKZD5idMgSw95M50C4s1RpcyrDXAuOcLF4KthwqHLG9qjK47FEqd7mKlVqU0c28Rv4ktrKFBD1ZomJZZMzwU3YEKrEJBjRYKPPr0cmyWDFvOekb2nHif9IxxtMHrvie4A3xMhecGNgdGlIFQ64UYfuhcFmPQ4lyYnrd41quvWQ/xGCOcQY7rquW2cEOrC63zQlwdJaJJMoRfQxuIKHsg71S1BdT8EgBe2H1OyK7ztTOh79oPQItXP77sflnXs7CPT8bPyq17dwaiBgY+DfXR848= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: a22bddb2-c7d6-4ca2-5fee-08dc5f3a0637 X-MS-Exchange-CrossTenant-AuthSource: MWHPR1001MB2158.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Apr 2024 23:56:39.9272 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: lt0rsFXfwKFbdecUKp/H/whow+pjklRtd2UlS3RwNQ3e1L3WW72iO0sxcoetY8adIr/xiuU60BHz7Ex7eq7O7Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR10MB4808 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-04-17_19,2024-04-17_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 spamscore=0 mlxlogscore=999 phishscore=0 mlxscore=0 malwarescore=0 bulkscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2404010000 definitions=main-2404170170 X-Proofpoint-ORIG-GUID: oLTHGLA0q0KcAgg9oMvkW-zn8oJa463V X-Proofpoint-GUID: oLTHGLA0q0KcAgg9oMvkW-zn8oJa463V X-Spam-Status: No, score=-11.2 required=5.0 tests=BAYES_00,BODY_8BITS,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On 4/16/24 06:14, Jens Remus wrote: > Hello Indu, > > Am 12.04.2024 um 16:47 schrieb Jens Remus: >> The SFrame format cannot represent the frame pointer (FP) being saved >> on the stack without the return address (RA) also being saved on the >> stack, if RA tracking is used. > > [...] > >> diff --git a/gas/gen-sframe.c b/gas/gen-sframe.c >> index a3b6f75cfe85..87be3eb05ad2 100644 >> --- a/gas/gen-sframe.c >> +++ b/gas/gen-sframe.c >> @@ -1439,6 +1439,25 @@ sframe_do_fde (struct sframe_xlate_ctx *xlate_ctx, >>       = get_dw_fde_end_addrS (xlate_ctx->dw_fde); >>       } >> +#ifdef SFRAME_FRE_RA_TRACKING >> +  if (sframe_ra_tracking_p ()) >> +    { >> +      struct sframe_row_entry *fre; >> + >> +      /* Iterate over the scratchpad FREs and validate them.  */ >> +      for (fre = xlate_ctx->first_fre; fre; fre = fre->next) >> +    { >> +      /* SFrame format cannot represent FP on stack without RA on >> stack.  */ >> +      if (fre->ra_loc != SFRAME_FRE_ELEM_LOC_STACK >> +          && fre->bp_loc == SFRAME_FRE_ELEM_LOC_STACK) >> +        { >> +          as_warn (_("skipping SFrame FDE due to FP without RA on >> stack")); >> +          return SFRAME_XLATE_ERR_NOTREPRESENTED; >> +        } >> +    } >> +    } >> +#endif /* SFRAME_FRE_RA_TRACKING  */ >> + >>     return SFRAME_XLATE_OK; >>   } > > I noticed that above new warning is erroneously emitted when assembling > the following CFI directive sequence with option "-alh" (to output a > listing of the assembly; probably any "-a[...]") on a SFrame enabled > target, that uses FP and RA tracking. > > .cfi_offset , > .cfi_offset , > > The reason is that with listings enabled there is an additional DWARF > DW_CFA_advance_loc CFI instruction (with a zero advance) between both > DW_CFA_offset instructions, that the DWARF .eh_frame generator is able > to process correctly, but causes the .sframe generator to choke. > > Additionally with this patch reverted "bad" SFrame information is > generated (see example below), where there are multiple SFrame FREs for > the same PC start address. > Note that the FP-tracking information erroneously being displayed in the > RA-tracking column, is why I introduced this new warning message. I will > send two alternative patches how to potentially resolve that soon. > > $ cat test_fpra_min.s >         .cfi_sections .sframe, .eh_frame >         .cfi_startproc >         stmg    %r11,%r15,88(%r15) >         .cfi_rel_offset 11, 88 >         .cfi_rel_offset 14, 112 >         la      %r11,0 >         la      %r14,0 > .Lreturn: >         lmg     %r11,%r15,88(%r15) >         .cfi_restore 14 >         .cfi_restore 11 >         br      %r14 >         .cfi_endproc > > $ ojbdump --sframe test_fpra_without-alh.o > ... >   Function Index : > >     func idx [0]: pc = 0x0, size = 22 bytes >     STARTPC         CFA       FP        RA >     0000000000000000  sp+160    u         u >     0000000000000006  sp+160    c-72      c-48 >     0000000000000014  sp+160    u         u > > $ objdump --sframe test_fpra_with_alh.o > ... >   Function Index : > >     func idx [0]: pc = 0x0, size = 22 bytes >     STARTPC         CFA       FP        RA >     0000000000000000  sp+160    u         u >     0000000000000006  sp+160    u         c-72 >     0000000000000006  sp+160    c-72      c-48 >     0000000000000014  sp+160    u         c-72 >     0000000000000014  sp+160    u         u > > Note that the outputs of "objdump -Wf" and "objdump -WF" are identical > in both cases (with and without option "-alh"). > > Debugging of the SFrame processing of the DWARF CFI instructions shows > that with option "-a" there are additional DW_CFA_advance_loc: > > DW_CFA_def_cfa: reg=15 offset=160 > DW_CFA_advance_loc: lab1=L0, lab2=L0 > DW_CFA_offset: reg=11 offset=-72 > DW_CFA_advance_loc: lab1=L0, lab2=L0   <-- only with -a > DW_CFA_offset: reg=14 offset=-48 > DW_CFA_advance_loc: lab1=L0, lab2=L0 > DW_CFA_restore: reg=14 > DW_CFA_advance_loc: lab1=L0, lab2=L0   <-- only with -a > DW_CFA_restore: reg=11 > > Debugging of the CFI directive processing in gas/dw2gencfi.c shows the > following: > > - With option "-a" cfi_add_advance_loc() is invoked more often in > dot_cfi() due to the condition (symbol_get_frag > (frchain_now->frch_cfi_data->last_address) != frag_now) evaluating to true. > > - output_cfi_insn() of case DW_CFA_advance_loc enters the condition > (symbol_get_frag (to) == symbol_get_frag (from)) without option "-a" and > enters the else condition with option "-a". The else path has an > interesting comment that suggests that there is logic to relax an > advance by zero at a later stage: > > "... Call frag_grow with the sum of room needed by frag_more and > frag_var to preallocate space ensuring that the DW_CFA_advance_loc4 is > in the fixed part of the rs_cfa frag, so that the relax machinery can > remove the advance_loc should it advance by zero." > > I don't have a clue how to resolve this potential issue in the SFrame > generation. I could not figure out how to detect the advance of zero in > the SFrame processing of DW_CFA_advance_loc, so that it could be treated > special. > I can open a ticket in the Sourceware Bugzilla, if you agree that this > is an issue. > Hi Jens, Confirming that its reproducible and that this is an issue in the existing implementation. Please go ahead and create a bugzilla. Thanks