[00/13] sframe: some refactoring and misc improvements

Message ID 20251202073414.200246-1-indu.bhagat@oracle.com
Headers
Series sframe: some refactoring and misc improvements |

Message

Indu Bhagat Dec. 2, 2025, 7:34 a.m. UTC
  Hi,

This series collects a set of minor improvements, refactorings, and
general knick-knacks from my work queue.

The primary goal of this series is to prepare the codebase for upcoming
SFrame V3 support. It includes some code hygiene, such as cleaning
up abstractions between BFD/GAS and libsframe, implementing
internal-only FDE representations, and introducing SFRAME_V2_* macros to
clarify versioning.

Additionally, this series includes a few specific fixes regarding RA
tracking (including a revert) and corresponding testsuite updates.

No regressions seen on x86_64-linux, aarch64-linux, s390x-linux and few
other tested targets.

Thanks,

Indu Bhagat (13):
  Revert "gas: Don't skip SFrame FDE if .cfi_register specifies RA w/o
    tracking"
  gas: sframe: testsuite: add testcase for .cfi_register RA
  gas: sframe: ignore .cfi_offset for RA selectively
  include: gas: bfd: sframe: clean the abstraction
  libsframe: implement an internal-only SFrame FDE representation
  include: sframe: add SFRAME_V2_ prefixed macro names
  gas: libsframe: use SFRAME_V2_* macro where available
  gas: sframe: add new sframe_xlate_ctx_get_cur_cfa_reg
  gas: sframe: pass SFrame FDE as argument to output_sframe_row_entry
  gas: sframe: refactor out the offsets emission code
  libsframe: refactor sframe_decoder_add_funcdesc for internal use
  libsframe: use tmp variable for realloc pattern
  libsframe: refactor out sframe_fre_grow_tbl

 bfd/elf-sframe.c                              |   2 +
 gas/gen-sframe.c                              | 121 ++++--
 gas/sframe-opt.c                              |   8 +-
 .../cfi-sframe/cfi-sframe-x86_64-empty-5.d    |  17 +
 .../cfi-sframe/cfi-sframe-x86_64-empty-5.s    |  11 +
 gas/testsuite/gas/cfi-sframe/cfi-sframe.exp   |   1 +
 include/sframe.h                              |  14 +-
 libsframe/sframe-dump.c                       |   4 +-
 libsframe/sframe.c                            | 345 +++++++++++-------
 9 files changed, 348 insertions(+), 175 deletions(-)
 create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-5.d
 create mode 100644 gas/testsuite/gas/cfi-sframe/cfi-sframe-x86_64-empty-5.s