aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIndu Bhagat <indu.bhagat@oracle.com>2025-07-12 01:09:17 -0700
committerIndu Bhagat <indu.bhagat@oracle.com>2025-07-12 01:09:17 -0700
commit6a959b127014b262bb62b9fd31fd4d1f4ce4777f (patch)
tree23a2b73f162293893816a32cc3142c46cc01033e
parentddcac0840710fede1bb3e2e8dcfa5a20cfc4bf77 (diff)
downloadbinutils-6a959b127014b262bb62b9fd31fd4d1f4ce4777f.zip
binutils-6a959b127014b262bb62b9fd31fd4d1f4ce4777f.tar.gz
binutils-6a959b127014b262bb62b9fd31fd4d1f4ce4777f.tar.bz2
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.
-rw-r--r--binutils/NEWS12
-rw-r--r--include/sframe-api.h8
-rw-r--r--libsframe/libsframe.ver14
-rw-r--r--libsframe/libtool-version2
-rw-r--r--libsframe/sframe.c12
5 files changed, 18 insertions, 30 deletions
diff --git a/binutils/NEWS b/binutils/NEWS
index 6ef8e67..89351d7 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 ac4f19a..8c26257 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 06324ee..8cc80da 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 9dcbe48..e06835d 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 659b39d..7357fc1 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. */