public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* [PATCH 00/10] Patches for libsframe versioning and symbol versioning
@ 2023-06-23  4:44 Indu Bhagat
  2023-06-23  4:44 ` [PATCH 01/10] libsframe: add library versioning Indu Bhagat
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: Indu Bhagat @ 2023-06-23  4:44 UTC (permalink / raw)
  To: binutils; +Cc: Indu Bhagat

Hi,

This patch set adds versioning support to libsframe, which is needed to manage
the upcoming ABI breaking changes (some of which are included in this
patchset).  It also adds symbol versioning for libsframe.  As the library is
still evolving, it will be better to add symbol versioning support now.

I would like some more eyes on this sort of thing, especially the three patches:

  [1/10] libsframe: add library versioning
  [3/10] libsframe: add symbol versioning
  [10/10] binutils/NEWS: add note about upcoming libsframe changes

Testing notes:
 - Regression tested various cross-builds on x86_64
 - try bot does not show any new failures
 - Build works on Solaris, mingw, cygwin
 - Also regression tested on a FreeBSD VM

Further details for the patch series:
The first release of the library (libsframe.so.0) had unversioned
symbols.  The next release of the library (libsframe.so.1) will have versioned
symbols with version node name LIBSFRAME_1.0.  As libsframe.so.0 ->
libsframe.so.1 indicates an ABI break, I realised that including the patches:

  [4/10] libsframe: update the semantics of sframe_fre_get_ra_offset
  [5/10] libsframe: update the semantics of sframe_fre_get_fp_offset

can be safely done.  My previous question to the mailing list, in hindsight,
was a moot point https://sourceware.org/pipermail/binutils/2023-June/127801.html.

After this patchset, I will proceed with further ABI changes, format bump to
SFrame version 2 and its related changes.

Thanks,

Indu Bhagat (10):
  libsframe: add library versioning
  libsframe: remove sframe_get_funcdesc_with_addr API
  libsframe: add symbol versioning
  libsframe: update the semantics of sframe_fre_get_ra_offset
  libsframe: update the semantics of sframe_fre_get_fp_offset
  libsframe: use uint32_t for fre_type and fde_type function args
  bfd: libsframe: use uint32_t for return type of sframe_calc_fre_type
  libsframe: use uint8_t instead of unsigned char for abi_arch
  libsframe: use uint8_t for return type of sframe_fre_get_base_reg_id
  binutils/NEWS: add note about upcoming libsframe changes

 bfd/elf-sframe.c          |   2 +-
 bfd/elfxx-x86.c           |   2 +-
 binutils/NEWS             |   6 +++
 include/sframe-api.h      |  21 ++++----
 libsframe/Makefile.am     |  15 ++++++
 libsframe/Makefile.in     |  14 +++++-
 libsframe/configure       |  63 ++++++++++++++++++++++-
 libsframe/configure.ac    |  28 +++++++++++
 libsframe/libsframe.ver   |  36 +++++++++++++
 libsframe/libtool-version |  30 +++++++++++
 libsframe/sframe-dump.c   |  20 +++++---
 libsframe/sframe.c        | 103 +++++++++++++++++++++++---------------
 12 files changed, 277 insertions(+), 63 deletions(-)
 create mode 100644 libsframe/libsframe.ver
 create mode 100644 libsframe/libtool-version

-- 
2.39.2


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2023-06-27 19:59 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-06-23  4:44 [PATCH 00/10] Patches for libsframe versioning and symbol versioning Indu Bhagat
2023-06-23  4:44 ` [PATCH 01/10] libsframe: add library versioning Indu Bhagat
2023-06-23  4:44 ` [PATCH 02/10] libsframe: remove sframe_get_funcdesc_with_addr API Indu Bhagat
2023-06-23  4:44 ` [PATCH 03/10] libsframe: add symbol versioning Indu Bhagat
2023-06-23  4:44 ` [PATCH 04/10] libsframe: update the semantics of sframe_fre_get_ra_offset Indu Bhagat
2023-06-23  4:44 ` [PATCH 05/10] libsframe: update the semantics of sframe_fre_get_fp_offset Indu Bhagat
2023-06-23  4:44 ` [PATCH 06/10] libsframe: use uint32_t for fre_type and fde_type function args Indu Bhagat
2023-06-23  4:44 ` [PATCH 07/10] bfd: libsframe: use uint32_t for return type of sframe_calc_fre_type Indu Bhagat
2023-06-23  4:44 ` [PATCH 08/10] libsframe: use uint8_t instead of unsigned char for abi_arch Indu Bhagat
2023-06-23  4:44 ` [PATCH 09/10] libsframe: use uint8_t for return type of sframe_fre_get_base_reg_id Indu Bhagat
2023-06-23  4:44 ` [PATCH 10/10] binutils/NEWS: add note about upcoming libsframe changes Indu Bhagat
2023-06-27 19:59 ` [PATCH 00/10] Patches for libsframe versioning and symbol versioning Indu Bhagat

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).