s390/exceptions: switch to relative exception table entries
This is the s390 port of 70627654
"x86, extable: Switch to relative
exception table entries".
Reduces the size of our exception tables by 50% on 64 bit builds.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
committed by
Martin Schwidefsky
parent
24996edce5
commit
eb608fb366
@@ -161,7 +161,7 @@ typedef void (*table_sort_t)(char *, int);
|
||||
#define SORTEXTABLE_64
|
||||
#include "sortextable.h"
|
||||
|
||||
static int compare_x86_table(const void *a, const void *b)
|
||||
static int compare_relative_table(const void *a, const void *b)
|
||||
{
|
||||
int32_t av = (int32_t)r(a);
|
||||
int32_t bv = (int32_t)r(b);
|
||||
@@ -173,7 +173,7 @@ static int compare_x86_table(const void *a, const void *b)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void sort_x86_table(char *extab_image, int image_size)
|
||||
static void sort_relative_table(char *extab_image, int image_size)
|
||||
{
|
||||
int i;
|
||||
|
||||
@@ -188,7 +188,7 @@ static void sort_x86_table(char *extab_image, int image_size)
|
||||
i += 4;
|
||||
}
|
||||
|
||||
qsort(extab_image, image_size / 8, 8, compare_x86_table);
|
||||
qsort(extab_image, image_size / 8, 8, compare_relative_table);
|
||||
|
||||
/* Now denormalize. */
|
||||
i = 0;
|
||||
@@ -245,9 +245,9 @@ do_file(char const *const fname)
|
||||
break;
|
||||
case EM_386:
|
||||
case EM_X86_64:
|
||||
custom_sort = sort_x86_table;
|
||||
break;
|
||||
case EM_S390:
|
||||
custom_sort = sort_relative_table;
|
||||
break;
|
||||
case EM_MIPS:
|
||||
break;
|
||||
} /* end switch */
|
||||
|
Reference in New Issue
Block a user