From: Indu Bhagat Date: Sat, 12 Jul 2025 08:09:17 +0000 (-0700) Subject: libsframe: bump version to 2.0 X-Git-Tag: binutils-2_45~59 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6a959b127014b262bb62b9fd31fd4d1f4ce4777f;p=thirdparty%2Fbinutils-gdb.git libsframe: bump version to 2.0 Remove LIBSFRAME_1.1, LIBSFRAME_1.0 nodes and add a new LIBSFRAME_2.0 node (non-inheritance version) to create new global versioned symbols. Also announce libsframe.so.2 in NEWS. New APIs: sframe_decoder_get_flags; sframe_decoder_get_offsetof_fde_start_addr; sframe_encoder_get_flags; sframe_encoder_get_offsetof_fde_start_addr; Removed APIs: (already deprecated since X-2 release) sframe_get_funcdesc_with_addr; APIs with changed semantics: sframe_decoder_get_funcdesc_v2; sframe_encoder_add_funcdesc_v2; sframe_encoder_write; lisbframe/ * libsframe.ver: Define new LIBSFRAME_2.0. * libtool-version: Bump the 'current' numeral to indicate a binary incompatible release. include/ * sframe-api.h (sframe_get_funcdesc_with_addr): Remove deprecated interface. libsframe/ * sframe.c (sframe_get_funcdesc_with_addr): Likewise. binutils/ * NEWS: Announce new versioned release of libsframe. --- diff --git a/binutils/NEWS b/binutils/NEWS index 6ef8e67c3e1..89351d70e25 100644 --- a/binutils/NEWS +++ b/binutils/NEWS @@ -1,5 +1,17 @@ -*- text -*- +* New versioned release of libsframe: libsframe.so.2. This release introduces + versioned symbols with version node name LIBSFRAME_2.0. Some new symbols + have been added to support the new flag SFRAME_F_FDE_FUNC_START_PCREL and + retrieving flags from SFrame decoder and encoder objects: + - Addition of sframe_decoder_get_flags, + sframe_decoder_get_offsetof_fde_start_addr, sframe_encoder_get_flags, + sframe_encoder_get_offsetof_fde_start_addr. + This release also includes backward-incompatible ABI changes: + - Removal of sframe_get_funcdesc_with_addr. + - Change in the behavior of sframe_decoder_get_funcdesc_v2, + sframe_encoder_add_funcdesc_v2 and sframe_encoder_write. + * On s390 64-bit (s390x), gas, ld, objdump, and readelf now support generating and processing SFrame V2 stack trace information (.sframe). The assembler generates SFrame info from CFI directives with option "--gsframe". The diff --git a/include/sframe-api.h b/include/sframe-api.h index ac4f19a66f0..8c26257fb64 100644 --- a/include/sframe-api.h +++ b/include/sframe-api.h @@ -153,14 +153,6 @@ sframe_decoder_get_fixed_fp_offset (sframe_decoder_ctx *dctx); extern int8_t sframe_decoder_get_fixed_ra_offset (sframe_decoder_ctx *dctx); -/* Find the function descriptor entry which contains the specified address. - - Note: This function is deprecated and will be removed from future release - X+2 of the library. */ -extern void * -sframe_get_funcdesc_with_addr (sframe_decoder_ctx *dctx, int32_t addr, - int *errp); - /* Find the SFrame Frame Row Entry which contains the PC. Returns SFRAME_ERR if failure. */ diff --git a/libsframe/libsframe.ver b/libsframe/libsframe.ver index 06324eecfc5..8cc80da2f26 100644 --- a/libsframe/libsframe.ver +++ b/libsframe/libsframe.ver @@ -1,6 +1,6 @@ LIBSFRAME_0.0 { }; -LIBSFRAME_1.0 { +LIBSFRAME_2.0 { global: sframe_decoder_free; sframe_fde_create_func_info; @@ -11,12 +11,13 @@ LIBSFRAME_1.0 { sframe_fre_get_ra_offset; sframe_fre_get_ra_mangled_p; sframe_decode; + sframe_decoder_get_flags; sframe_decoder_get_hdr_size; sframe_decoder_get_abi_arch; sframe_decoder_get_version; + sframe_decoder_get_offsetof_fde_start_addr; sframe_decoder_get_fixed_fp_offset; sframe_decoder_get_fixed_ra_offset; - sframe_get_funcdesc_with_addr; sframe_find_fre; sframe_decoder_get_num_fidx; sframe_decoder_get_funcdesc; @@ -24,9 +25,11 @@ LIBSFRAME_1.0 { sframe_decoder_get_fre; sframe_encode; sframe_encoder_free; + sframe_encoder_get_flags; sframe_encoder_get_hdr_size; sframe_encoder_get_abi_arch; sframe_encoder_get_version; + sframe_encoder_get_offsetof_fde_start_addr; sframe_encoder_get_num_fidx; sframe_encoder_add_fre; sframe_encoder_add_funcdesc; @@ -38,10 +41,3 @@ LIBSFRAME_1.0 { local: *; } LIBSFRAME_0.0; - -LIBSFRAME_1.1 { - sframe_decoder_get_flags; - sframe_decoder_get_offsetof_fde_start_addr; - sframe_encoder_get_flags; - sframe_encoder_get_offsetof_fde_start_addr; -} LIBSFRAME_1.0; diff --git a/libsframe/libtool-version b/libsframe/libtool-version index 9dcbe48e47d..e06835d7c65 100644 --- a/libsframe/libtool-version +++ b/libsframe/libtool-version @@ -27,4 +27,4 @@ # then set age to 0. # # CURRENT:REVISION:AGE -1:0:0 +2:0:0 diff --git a/libsframe/sframe.c b/libsframe/sframe.c index 659b39d4ddd..7357fc15abc 100644 --- a/libsframe/sframe.c +++ b/libsframe/sframe.c @@ -1079,18 +1079,6 @@ sframe_decoder_get_offsetof_fde_start_addr (sframe_decoder_ctx *dctx, + offsetof (sframe_func_desc_entry, sfde_func_start_address)); } -/* Find the function descriptor entry which contains the specified address - ADDR. - This function is deprecated and will be removed from libsframe.so.2. */ - -void * -sframe_get_funcdesc_with_addr (sframe_decoder_ctx *ctx __attribute__ ((unused)), - int32_t addr __attribute__ ((unused)), - int *errp) -{ - return sframe_ret_set_errno (errp, SFRAME_ERR_INVAL); -} - /* Find the function descriptor entry starting which contains the specified address ADDR. */