From 898c722096fd4dd33f7dc0fffe7fb87bd1ea8459 Mon Sep 17 00:00:00 2001 From: Indu Bhagat Date: Tue, 30 Dec 2025 18:03:38 -0800 Subject: [PATCH] cleanup sframe.h and sframe-dump.c based on Jens' patch commit 69c3a613a48dc77c5f41b8bd2369662cd8237927 Author: Jens Remus Date: Fri Dec 12 16:05:01 2025 +0100 s390: gas: sframe: Represent .cfi_register FP/RA using FLEX_TOPMOST_FRAME Signed-off-by: Jens Remus include/ * sframe.h (SFRAME_V3_S390X_OFFSET_IS_REGNUM): Remove. (SFRAME_V3_S390X_OFFSET_ENCODE_REGNUM): Remove. (SFRAME_V3_S390X_OFFSET_DECODE_REGNUM): Remove. libsframe/ * sframe-dump.c (sframe_s390x_offset_regnum_p): No more necessary for V3, now that it uses FLEX FDE instead. (sframe_s390x_offset_decode_regnum): Likewise. --- include/sframe.h | 13 ------------- libsframe/sframe-dump.c | 4 +--- 2 files changed, 1 insertion(+), 16 deletions(-) diff --git a/include/sframe.h b/include/sframe.h index 9e17e52e3a0..69df038378a 100644 --- a/include/sframe.h +++ b/include/sframe.h @@ -529,19 +529,6 @@ typedef struct sframe_frame_row_entry_addr4 #define SFRAME_V2_S390X_OFFSET_DECODE_REGNUM(offset) \ ((offset) >> 1) -/* In SFrame V3, change the encoding of register numbers in the SFrame offsets - on s390x by keeping the lower 3 bits aside. - - LSB=0: Stack offset. The s390x ELF ABI mandates that stack register - slots must be 8-byte aligned. - - LSB=1: DWARF register number shifted to the left by three. - Bits 1 and 2 are currently unused. */ -#define SFRAME_V3_S390X_OFFSET_IS_REGNUM(offset) \ - ((offset) & 1) -#define SFRAME_V3_S390X_OFFSET_ENCODE_REGNUM(regnum) \ - (((regnum) << 3) | 1) -#define SFRAME_V3_S390X_OFFSET_DECODE_REGNUM(offset) \ - ((offset) >> 3) - #ifdef __cplusplus } #endif diff --git a/libsframe/sframe-dump.c b/libsframe/sframe-dump.c index 3153424b0a1..e94a298b6ce 100644 --- a/libsframe/sframe-dump.c +++ b/libsframe/sframe-dump.c @@ -122,7 +122,7 @@ sframe_s390x_offset_regnum_p (int32_t offset, uint8_t ver) if (ver == SFRAME_VERSION_2) return SFRAME_V2_S390X_OFFSET_IS_REGNUM (offset); else if (ver == SFRAME_VERSION_3) - return SFRAME_V3_S390X_OFFSET_IS_REGNUM (offset); + return false; else /* No other version is supported yet. */ sframe_assert (false); @@ -133,8 +133,6 @@ sframe_s390x_offset_decode_regnum (int32_t offset, uint8_t ver) { if (ver == SFRAME_VERSION_2) return SFRAME_V2_S390X_OFFSET_DECODE_REGNUM (offset); - else if (ver == SFRAME_VERSION_3) - return SFRAME_V3_S390X_OFFSET_DECODE_REGNUM (offset); else /* No other version is supported yet. */ sframe_assert (false);