[PATCH] aarch64: s390: x86_64: sframe: adjust flex fde hook implementation

Jan Beulich jbeulich@suse.com
Wed Jan 21 09:04:38 GMT 2026


On 21.01.2026 07:51, Indu Bhagat wrote:
> A previous commit added new backend hook sframe_support_flex_fde_p by
> defining a new function for each backend that supports SFrame stack
> trace format:
> 
>   commit 2f9b3987db53d7e0606f89bfe2527dd3d0915568
>   [SFrame-V3] gas: sframe: add new backend hook
>   sframe_support_flex_fde_p for FLEX FDEs
> 
> As pointed out in a review comment, simply providing the definition to
> use true/false (as applicable) is sufficient for the purpose, and helps
> generate better code.  So do that.
> https://inbox.sourceware.org/binutils/80404871-53b4-4f5c-9d86-7a3a4d0a920e@suse.com/
> 
> ChangeLog:
> 	* gas/config/tc-aarch64.c (aarch64_support_flex_fde_p): Remove.
> 	* gas/config/tc-aarch64.h (aarch64_support_flex_fde_p): Remove.
> 	(sframe_support_flex_fde_p): Define to false.
> 	* gas/config/tc-i386.c (x86_support_flex_fde_p): Remove.
> 	* gas/config/tc-i386.h (x86_support_flex_fde_p): Remove.
> 	(sframe_support_flex_fde_p): Define to true.
> 	* gas/config/tc-s390.c (s390_support_flex_fde_p): Remove.
> 	* gas/config/tc-s390.h (s390_support_flex_fde_p): Remove.
> 	(sframe_support_flex_fde_p): Define to true.
> ---
>  gas/config/tc-aarch64.c | 8 --------
>  gas/config/tc-aarch64.h | 3 +--
>  gas/config/tc-i386.c    | 7 -------
>  gas/config/tc-i386.h    | 3 +--
>  gas/config/tc-s390.c    | 8 --------
>  gas/config/tc-s390.h    | 3 +--
>  6 files changed, 3 insertions(+), 29 deletions(-)

Okay as far as x86 goes, albeit preferably ...

> --- a/gas/config/tc-aarch64.h
> +++ b/gas/config/tc-aarch64.h
> @@ -340,8 +340,7 @@ unsigned char aarch64_sframe_get_abi_arch (void);
>  #define sframe_get_abi_arch aarch64_sframe_get_abi_arch
>  
>  /* Whether SFrame FDE of type SFRAME_FDE_TYPE_FLEX be generated.  */
> -extern bool aarch64_support_flex_fde_p (void);
> -#define sframe_support_flex_fde_p aarch64_support_flex_fde_p
> +#define sframe_support_flex_fde_p() false

..., just like done here and also for s390, ...

> --- a/gas/config/tc-i386.h
> +++ b/gas/config/tc-i386.h
> @@ -479,8 +479,7 @@ extern unsigned char x86_sframe_get_abi_arch (void);
>  #define sframe_get_abi_arch x86_sframe_get_abi_arch
>  
>  /* Whether SFrame FDE of type SFRAME_FDE_TYPE_FLEX be generated.  */
> -extern bool x86_support_flex_fde_p (void);
> -#define sframe_support_flex_fde_p x86_support_flex_fde_p
> +#define sframe_support_flex_fde_p()  true

... with only a single padding blank.

Jan

> --- a/gas/config/tc-s390.h
> +++ b/gas/config/tc-s390.h
> @@ -132,8 +132,7 @@ unsigned char s390_sframe_get_abi_arch (void);
>  #define sframe_get_abi_arch s390_sframe_get_abi_arch
>  
>  /* Whether SFrame FDE of type SFRAME_FDE_TYPE_FLEX be generated.  */
> -extern bool s390_support_flex_fde_p (void);
> -#define sframe_support_flex_fde_p s390_support_flex_fde_p
> +#define sframe_support_flex_fde_p() true
>  
>  /* The target supports Object Attributes.  */
>  #define TC_OBJ_ATTR 1



More information about the Binutils mailing list