elfcompress: Pull get_sections() into file scope

Get rid of a nested function this way.

Signed-off-by: Timm Bäder <tbaeder@redhat.com>
This commit is contained in:
Timm Bäder
2021-02-17 09:45:09 +01:00
committed by Mark Wielaard
parent 71b7401496
commit 0df0e8e05a
2 changed files with 17 additions and 10 deletions
+6
View File
@@ -1,3 +1,9 @@
2021-02-17 Timm Bäder <tbaeder@redhat.com>
* elfcompress.c (process_file): Move get_sections function...
(get_section): ...to top-level static function taking an
sections array and shnum.
2021-02-17 Timm Bäder <tbaeder@redhat.com>
* elfcompress.c (process_file): Move get_section function...
+11 -10
View File
@@ -256,6 +256,16 @@ get_section (unsigned int *sections, size_t ndx)
return (sections[ndx / WORD_BITS] & (1U << (ndx % WORD_BITS))) != 0;
}
/* How many sections are we going to change? */
static size_t
get_sections (unsigned int *sections, size_t shnum)
{
size_t s = 0;
for (size_t i = 0; i < shnum / WORD_BITS + 1; i++)
s += __builtin_popcount (sections[i]);
return s;
}
static int
process_file (const char *fname)
{
@@ -289,15 +299,6 @@ process_file (const char *fname)
/* How many sections are we talking about? */
size_t shnum = 0;
/* How many sections are we going to change? */
size_t get_sections (void)
{
size_t s = 0;
for (size_t i = 0; i < shnum / WORD_BITS + 1; i++)
s += __builtin_popcount (sections[i]);
return s;
}
int cleanup (int res)
{
elf_end (elf);
@@ -552,7 +553,7 @@ process_file (const char *fname)
}
}
if (foutput == NULL && get_sections () == 0)
if (foutput == NULL && get_sections (sections, shnum) == 0)
{
if (verbose > 0)
printf ("Nothing to do.\n");