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 0E760384640E for ; Thu, 25 Apr 2024 07:58:15 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 0E760384640E 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 0E760384640E 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=1714031897; cv=pass; b=jV8APPMNMT6urgC1Jb9DkyzqJeHwVEsm8X2JRU5Q0CAkZNrCdxIqV+QvLdDDHE9+kllg6ebVWLIkErfp2MC82CAoVx5LGYGYjaz9eh5zDFSakQuZ7+LqxU8y3P2ru4a21lWqvvHVflZv8SIE1T6Z8CP1oPcG40Hm8LDnFV2bLGk= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1714031897; c=relaxed/simple; bh=lwIH0/jUYnT17Muqh5aB+nL3TSnn+c0xdWyDm8vEMo0=; h=DKIM-Signature:DKIM-Signature:Message-ID:Date:Subject:To:From: MIME-Version; b=cV/luNUe525TZQYwmETlBeoi+AX21XONO8qDrfdt1LI3cNrQXK/4Io5i4WFTheFHPlKW6Is1p2SwK7wvmHeLF8brZOmbDkkFBAItNFqMh1E5AzFL8flbiT30VLd0dp3iDAFJjdFsvY3gTQgCfKGXa3u734Lr8XRWxCvyAoZbcYE= ARC-Authentication-Results: i=2; server2.sourceware.org Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 43P0iMqc006340; Thu, 25 Apr 2024 07:58:14 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=Bzp47sdeZd2oK4TFM+S+t7JoUOMeQ2QJldTy++tGZP0=; b=gFwJJukBPTliJJLE1a6a5jOWq59BpLZgpkTSKctRJE3k+u29W071HDi7qJogvOvBc4bk pAJlIyjCI1/TqXh84ip/XV43jeCwlYSMGx5QxMijssbFWqlmMNntwdDpscgT2jwqrTca I0zw6cuuffKbRQBEgKNCTiMQVCAK/I+wKxsPAbZfZpnt9Vt4awsr2SSHWPeXjp9c/tSA 3ASLGZyC8j8N23fDfCrCtj4Ojq7gR0xjechFOVkEC9nV66Cgk4bGX4i02AVQA0Ybu+gH e7I5bAlTsvfeHYQdyFAzsc6D3ZyQMmju3/z7gYpOqDmWwFJ87Z35YUFJpWRYjAFBFjlo Hg== Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3xm4a2jn1h-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 25 Apr 2024 07:58:14 +0000 Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 43P6m9uK030797; Thu, 25 Apr 2024 07:58:13 GMT Received: from nam10-mw2-obe.outbound.protection.outlook.com (mail-mw2nam10lp2100.outbound.protection.outlook.com [104.47.55.100]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3xm45a0s19-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 25 Apr 2024 07:58:13 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=OHJx2pGt4NF2L3zgqajvGucvzBgLp8eQm9Z9vHBnijAhmHrIDNS0a65yi054NDQhTJ8t0SqzmMESIZzrxtA/G/NzSMCvYfQH2CQgJ+WFC4ff3ClDD9EIaK8YuF+hUdVEju4t54lPdAcm3GrmT67gpJHaTnEQgjoT/pPvfE3iLseSrbevXFJSQmXLQ5b5B8hcvQc6TGSPOjMRUfnULViwlJhcMEM8V5cy587ZF9VrcRNVdMn8sCb+XvUVW02PKMdao+GaA2hYkY/ESB9G9s3M5GFlcAFMu7Btf4kQ4T94SITTD4ed5/8xeDOBYotLTK+N9nx2Mah8cFL47hVl4e/QVg== 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=Bzp47sdeZd2oK4TFM+S+t7JoUOMeQ2QJldTy++tGZP0=; b=UAyisl1xYF1HCqnc5QYLjxk5Q4Jad2UPzoNHE0f9Ak73bBiNIWAiolPfyw4YRfCA8JwimsiRhYZeChtRC7a5R3Q5yCNtLRHRjKspKadv0Kk8J9oTNzsgGxA7ZWShOK1JzI6UGkH8Y30jt1K8+7yOFrzyRnhIdkhn+YEon2hDtU3tQM2xCFD/hHE7PYXRec64IZdvtTAnSmNcK73uYhtaC6UWmuY7aXdlMNE3MowIeRMeYLxZq4vkZftKSzV3YEXSvjPTMAgI7TGGzVlHLSzAHMll7FkRC9vfk4dmj2kViUDIsKZYv9VraQY6dVg49eLzp5vONoeMkxrvXRSuWCJ9vg== 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=Bzp47sdeZd2oK4TFM+S+t7JoUOMeQ2QJldTy++tGZP0=; b=MSJGXP1EjKgidrS0goQysEW5loudX0SRurJDbsmOu5WVXqLpWxniH9bceTshXSdJXmqI+ETka8yNUJPW/yFGm/QPkz4VVoOMLvaiqn4wf4USM6ALUp8661YNBFCURAVrSo1wXpZRThlYrqMhzy/17pFQFkCYv77afu1uQnXqHgU= Received: from MWHPR1001MB2158.namprd10.prod.outlook.com (2603:10b6:301:2d::17) by CH2PR10MB4181.namprd10.prod.outlook.com (2603:10b6:610:ac::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7472.44; Thu, 25 Apr 2024 07:58:11 +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.7519.023; Thu, 25 Apr 2024 07:58:11 +0000 Message-ID: <10976e41-da59-444c-8b6b-8d25b3f77ec0@oracle.com> Date: Thu, 25 Apr 2024 00:58:09 -0700 User-Agent: Mozilla Thunderbird Subject: Re: [RFC PATCH 0/1] sframe: Represent FP without RA on stack (bitmap) Content-Language: en-US To: Jens Remus , binutils@sourceware.org Cc: Andreas Krebbel References: <20240422155905.2497883-1-jremus@linux.ibm.com> <0996b8e3-9fe3-4381-b34c-df9ef3798d67@oracle.com> <8341b2fd-2890-4fc6-a4ea-8892be2b6ac5@linux.ibm.com> From: Indu Bhagat In-Reply-To: <8341b2fd-2890-4fc6-a4ea-8892be2b6ac5@linux.ibm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: MW4PR03CA0094.namprd03.prod.outlook.com (2603:10b6:303:b7::9) To MWHPR1001MB2158.namprd10.prod.outlook.com (2603:10b6:301:2d::17) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MWHPR1001MB2158:EE_|CH2PR10MB4181:EE_ X-MS-Office365-Filtering-Correlation-Id: d9f2ded9-0c6e-41a7-3c84-08dc64fd73b8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: =?utf-8?B?aW0yVVZVRlM1QnRtYkt2SHNyZDEyOVAzVzN5V1JWU1dmSDVIMXFHRnVtcml5?= =?utf-8?B?VVNVYTRkd2FvOUNIajc2dWhLMGl1N21CckNPTGk4dHB4VXBWaU81Y1d4T3Qz?= =?utf-8?B?emNQeFVRbDcwRTl6ZDBhL29KNExFTG90RWxDb21jclVnMmxqbTd6cENYQ2pw?= =?utf-8?B?YmxYNk53aEsvWkFNdXhJOXB5amJSa3gvRGV1UllVZVk5dkJYNFpEUE5yTFVX?= =?utf-8?B?d1greUNqRkhOc3VTOXFTVDFXcU5MSk1jUnpuYkN5MVoyVzJ4dDdwMUhuNWl5?= =?utf-8?B?MnlLaFRaVDJlcGtlSEpSWFEycGtOQWNhQW5rc3AwVllQbFkyR296dW9ndG9v?= =?utf-8?B?TWFEK0Z2ekprT2k4UWViRjBxUS9iYTZ5Y0VSZFp1ZHRXajdMR0tFaUNPRjhU?= =?utf-8?B?V3MzT2lBemxRVmZoVGNicTlvUVZBNkFSNnpkbC96RFNqRFhGU080ZEJuMXEx?= =?utf-8?B?SFpDdUNQMWJXSDd4TXVnVTJEd1QwbnVRbjRTQmlrWWRCNmtSSnJDWmQyRmlC?= =?utf-8?B?K1VoNGs0Q09pU2w1SzJEdG4rREg0TTl6QURtRGtVNUdCbllXbmhHN2hQMzQz?= =?utf-8?B?dmRHcUZqVEp4N2I1bVRkYjZmaXpXZDBidXk1YkVXdG9uWDViZFVJaEpYb2Jr?= =?utf-8?B?RlFpdkNDRlMwVm9ZY29GeGR1cW42MFd2QjdUS1oxS0h2MnJscE1kVmFoL240?= =?utf-8?B?M1NKdEE0Y2gva0ZRRDlKRFdvZUluNUE0UlAyVHhqUHJ6Q1MrZUVTZWlScmxx?= =?utf-8?B?SnJ5ZTlybktCc3dBOVFIVXVOMUpkTHlqYi9NQnRFYitSVVlCZS9LVGE2NUZZ?= =?utf-8?B?c1B0dWZlamtZdXcvYkN3SlRhdC91L21DNTllZFNEQ25oVkdZRU5vYzNuTity?= =?utf-8?B?aG9DZ1ZWWEhEM1FwQVlPU20vZEJHK1BrQ3dsT3NGdFZnS0dSZE16RWJZR0dw?= =?utf-8?B?WDkvTW0zTzRVRkQ3YzdtQVZ3ZmNDN0lnU3NkM21jYlJTQ3JMazF5VDF1bXAz?= =?utf-8?B?UTZ0MHh5RkJUcVpBT0hPb2hIaDVibjI3UU1YbjRmV2Y2S2k3eEVrWkxuTEE4?= =?utf-8?B?T1RiNHQrSVJjNkR4SnUwZzgrNlI3RVMrOVBSeXNrNm5jUGpvdkc1K01WR00x?= =?utf-8?B?NDA3RHFyQzhtZmppNFFmODVJL2R0VWloQ1NjVTltcGIzcVJWVkFKblNhQjJJ?= =?utf-8?B?a1g4WERBOWVGbFEwcUJvc0VGUmJ0UkExVXhDeTAxQnRzYS9GdzdUQzdXZzda?= =?utf-8?B?eUtINEVnMUdhZ1EySDBodXIyRzBMdFY0SDJiRFBLRmZRREhUWTBsTVcvdTUz?= =?utf-8?B?a2JDOExtNG13OHBCWFpKZUdndWUwK0NkbGVIKzIzRExlRExTaTVEbTNoOXVV?= =?utf-8?B?c1VncFFOTVRoWEg4dmhUNTlCS1dtTXdxRUppMXU5SllWMTcrWUtMN1FDUUhV?= =?utf-8?B?SjBsZVRJZlMrUnNHNlNpR0ovZi9hTXEzQktHamQzMWsrU0hqWXVjaTlWTmNK?= =?utf-8?B?YXRlZ002M3hyTnp3MXZnNFpLUldKUU56UWs4TnhPZDEyZERWaHowZmhRZ1VV?= =?utf-8?B?QXpIeVl6UlNTeE83bFFXOWpoeG1reXdTY3B4SnYrdVZNWUdUcjRUOUw4b01F?= =?utf-8?B?b283azNzY2ZGU1RLaVJ6RW9jMWlCR0djcnNvdGdnMVBPeW1rZlI5Y3ZxRmF0?= =?utf-8?B?NXVKSXNPZ0Y3OHlYMlFIakU5U2t1NmhSOC9rbktDS0s2YXNMK1p2WEhnPT0=?= 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)(366007)(1800799015)(376005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cWRjZjByeXNDbDVMbDI2ek50cVVKMlh0TmxqNG5QZzhGb2F6NXBOd1NXSXdH?= =?utf-8?B?KzBzYWN6R3p1aUJJNzBPZ1RvMFVUanFyUllCMVp2Z0gzejdRREVaWENWRVNC?= =?utf-8?B?Z05WWGxBdVlUVWZWaFQ1eGdJMHRFNlZmNlhQMzZQbjVqMnBSRmNMUkVUSDVI?= =?utf-8?B?cmV2TFJLN3Vkbi9UNmUydWcrZ25aNUozWk42aEU4LzU2RTFKNVdSSTFWRUpM?= =?utf-8?B?L1F4aXV5MGVyazB3Q3hSWlpmdlBoWnlGVkZmWEt3UlplNWhsaDNvUFF3THVV?= =?utf-8?B?d1hONlhWYm9LeDhTUTFUQ0xYWkVkc09qUlpZMTZyeFBnRnh3OEpaclhZM3R2?= =?utf-8?B?RjA2MEpBdDlxYzRuN3JkQmFNWEZGWjZoMFdseGxSb0U2L0ZUU041UjdCK29I?= =?utf-8?B?a0d2akR3MWRqMGxZSkRIMVNwQjBXcFpOWWovMUt1c0FqREpGWUF0alhCSlRz?= =?utf-8?B?TElsTTIwelhINmlMQWRSNjdQSVpPTzNObDdsYUFpMzVDZytINTgyVnFTTEhs?= =?utf-8?B?NzdJejBKbHRzakdQeVEzMUgxZGV0UFpZT3lSWW0wOGk2TEYzMkZ4VkRFcURj?= =?utf-8?B?SlFTS2hnWkMvdnF6MzNmRmN6eWNheWlGRC9uRjR6aVZWM2JIMXVsVEJlN3Ba?= =?utf-8?B?THpwVjYwaUxIcG5wTWQ5WEVESjZqb0hXZk15QnVvRkhZby9QSWFVVHN6Tjgz?= =?utf-8?B?cEovYjBpeC84QkNnRjZvblNEUkNEZlQyVTlIOU9MT0NlTHVGSHk3dU92bTJk?= =?utf-8?B?V203Uy9FeEVBNkVudXBnaW11ekR6eDh6U2FmcnMvK1FzNWQ0cExDZXpmd3d2?= =?utf-8?B?dmJaS2ZoV1ZuS2dYcEFwWjJQU3pOeHg5d21QV0ZjeVVXV3JiNktZUVJZd3V4?= =?utf-8?B?VFRmZm9Mc0VtM0d4TGtsTXpsNTJYcThESi9uTFA2QW9tUXRJSWlOZE1XZVU2?= =?utf-8?B?cjRqeWFMSWs3OWdzS0I1ZnczUmlTZ0VtOWU4alBWdVpoYTdYZnk0aHowbzZI?= =?utf-8?B?NTEvRG1FNzFvaHJGOThCQmJiVVIvc3VPUzE5dmRWcFVhMDBFTmtkc3JDT2Uv?= =?utf-8?B?NEpXUTR3VTZYSjRjNkY2OTdEZHJFcUFBTGJPNXp2Zk00U2xVbkVTN2liQldM?= =?utf-8?B?dTNpUjRlUzd2U1crZkhXZXhzTTE0SzhrQ3Q5UDdqdjRNelJGSDRRSTlRRjZN?= =?utf-8?B?R1FRVVZyK3NhenEraUdJWWxWMFZXcEZtK1BDQUFzU2NYdmtROHl3N0tnaWtz?= =?utf-8?B?dUFSN0grTHZzbVJkcTdnY01zNTJCRXpaZHhoYmp6SU1yUDA0UEtxOE9iOXNO?= =?utf-8?B?aUpZb3l5Q2JYd0hCNnNqYVl6dlo4ZURTelJ6b2ZwOGxTVXNsUkwyR01JRU9a?= =?utf-8?B?UGpaRkhXcEgwTlZQL1BWZ0RkMGFTSkFjdFZRdUltTnROK1BVTE9ZNk1mYmhD?= =?utf-8?B?eUY0SUZsSHlzeEFjL2V6dkhTNEJDVmIwVWQvNkVhcUwvbnplYVZLV2lRUWlU?= =?utf-8?B?SEJ5THNWbnJjVlBIOFBXU0txZEl0Uk94cTJKNVVGb3l6YkpoT3Jab2YxM3Fi?= =?utf-8?B?Ui8zaFlDTVJDMFJIL1VXSmoxRXBjWDdxYytUZnBYckJOU052VVZhZTljWTNP?= =?utf-8?B?OXJnRk9mTDBBT2ZraGU4dEpHRGpHbmdFUzhFbXdHb3hrbjFOYlRYNFZUSDJT?= =?utf-8?B?RG85RlFXTWtQV1FibzZhU2pmTFl1OWVGMzAxSk04Qk9uMkV1Sk1QaFowdS90?= =?utf-8?B?V0VSdWordG91ZE1mMlVGRzRHbk1nZHBKZUFIeDFWYWlUZzViN28wTXFlNElz?= =?utf-8?B?NmUyWDRTd3hUbXNFTCtLZ25hV3NpUEM5VlpoSnlBVVlPN080WmhYcFVBT2s0?= =?utf-8?B?VGFWRDY0aWJwbXhsNGIxT1VlZDl3aTFHbkRmb0ZmS041WWVnZktPZGJ0cnBU?= =?utf-8?B?aTdMR3FaTG1OSjhLYVZkeVJHUlJaT2JocVRIOVl1OXEwNml1bll4TWFlbDFa?= =?utf-8?B?aWRld1NSWGxHZVRMdXAvM1NwMDFXbFgwS0ZzRDM5TXYrVmNNeFlVejBIWkdN?= =?utf-8?B?OVFMT1UvTzNPRUV5ZUtkVzdkMGdub29WLzZXN3F5MmVLQlFCbC9WOXhSN1Zn?= =?utf-8?B?ZGxQNWlaeDlmd2RISSsrNHAvQXNybm5meGx6cUVYVHJYM1dsVE9vckcraGQz?= =?utf-8?Q?ROQO4OVgrJ3gJ1qCPBgb3fY=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: E3iSHzKRV/u5Dds/jrCjH6EAY+6LyAhDGh2CgTx9Xuoj8cWADz8keqI17EhMhu5M4tS72HO8G6GbiMIqDJssEBLfQhf1f0/jUQOiOo9sCUjlw6+SqgBv4nEzV6JE2f/TuISQdfCrUXboLVrnzngHNvqkTCRe6gsDJCfak6wrwrUOoBcn18TFsrABbqh3hHS9Sp1Y/GY6AqQ2moPgsEpL0whK9uvkOh9XSdoYXf7LrMjkW/z1paqGKoVDNgyH4fQvpl5pdmqcBIGqBJEGtzb83ePO8ndWowyRVoZKPIJNfLNCwBOqO4+cSulG/JWaaJ5HhK22BBfz2Lrn+3JFGe6loPyLXGt91q3+MQ01K6mAGg8qBykJ6KDdK4fC8NU0pR8kKuk3bxENoRkon0WmHehXdl2sCgdifimZaPh3nZvOLEBMa2/c5lOWeYbhorF8S7dgeJ71yt8q6k5LnZF7sJzcUGhjVqMXsd0wFB9A5ZbjG4lA8A6VV3xMCjbDAu839UF7iDD0TRnKgG0lGQWo5GEQKGQf0dH2HtJzTlOqBB3a3SmVMgy5AdQ1hnV2dsiiZu4+vRcpPG4uVbe1tt4tqJ9HJEG9AzIvq0PAjF2qSjLPPdA= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: d9f2ded9-0c6e-41a7-3c84-08dc64fd73b8 X-MS-Exchange-CrossTenant-AuthSource: MWHPR1001MB2158.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Apr 2024 07:58:11.1499 (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: WFcWObkJUHTrz/hpV9cGqdWEisIvkxiKilOelPFhPLaOQMUAFIJDDy4K2UWW2TTbCuHEeCo2LWdAi7Hdtwr7sw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR10MB4181 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1011,Hydra:6.0.650,FMLib:17.11.176.26 definitions=2024-04-25_06,2024-04-25_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 suspectscore=0 mlxscore=0 mlxlogscore=781 bulkscore=0 malwarescore=0 spamscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2404010000 definitions=main-2404250055 X-Proofpoint-GUID: nKpkXLgkzQU99167Pgwd5X3PWrMgdjU3 X-Proofpoint-ORIG-GUID: nKpkXLgkzQU99167Pgwd5X3PWrMgdjU3 X-Spam-Status: No, score=-6.7 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,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/23/24 02:54, Jens Remus wrote: > Am 23.04.2024 um 01:59 schrieb Indu Bhagat: >> On 4/22/24 08:59, Jens Remus wrote: >>> This patch series adds support in SFrame to represent the frame pointer >>> (FP) without the return address (RA) being saved on the stack (and/or on >>> s390x in another register). >>> >>> This is the second of two proposed alternatives: >>> 1. The alternative patch series uses a dummy padding offset (invalid >>>     offset from CFA value of zero) as RA offset to represent FP without >>>     RA on saved on the stack. >>> 2. This patch series changes the SFrame FRE count field into >>>     a bitmap, to convey which offsets follow the FRE. >>> >>> Note that it currently applies on top of my v3 patch series series that >>> adds initial support to generate .sframe from CFI directives on s390x, >>> although it is independent of that. >>> >>> A SFrame FRE currently has a 4-bit field containing the offset count >>> that follow the FRE. While this could account for up to 15 offsets (or >>> 16, when excluding the mandatory CFA offset from CFA base register), it >>> cannot represent which of these offsets actually follow. >>> >>> Redefining the 4-bit count field into a 4-bit offset bitmap allows to >>> track up to 4 offsets (or 5, when excluding the mandatory CFA offset >>> from CFA base register). >>> >> >> This approach, in its current form, immensely confines the future >> adaptability of the format. >> >> My recommendation would be to avoid such changes to format where is >> becomes more restrictive for future needs.  While it is generally >> recommended to not add more registers to track, confining it now to 4 >> (or 5) offsets now seems rather limiting. > > Isn't it rather confining that using a simple offset count cannot > represent which of the tracked offsets follow a FRE, which effectively > enforces a precedence in which they can be tracked? I just wonder > whether it is really that useful to theoretically be able to track 15 > (or 16) offsets with this limitation instead of just 3 (or 4) without > any limitations. The number of bits could also be increased in a future > SFrame version with a different FRE layout. > While you do have a point, changing the 4-bits which are used to indicate "number of offsets" to "bitmap of offsets" does limit the flexibility of the format to support other architectures/ABIs in future. We sort of envisioned that this array of stack offsets (a.k.a FRE offsets) can even be interpreted differently by each arch/ABI: For AMD64: offset1 = CFA offset offset2 if present = FP offset For aarch64: offset1 = CFA offset offset2 if present is RA offset offset3 if present is FP offset This works for aarch64, because Frame record (if created) saves both FP and LR on stack. For s390: The stack tracer may interpret offsets as needed. You may even store some metadata in one of the offsets: offset1 = CFA offset offset2 = metadata (= read next as FP) offset3 = FP offset offset1 = CFA offset offset2 = metadata (= read next as RA) offset3 = RA offset offset1 = CFA offset offset2 = metadata (= read next as FP, RA) offset3 = FP offset offset4 = RA offset offset1 = CFA offset offset2 = metadata (= read next as registers) offset3 = RA register number offset4 = FP register number etc. Your solution with padding to resolve the issue of "FP without RA" (and storing register number for leaf functions) in the FRE offset is what this is in spirit. It is useful for flexibility as you see. > I don't have enough knowledge of other architectures to judge, whether > the s390x case of an architecture using both FP and RA tracking while > not always saving both at once or restoring them individually is really > exotic or might be more widespread. > > I would understand if changing SFrame V2 to a bitmap is too much of a > change and would need to wait until the next version. Using the dummy > padding offsets in V2 (on s390x) in the meantime, which are just a minor > change, would be a good compromise. > Format bump if needed should be done. My main concern about the bitmap solution is the loss of flexibility. Its hard to predict the future needs, so it makes sense to not lose flexibility for adaptation. >> I have two suggestions to resolve this issue of "FP without RA on >> stack".  I will reply on the other thread. > > Thanks a lot for your feedback! I will follow up there. > >>> The main downside of this approach is that this is potentially a major >>> change to the SFrame V2 format, which may require a bump to V3. The >>> benefits are that (1) it does not add any dummy padding offsets, which >>> would unnecessarily add bloat to the SFrame information, and that (2) >>> it does not change any of the external SFrame API. >>> Using a lookup table the bitmap can easily be translated into an offset >>> count. Similar any logic that checks the presence of an offset can >>> easily be implemented using a bit test. >>> >>> Note that there is a minor implementation issue with regards to the >>> internal API methods (callbacks), due to the change in SFrame format >>> changing a method argument from count to bitmap. >>> Additionally this initial implementation lacks better naming of the >>> tracked register IDs and any update of the SFrame format specification. >>> >>> Thanks and regards, >>> Jens >>> >>> >>> Jens Remus (1): >>>    sframe: Represent FP without RA on stack >>> >>>   gas/gen-sframe.c   | 66 ++++++++++++++++++++++++++++------------------ >>>   include/sframe.h   | 13 ++++++--- >>>   libsframe/sframe.c | 51 +++++++++++++++++++++++++++-------- >>>   3 files changed, 90 insertions(+), 40 deletions(-) >>> >> > > Regards, > Jens