]> rtime.felk.cvut.cz Git - zynq/linux.git/commitdiff
microblaze: extable: Sort the exception table at build time
authorMichal Simek <michal.simek@xilinx.com>
Fri, 22 Nov 2013 08:17:32 +0000 (09:17 +0100)
committerMichal Simek <michal.simek@xilinx.com>
Fri, 22 Nov 2013 08:23:13 +0000 (09:23 +0100)
Sort the exception table at build-time rather than during boot.

Microblaze is the same case as AARCH64 that's why
EM_MICROBLAZE conditional check was added to allow
cross-compilation on machines which are not running
the latest libc-dev.

Inspired by AARCH64 commit:
"arm64: extable: sort the exception table at build time"
(sha1: adace89562c7a9645b8dc84f6e1ac7ba8756094e)

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
arch/microblaze/Kconfig
scripts/sortextable.c

index 35ff548ae0d521d1ff69ed2fa913c81301e8fb2a..57aef9583cc47ce1aace3dca86d28e18e1e4a68c 100644 (file)
@@ -29,6 +29,7 @@ config MICROBLAZE
        select MODULES_USE_ELF_RELA
        select CLONE_BACKWARDS3
        select CLKSRC_OF
+       select BUILDTIME_EXTABLE_SORT
 
 config SWAP
        def_bool n
index 7c2310c5b996dee9d43df56574b30236342c3c81..050d72d4f53e8b0f3e386aff424fc22ff6f37319 100644 (file)
 #define EM_AARCH64     183
 #endif
 
+#ifndef EM_MICROBLAZE
+#define EM_MICROBLAZE  189
+#endif
+
 static int fd_map;     /* File descriptor for file being modified. */
 static int mmap_failed; /* Boolean flag. */
 static void *ehdr_curr; /* current ElfXX_Ehdr *  for resource cleanup */
@@ -246,6 +250,7 @@ do_file(char const *const fname)
                break;
        case EM_ARM:
        case EM_AARCH64:
+       case EM_MICROBLAZE:
        case EM_MIPS:
                break;
        }  /* end switch */