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 6534C3858D32 for ; Mon, 17 Oct 2022 22:16:38 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 6534C3858D32 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=oracle.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 29HLmrud024538; Mon, 17 Oct 2022 22:16:30 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : content-transfer-encoding : content-type : mime-version; s=corp-2022-7-12; bh=zwH+c3rqsFY5s+KjlUfIggheugcHypTkafCErfr5DV4=; b=Gjm5BsZR6jJe3T9ImaoUW2eaNt9C68wGGQ66MScLB+Xht52YmmjRGIWhp8OCqVmG4oQY 24mO2MkqemeqKlZDtr+vnh72vJ/o1lQGx5xUXKm3UFohBb+Qb+QzvpquJeeJZBBsooMy eHQETKOnswzb2TGB46/4VM76pOvHcJ07pkT9NuT0MCpBYaPFx732BJvdYkmB7LY9AU0d 3kCXpBEv3ecJQOO8sn/LBhAeFCrAQ4Ysz1yADVd0UJwS2pL6IkYJRHXF3QNh0x12SgUk kyazSXVgHwRRGpdRByTr0dSAfWiJy/ccwWIZF9Sa79+Bb8m0lu3CfCWCPm1vkbzwzOLe Bg== Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3k9aww0sbu-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 17 Oct 2022 22:16:29 +0000 Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.5/8.17.1.5) with ESMTP id 29HL37bg015963; Mon, 17 Oct 2022 22:16:28 GMT Received: from nam02-dm3-obe.outbound.protection.outlook.com (mail-dm3nam02lp2047.outbound.protection.outlook.com [104.47.56.47]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3k8hqy0wkq-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 17 Oct 2022 22:16:28 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jCAIA4xooOn7LtJz6fmVHYaofyBqFi+u/jlOIYEnRGULRYj3Sf3AKDFBaNc9Rr+uc60fxeZQoSp9Xn7aAx/7dcczsB06COzLmya3FA99VtuM3xiSh1FX7kqIQ/8UQUEmCqkCk+2ambItFez9vmWL3YJzYqkWrpnTGvmRb+GNkd8NL5NrpCkVNTBwRuZH5nSMOZHlI+hLo740NUHmRdXa6gMMl9qGCGx4OeqdnX0abfg96jgL5G3qe2B1PuUcUfP5kts6LqPhVJNxkTl0B/oIRSc4zn/uyS25bf1lfZ6XGc3KhvLiE6WtBu/fhtg/NtItE3ALHKXlHcx4ii42XBe27A== 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=zwH+c3rqsFY5s+KjlUfIggheugcHypTkafCErfr5DV4=; b=M0reI7cyzHBIFfdwb39a2y92eW0NnRPZB+6a8qrNTtariNgGZKvENJOxPXeBD4SQnTzTfVci1fhyKz4/q1ylIb3cyZrRUQC66egbDR7nM79yEiwWHCAUjqKfb1xtCz/wzt7kYWfRguohZHuiFkHoNS4sjRPN2eUamjcNpeC73513GeIixBiEufw7oz237VqQNMYsS0i+vc5kVuNdq5uyMUe3/aT93ycQhfLFDy/0/I+si0TbCRVTuVnghiDqVTuqsCSr9tmygnqtGqQdsY2IK40AxkPOK/6DI5GqwLzJbEc0NpTsPSTn1VIZ9HLvUNMTJF/PgRZGpPK65vwuck7wfw== 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=zwH+c3rqsFY5s+KjlUfIggheugcHypTkafCErfr5DV4=; b=I8U057sN4IVH5Y+u1NXRFZhFNMD1mp6E3FizsI66pePs3dINhFlKMDJcpV+1GQDL5svwJNA4on3ZOlxH5FBoPuVv/L6RAEoCt11ELl8OJEfzxK48POvmMNpMT2o4u58qi1GRzmHfNpADXcH5jA3gx8dyMkxNP1DNNSsIGquPZpw= Received: from BN6PR1001MB2147.namprd10.prod.outlook.com (2603:10b6:405:2e::26) by SA2PR10MB4714.namprd10.prod.outlook.com (2603:10b6:806:111::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.29; Mon, 17 Oct 2022 22:16:25 +0000 Received: from BN6PR1001MB2147.namprd10.prod.outlook.com ([fe80::c713:91f4:e197:acd2]) by BN6PR1001MB2147.namprd10.prod.outlook.com ([fe80::c713:91f4:e197:acd2%5]) with mapi id 15.20.5709.028; Mon, 17 Oct 2022 22:16:25 +0000 From: Indu Bhagat To: binutils@sourceware.org Cc: nickc@redhat.com, Indu Bhagat Subject: [PATCH,V2 00/15] Definition and support for SFrame unwind format Date: Mon, 17 Oct 2022 15:15:57 -0700 Message-Id: <20221017221612.495324-1-indu.bhagat@oracle.com> X-Mailer: git-send-email 2.37.2 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: MW4PR03CA0203.namprd03.prod.outlook.com (2603:10b6:303:b8::28) To BN6PR1001MB2147.namprd10.prod.outlook.com (2603:10b6:405:2e::26) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN6PR1001MB2147:EE_|SA2PR10MB4714:EE_ X-MS-Office365-Filtering-Correlation-Id: ba91dfea-f072-4e42-6194-08dab08d3b39 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: VzmPVloxi8pjDLd3BXVVX08hyIxnGIH/+2xt8/yeVSR9TgrTHMpg9ovrXzGN63ABv0Ld19vqaK1D6yQ4GgCfLBtnW4Fqdf/2902pGh5lKcqf+ga/f7WLeQKfYN9Gre1/f1yVIId/pdzoX6WekutBuNUif0+GIaQYOPe/MIcaCqI9FNSSJqm2ZTDUoSR8Vgb3MmSJNg633GE2A65/O47cEJLf19WIZKukLktoDj3IUVNwPj4VcIxQr0tG8WMTeoKnK/xHv+fh9xY+9w/KsXRF7CrMCvnXf69JR7IFv6x1gYnNhbsNntgpCBDbllAu6UguRFSnboOUj2oL5FGqWLaQScVvTR4RhoNSeAufokASHnm75AIB9YrLWTldm2FnLEkBWQvez95LfzON/vzomCZIWioMG7XFzG4rhuPB4ddx8fCaq/4/7X5ak6MdIGIvESSfZAMu1dyY1o+hvQ85yWAxLW9wF5U3uOUDAMyCK6hah4XpooXwTHCsOen599/kLUAf6T2F4ztDs/xXkHcfbfm3OnwaLr8/oCkQ1Y8UMMOWjqpOY/AlclzZnqivqm8SXTmbuSQt4L4MYAAG5EpkrjUmyv3EAnnhjxUod3mE6pvFT7xkGRtsW3UNQJkFcIK/z0LaMSd/+tES6wHRVrm65DLtsqdcket7ecy8H8jMJXOmRhwzGn/7xCPlBmgEsk6ClLGkiIs3ZLWC6pnSg8qNq1WJViPpSn9rnjDUqbjrzz6MWsQ= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN6PR1001MB2147.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(396003)(136003)(366004)(376002)(39860400002)(346002)(451199015)(6512007)(478600001)(2616005)(107886003)(6666004)(6506007)(83380400001)(1076003)(186003)(2906002)(30864003)(5660300002)(44832011)(6916009)(316002)(966005)(6486002)(8936002)(41300700001)(4326008)(66476007)(8676002)(66556008)(66946007)(86362001)(36756003)(38100700002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?gqujSvZpxhxXhr931eHed4NNOxj7x8sOqqQ4O70t8jRKUxe5gHgtlKXgwEXt?= =?us-ascii?Q?cSkFmv5rk27ElQCK1+UuMXxuburJE89PWfIAYtM+YEWZP5OxwvUOmxSoXL/C?= =?us-ascii?Q?21iUTSS9/2EC5WOuqWpz2toE74z6yQNRj+H5Ftuzux6r22U/U6XL/LKd2afF?= =?us-ascii?Q?6IEax7qgo7cou/Rj+7w71Jq8YhtMhproRFcrTv9dRLEoKFiNVlscz02izEKn?= =?us-ascii?Q?ESeq/zCaC+dwXCJxLTPVid5YCxDC7oXgeLSI4OiGQ/VXf8N4JWV/34o+Weuh?= =?us-ascii?Q?lrFRmb737wSx5SDsGqHy2wxcUjy32my8cORosCq6KlVlV/bv/5d/5yHVWgUv?= =?us-ascii?Q?ZSzAP/At3Y0mf+J9x8rj1JcVf9OGcpni302adeRkyMzYpeguRpbUilWbLaw3?= =?us-ascii?Q?l9Y+F0fAGfxPHqHMymy/gfuQznQRhujWd++qz/IJA6ppsB3e8XlYzJ0pax0q?= =?us-ascii?Q?evKj1JZn/eogWQUFUTq9WlXEQC4DYC9CdXChZ8GbywN/qYeUNdY0ArE7tCOR?= =?us-ascii?Q?70ru4fNXt3+HuYYD/vXTt3ixyCNzR+6Z43/HeWi60U0kjMm1YewUBCKKiKp9?= =?us-ascii?Q?Yak5XPf+qlUk3Kjkketvs2ib0CxAqYCoIGvrHfkErs44YbonIq67vixRDR8t?= =?us-ascii?Q?v+42867nNyzxpYNbMbGpmbQaIMAPBuTKjh6c9m8Ngbj+zOiQqOHJuvCFrVp0?= =?us-ascii?Q?/AGNINyQRH2uPY9SyvYDUh6vQVQIdiE7xA4jk0qmeaoMhOKjX3qt5ijanW7R?= =?us-ascii?Q?4+/oluTWsTvl4swtMFfKPatZC76L0PLbr9bVJL9/xbhhLmRvYl/7//yBTkRD?= =?us-ascii?Q?acaBpAR5uK7eCWMSNBfg+ucrhT8Kybp+9rkeGwnussUYPBNJ9EATmwjLhGHc?= =?us-ascii?Q?MetmLDyO4Nqi3hXOYpiPxHNeDIwfGkIEKmCvN65+llJvr/3ncDRMCfVxTMtY?= =?us-ascii?Q?wQwZGEl4Cbi57KtYe6RY+tgQZVc8667cJl+TIo4CtLp+Cr2wEqRXfajerL8V?= =?us-ascii?Q?CBkiwWhZ5VKXmDJmd8sv45UTkFsIQIjPzAEW2HkU3aDgUTQsL1i5mQzi/yO8?= =?us-ascii?Q?twrooU4i+E/afCJ7Ghp2MCZU2hqaMWMxGgknt3vs1nhKKAPCNGq32DhjhJZx?= =?us-ascii?Q?IwJdivpzdm209QQk5b8s9KqCc/RNA1YipPJNo1QsfCv7p1E/3+Y/lpbuySQH?= =?us-ascii?Q?q5lG5PKEKAaCExIq8XbXxTxR/5XlkiliZ1jqNJmABGl38S5DidqQrpri9SzQ?= =?us-ascii?Q?kuwgNihzGgmEv+lTACGbt1df1N8iKvd/nIdkaDmEpevqHaNoD30gizyDf8Cb?= =?us-ascii?Q?NiwWNdOXSsBxIx1/3p7EKF6ymerdXfNnR4ClKVUUEoyi6oYJAXoHEsSGKtW/?= =?us-ascii?Q?juYife32r1HXjJd5/Q2hbPram1+WcY0xoquvw6pSbm82hAGrVq9dtUIWkolU?= =?us-ascii?Q?2KJnRMymtoG1Tzh+ey0vCOYjvuiVzBj9SM62T46uL21mSyblH6V6/FLgzSfS?= =?us-ascii?Q?mjdXB82eMJV/X0ubkxhe9J84WLWcGUPubaDxiBUcGMC6uGqnxbE5hEUn3Wqn?= =?us-ascii?Q?j5JdHm2AfOvlbaIhxbdsqzfYmsAtFBLswCIIqpq8uliBCD3UleyiK2czOVf1?= =?us-ascii?Q?1+jc7Yh0y0ad/SW5RvmwfM4=3D?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: ba91dfea-f072-4e42-6194-08dab08d3b39 X-MS-Exchange-CrossTenant-AuthSource: BN6PR1001MB2147.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Oct 2022 22:16:25.8246 (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: ClUtNCoSOQ482rKTN9Vx1Kn/P5nCc1y3FMwSe39bX8d8Rj8UGVsQcuRmmu1JZfXJgS/dMuGf/XCuXMHGow+rWg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR10MB4714 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.895,Hydra:6.0.545,FMLib:17.11.122.1 definitions=2022-10-17_13,2022-10-17_02,2022-06-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 adultscore=0 bulkscore=0 malwarescore=0 phishscore=0 mlxlogscore=999 spamscore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2209130000 definitions=main-2210170127 X-Proofpoint-GUID: EKDemA3qncKm-vj9edJrqZT3s_Y-XZ93 X-Proofpoint-ORIG-GUID: EKDemA3qncKm-vj9edJrqZT3s_Y-XZ93 X-Spam-Status: No, score=-6.5 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H2,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: Hello, This patch series is the version 2 of the previously sent series https://sourceware.org/pipermail/binutils/2022-September/123165.html. Each patch has brief notes on the respective changes from V1. Here is a combined summary of changes in V2: - SFrame SPEC texi file has been added. - readelf/objdump behaviour wrt --sframe command line option had some reported issues in V1. These are now fixed. Both readelf and objdump, specifying the section name with --gsframe is now optional. - binutils/NEWS now has a mention about the new command line option --gsframe in readelf/objdump. - testsuite improvements - check for dejagnu+gcc compatible pair before running libsframe tests. - other minor code formatting, comments touch ups. PS: libsframe/configure has been REMOVED from the patch series, as it causes the size of some patches to go beyond the allowed limit. Please regenerate libsframe/configure after applying the series. Testing notes: - Tested natively on x86_64-linux, aarch64-linux and i686-linux with '--enable-shared'. - Cross builds for various targets on x86_64 host. Ran a regression script that checks for failures in gas, ld, binutils, libctf with no reported regressions. libsframe tests ran as expected. libsframebt (the backtracer) tests (which are present in libsframe/testsuite/libsframe.unwind) have been disabled with host != target. As next steps, I plan to continue to work on improving the current support in this patch series. I also plan to now take up the following two tasks around aarch64 support: - #1 Generate SFrame information for PLT/veneers in aarch64, and - #2 Look at how to support .cfi_negate_ra_state. It is likely that #2 will need some changes to the SFrame format. Thanks, Indu Bhagat (12): sframe.h: Add SFrame format definition gas: add new command line option --gsframe gas: generate .sframe from CFI directives gas: testsuite: add new tests for SFrame unwind info bfd: linker: merge .sframe sections readelf/objdump: support for SFrame section gdb: sim: buildsystem changes to accommodate libsframe libctf: add libsframe to LDFLAGS and LIBS src-release.sh: Add libsframe binutils/NEWS: add text for SFrame support gas/NEWS: add text about new command line option and SFrame support doc: add SFrame spec file Weimin Pan (3): libsframe: add the SFrame library unwinder: generate backtrace using SFrame format unwinder: Add SFrame unwinder tests Makefile.def | 6 + Makefile.in | 1299 ++++++++++++- bfd/Makefile.am | 6 +- bfd/Makefile.in | 7 +- bfd/bfd-in2.h | 1 + bfd/configure | 2 +- bfd/configure.ac | 2 +- bfd/elf-bfd.h | 54 + bfd/elf-sframe.c | 537 ++++++ bfd/elf.c | 32 + bfd/elf64-x86-64.c | 97 +- bfd/elflink.c | 52 + bfd/elfxx-x86.c | 373 +++- bfd/elfxx-x86.h | 49 + bfd/section.c | 1 + binutils/Makefile.am | 10 +- binutils/Makefile.in | 9 +- binutils/NEWS | 3 + binutils/doc/binutils.texi | 4 + binutils/doc/sframe.options.texi | 10 + binutils/objdump.c | 75 + binutils/readelf.c | 64 + config/dejagnu.m4 | 22 + config/sframe.m4 | 16 + configure | 2 +- configure.ac | 2 +- gas/Makefile.am | 3 + gas/Makefile.in | 22 +- gas/NEWS | 3 + gas/as.c | 10 +- gas/as.h | 13 +- gas/config/tc-aarch64.c | 41 + gas/config/tc-aarch64.h | 29 + gas/config/tc-i386.c | 44 + gas/config/tc-i386.h | 26 + gas/config/tc-xtensa.c | 1 + gas/doc/as.texi | 20 +- gas/dw2gencfi.c | 30 + gas/dw2gencfi.h | 1 + gas/gen-sframe.c | 1306 +++++++++++++ gas/gen-sframe.h | 141 ++ gas/sframe-opt.c | 158 ++ .../gas/cfi-sframe/cfi-sframe-aarch64-1.d | 20 + .../gas/cfi-sframe/cfi-sframe-aarch64-1.s | 61 + .../gas/cfi-sframe/cfi-sframe-common-1.d | 17 + .../gas/cfi-sframe/cfi-sframe-common-1.s | 3 + .../gas/cfi-sframe/cfi-sframe-common-2.d | 17 + .../gas/cfi-sframe/cfi-sframe-common-2.s | 2 + .../gas/cfi-sframe/cfi-sframe-common-3.d | 17 + .../gas/cfi-sframe/cfi-sframe-common-3.s | 4 + .../gas/cfi-sframe/cfi-sframe-common-4.d | 21 + .../gas/cfi-sframe/cfi-sframe-common-4.s | 8 + .../gas/cfi-sframe/cfi-sframe-common-5.d | 21 + .../gas/cfi-sframe/cfi-sframe-common-5.s | 7 + .../gas/cfi-sframe/cfi-sframe-common-6.d | 21 + .../gas/cfi-sframe/cfi-sframe-common-6.s | 7 + .../gas/cfi-sframe/cfi-sframe-common-7.d | 21 + .../gas/cfi-sframe/cfi-sframe-common-7.s | 7 + .../gas/cfi-sframe/cfi-sframe-common-8.d | 20 + .../gas/cfi-sframe/cfi-sframe-common-8.s | 12 + .../gas/cfi-sframe/cfi-sframe-x86_64-1.d | 22 + .../gas/cfi-sframe/cfi-sframe-x86_64-1.s | 30 + gas/testsuite/gas/cfi-sframe/cfi-sframe.exp | 71 + gas/testsuite/gas/cfi-sframe/common-empty-1.d | 14 + gas/testsuite/gas/cfi-sframe/common-empty-1.s | 5 + gas/testsuite/gas/cfi-sframe/common-empty-2.d | 14 + gas/testsuite/gas/cfi-sframe/common-empty-2.s | 8 + gas/testsuite/gas/cfi-sframe/common-empty-3.d | 14 + gas/testsuite/gas/cfi-sframe/common-empty-3.s | 9 + gas/testsuite/gas/cfi-sframe/common-empty-4.d | 14 + gas/testsuite/gas/cfi-sframe/common-empty-4.s | 17 + gas/write.c | 13 + gdb/Makefile.in | 8 +- gdb/acinclude.m4 | 4 +- gdb/configure | 35 +- gdb/configure.ac | 11 + include/elf/common.h | 1 + include/elf/internal.h | 1 + include/sframe-api.h | 222 +++ include/sframe-backtrace-api.h | 57 + include/sframe.h | 289 +++ ld/Makefile.am | 2 + ld/Makefile.in | 2 + ld/configure | 8 +- ld/configure.ac | 3 + ld/ld.texi | 4 +- ld/scripttempl/elf.sc | 2 + ld/testsuite/ld-aarch64/aarch64-elf.exp | 4 + ld/testsuite/ld-aarch64/sframe-bar.s | 7 + ld/testsuite/ld-aarch64/sframe-foo.s | 10 + ld/testsuite/ld-aarch64/sframe-simple-1.d | 26 + ld/testsuite/ld-bootstrap/bootstrap.exp | 8 +- ld/testsuite/ld-sframe/discard.d | 10 + ld/testsuite/ld-sframe/discard.ld | 9 + ld/testsuite/ld-sframe/discard.s | 13 + ld/testsuite/ld-sframe/sframe-empty.d | 10 + ld/testsuite/ld-sframe/sframe-empty.s | 2 + ld/testsuite/ld-sframe/sframe.exp | 47 + ld/testsuite/ld-x86-64/sframe-bar.s | 31 + ld/testsuite/ld-x86-64/sframe-foo.s | 37 + ld/testsuite/ld-x86-64/sframe-plt-1.d | 29 + ld/testsuite/ld-x86-64/sframe-simple-1.d | 35 + ld/testsuite/ld-x86-64/x86-64.exp | 5 + ld/testsuite/lib/ld-lib.exp | 45 + libctf/configure | 4 +- libctf/configure.ac | 4 +- libsframe/Makefile.am | 61 + libsframe/Makefile.in | 1424 ++++++++++++++ libsframe/aclocal.m4 | 1243 +++++++++++++ libsframe/config.h.in | 144 ++ libsframe/configure.ac | 127 ++ libsframe/doc/local.mk | 40 + libsframe/doc/sframe-spec.texi | 614 +++++++ libsframe/sframe-backtrace-err.c | 46 + libsframe/sframe-backtrace.c | 620 +++++++ libsframe/sframe-dump.c | 180 ++ libsframe/sframe-error.c | 49 + libsframe/sframe-impl.h | 55 + libsframe/sframe.c | 1633 +++++++++++++++++ libsframe/testsuite/Makefile.am | 24 + libsframe/testsuite/Makefile.in | 687 +++++++ libsframe/testsuite/config/default.exp | 57 + libsframe/testsuite/lib/sframe-lib.exp | 180 ++ libsframe/testsuite/libsframe.decode/DATA-BE | Bin 0 -> 64 bytes libsframe/testsuite/libsframe.decode/DATA1 | Bin 0 -> 60 bytes libsframe/testsuite/libsframe.decode/DATA2 | Bin 0 -> 92 bytes .../testsuite/libsframe.decode/Makefile.am | 17 + .../testsuite/libsframe.decode/Makefile.in | 665 +++++++ .../testsuite/libsframe.decode/be-flipping.c | 115 ++ .../testsuite/libsframe.decode/decode.exp | 50 + .../testsuite/libsframe.decode/frecnt-1.c | 99 + .../testsuite/libsframe.decode/frecnt-2.c | 103 ++ .../testsuite/libsframe.encode/Makefile.am | 9 + .../testsuite/libsframe.encode/Makefile.in | 612 ++++++ .../testsuite/libsframe.encode/encode-1.c | 182 ++ .../testsuite/libsframe.encode/encode.exp | 32 + .../testsuite/libsframe.unwind/backtrace.c | 145 ++ .../testsuite/libsframe.unwind/backtrace.lk | 3 + .../testsuite/libsframe.unwind/inline-cmds.c | 136 ++ .../testsuite/libsframe.unwind/inline-cmds.lk | 3 + libsframe/testsuite/libsframe.unwind/inline.c | 97 + .../testsuite/libsframe.unwind/inline.lk | 3 + .../testsuite/libsframe.unwind/solib-lib1.c | 8 + .../testsuite/libsframe.unwind/solib-lib1.h | 3 + .../testsuite/libsframe.unwind/solib-lib2.c | 51 + .../testsuite/libsframe.unwind/solib-lib2.h | 3 + .../testsuite/libsframe.unwind/solib-main.c | 47 + .../testsuite/libsframe.unwind/solib-main.d | 3 + .../testsuite/libsframe.unwind/solib.exp | 75 + .../testsuite/libsframe.unwind/tailcall.c | 103 ++ .../testsuite/libsframe.unwind/tailcall.lk | 3 + libsframe/testsuite/libsframe.unwind/ttest.c | 127 ++ libsframe/testsuite/libsframe.unwind/ttest.lk | 3 + .../testsuite/libsframe.unwind/unwind.exp | 200 ++ sim/common/Make-common.in | 7 +- src-release.sh | 4 +- 156 files changed, 16113 insertions(+), 64 deletions(-) create mode 100644 bfd/elf-sframe.c create mode 100644 binutils/doc/sframe.options.texi create mode 100644 config/dejagnu.m4 create mode 100644 config/sframe.m4 create mode 100644 gas/gen-sframe.c create mode 100644 gas/gen-sframe.h create mode 100644 gas/sframe-opt.c create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-aarch64-1.d create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-aarch64-1.s create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-common-1.d create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-common-1.s create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-common-2.d create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-common-2.s create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-common-3.d create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-common-3.s create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-common-4.d create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-common-4.s create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-common-5.d create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-common-5.s create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-common-6.d create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-common-6.s create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-common-7.d create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-common-7.s create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-common-8.d create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-common-8.s create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-1.d create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-1.s create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe.exp create mode 100644 gas/testsuite/gas/cfi-sframe/common-empty-1.d create mode 100644 gas/testsuite/gas/cfi-sframe/common-empty-1.s create mode 100644 gas/testsuite/gas/cfi-sframe/common-empty-2.d create mode 100644 gas/testsuite/gas/cfi-sframe/common-empty-2.s create mode 100644 gas/testsuite/gas/cfi-sframe/common-empty-3.d create mode 100644 gas/testsuite/gas/cfi-sframe/common-empty-3.s create mode 100644 gas/testsuite/gas/cfi-sframe/common-empty-4.d create mode 100644 gas/testsuite/gas/cfi-sframe/common-empty-4.s mode change 100755 => 100644 gdb/configure create mode 100644 include/sframe-api.h create mode 100644 include/sframe-backtrace-api.h create mode 100644 include/sframe.h create mode 100644 ld/testsuite/ld-aarch64/sframe-bar.s create mode 100644 ld/testsuite/ld-aarch64/sframe-foo.s create mode 100644 ld/testsuite/ld-aarch64/sframe-simple-1.d create mode 100644 ld/testsuite/ld-sframe/discard.d create mode 100644 ld/testsuite/ld-sframe/discard.ld create mode 100644 ld/testsuite/ld-sframe/discard.s create mode 100644 ld/testsuite/ld-sframe/sframe-empty.d create mode 100644 ld/testsuite/ld-sframe/sframe-empty.s create mode 100644 ld/testsuite/ld-sframe/sframe.exp create mode 100644 ld/testsuite/ld-x86-64/sframe-bar.s create mode 100644 ld/testsuite/ld-x86-64/sframe-foo.s create mode 100644 ld/testsuite/ld-x86-64/sframe-plt-1.d create mode 100644 ld/testsuite/ld-x86-64/sframe-simple-1.d create mode 100644 libsframe/Makefile.am create mode 100644 libsframe/Makefile.in create mode 100644 libsframe/aclocal.m4 create mode 100644 libsframe/config.h.in create mode 100644 libsframe/configure.ac create mode 100644 libsframe/doc/local.mk create mode 100644 libsframe/doc/sframe-spec.texi create mode 100644 libsframe/sframe-backtrace-err.c create mode 100644 libsframe/sframe-backtrace.c create mode 100644 libsframe/sframe-dump.c create mode 100644 libsframe/sframe-error.c create mode 100644 libsframe/sframe-impl.h create mode 100644 libsframe/sframe.c create mode 100644 libsframe/testsuite/Makefile.am create mode 100644 libsframe/testsuite/Makefile.in create mode 100644 libsframe/testsuite/config/default.exp create mode 100644 libsframe/testsuite/lib/sframe-lib.exp create mode 100644 libsframe/testsuite/libsframe.decode/DATA-BE create mode 100644 libsframe/testsuite/libsframe.decode/DATA1 create mode 100644 libsframe/testsuite/libsframe.decode/DATA2 create mode 100644 libsframe/testsuite/libsframe.decode/Makefile.am create mode 100644 libsframe/testsuite/libsframe.decode/Makefile.in create mode 100644 libsframe/testsuite/libsframe.decode/be-flipping.c create mode 100644 libsframe/testsuite/libsframe.decode/decode.exp create mode 100644 libsframe/testsuite/libsframe.decode/frecnt-1.c create mode 100644 libsframe/testsuite/libsframe.decode/frecnt-2.c create mode 100644 libsframe/testsuite/libsframe.encode/Makefile.am create mode 100644 libsframe/testsuite/libsframe.encode/Makefile.in create mode 100644 libsframe/testsuite/libsframe.encode/encode-1.c create mode 100644 libsframe/testsuite/libsframe.encode/encode.exp create mode 100644 libsframe/testsuite/libsframe.unwind/backtrace.c create mode 100644 libsframe/testsuite/libsframe.unwind/backtrace.lk create mode 100644 libsframe/testsuite/libsframe.unwind/inline-cmds.c create mode 100644 libsframe/testsuite/libsframe.unwind/inline-cmds.lk create mode 100644 libsframe/testsuite/libsframe.unwind/inline.c create mode 100644 libsframe/testsuite/libsframe.unwind/inline.lk create mode 100644 libsframe/testsuite/libsframe.unwind/solib-lib1.c create mode 100644 libsframe/testsuite/libsframe.unwind/solib-lib1.h create mode 100644 libsframe/testsuite/libsframe.unwind/solib-lib2.c create mode 100644 libsframe/testsuite/libsframe.unwind/solib-lib2.h create mode 100644 libsframe/testsuite/libsframe.unwind/solib-main.c create mode 100644 libsframe/testsuite/libsframe.unwind/solib-main.d create mode 100644 libsframe/testsuite/libsframe.unwind/solib.exp create mode 100644 libsframe/testsuite/libsframe.unwind/tailcall.c create mode 100644 libsframe/testsuite/libsframe.unwind/tailcall.lk create mode 100644 libsframe/testsuite/libsframe.unwind/ttest.c create mode 100644 libsframe/testsuite/libsframe.unwind/ttest.lk create mode 100644 libsframe/testsuite/libsframe.unwind/unwind.exp -- 2.37.2