[binutils-gdb] Make some ldlang functions inline
Alan Modra
amodra@sourceware.org
Sat Jan 17 02:25:46 GMT 2026
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=1522f86f18a8ccbe2e91b800526278e155e6b07d
commit 1522f86f18a8ccbe2e91b800526278e155e6b07d
Author: Alan Modra <amodra@gmail.com>
Date: Fri Jan 16 16:13:21 2026 +1030
Make some ldlang functions inline
These are small, and making them inline lets me call
lang_statement_append without adding a forward declaration in the
next patch.
* ldlang.c (lang_for_each_statement, lang_list_init),
(lang_statement_append): Move to..
* ldlang.h: ..here making them inline functions.
(bfd_input_just_syms): Group with other inlines.
Diff:
---
ld/ldlang.c | 24 ------------------------
ld/ldlang.h | 40 +++++++++++++++++++++++++++++-----------
2 files changed, 29 insertions(+), 35 deletions(-)
diff --git a/ld/ldlang.c b/ld/ldlang.c
index a0368ecbe42..812542b5697 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -1130,30 +1130,6 @@ lang_for_each_statement_worker (void (*func) (lang_statement_union_type *),
}
}
-void
-lang_for_each_statement (void (*func) (lang_statement_union_type *))
-{
- lang_for_each_statement_worker (func, statement_list.head);
-}
-
-/*----------------------------------------------------------------------*/
-
-void
-lang_list_init (lang_statement_list_type *list)
-{
- list->head = NULL;
- list->tail = &list->head;
-}
-
-static void
-lang_statement_append (lang_statement_list_type *list,
- void *element,
- void *field)
-{
- *(list->tail) = element;
- list->tail = field;
-}
-
void
push_stat_ptr (lang_statement_list_type *new_ptr)
{
diff --git a/ld/ldlang.h b/ld/ldlang.h
index bb1536e994b..f9010e27785 100644
--- a/ld/ldlang.h
+++ b/ld/ldlang.h
@@ -361,13 +361,6 @@ typedef struct input_section_userdata_struct
unsigned long map_symbol_def_count;
} input_section_userdata_type;
-static inline bool
-bfd_input_just_syms (const bfd *abfd)
-{
- lang_input_statement_type *is = bfd_usrdata (abfd);
- return is != NULL && is->flags.just_syms;
-}
-
typedef struct lang_wild_statement_struct lang_wild_statement_type;
typedef void (*callback_t) (lang_wild_statement_type *, struct wildcard_list *,
@@ -643,8 +636,6 @@ extern void ldlang_add_require_defined
(const char *const);
extern void lang_add_output_format
(const char *, const char *, const char *, int);
-extern void lang_list_init
- (lang_statement_list_type *);
extern void push_stat_ptr
(lang_statement_list_type *);
extern void pop_stat_ptr
@@ -656,8 +647,6 @@ extern void lang_add_string
extern void lang_add_reloc
(bfd_reloc_code_real_type, reloc_howto_type *, asection *, const char *,
union etree_union *);
-extern void lang_for_each_statement
- (void (*) (lang_statement_union_type *));
extern void lang_for_each_statement_worker
(void (*) (lang_statement_union_type *), lang_statement_union_type *);
extern void *stat_alloc
@@ -794,6 +783,35 @@ extern void cmdline_emit_object_only_section (void);
extern void cmdline_check_object_only_section (bfd *, bool);
extern void cmdline_remove_object_only_files (void);
+static inline bool
+bfd_input_just_syms (const bfd *abfd)
+{
+ lang_input_statement_type *is = bfd_usrdata (abfd);
+ return is != NULL && is->flags.just_syms;
+}
+
+static inline void
+lang_for_each_statement (void (*func) (lang_statement_union_type *))
+{
+ lang_for_each_statement_worker (func, statement_list.head);
+}
+
+static inline void
+lang_list_init (lang_statement_list_type *list)
+{
+ list->head = NULL;
+ list->tail = &list->head;
+}
+
+static inline void
+lang_statement_append (lang_statement_list_type *list,
+ void *element,
+ void *field)
+{
+ *(list->tail) = element;
+ list->tail = field;
+}
+
/* Get the output section statement from section userdata. */
static inline lang_output_section_statement_type *
More information about the Binutils-cvs
mailing list