Blob Blame History Raw
diff -Naurp a/backends/Makefile.am b/backends/Makefile.am
--- a/backends/Makefile.am	2019-06-13 12:19:49.078487313 +0000
+++ b/backends/Makefile.am	2019-06-13 12:21:44.137496575 +0000
@@ -58,6 +58,8 @@ static_SRCS = i386_init.c i386_symbol.c
 	     x86_64_retval.c x86_64_regs.c x86_64_syscall.c \
 	     x86_64_initreg.c x86_64_unwind.c x32_corenote.c \
 	     ia64_init.c ia64_symbol.c ia64_regs.c ia64_retval.c \
+	     arm_attrs.c arm_auxv.c arm_cfi.c arm_corenote.c arm_init.c \
+	     arm_initreg.c arm_regs.c arm_retval.c arm_symbol.c \
 	     aarch64_init.c aarch64_regs.c aarch64_symbol.c   \
 	     aarch64_corenote.c aarch64_retval.c aarch64_cfi.c \
 	     aarch64_initreg.c aarch64_unwind.c \
diff -Naurp a/libebl/eblopenbackend.c b/libebl/eblopenbackend.c
--- a/libebl/eblopenbackend.c	2019-06-13 12:19:49.083487139 +0000
+++ b/libebl/eblopenbackend.c	2019-06-13 12:24:04.382632274 +0000
@@ -47,6 +47,7 @@ const char *ppc_init (Elf *elf, GElf_Hal
 const char *ppc64_init (Elf *elf, GElf_Half machine, Ebl *eh, size_t ehlen);
 const char *ia64_init (Elf *elf, GElf_Half machine, Ebl *eh, size_t ehlen);
 const char *s390_init (Elf *elf, GElf_Half machine, Ebl *eh, size_t ehlen);
+const char *arm_init (Elf *elf, GElf_Half machine, Ebl *eh, size_t ehlen);
 const char *aarch64_init (Elf *elf, GElf_Half machine, Ebl *eh, size_t ehlen);
 const char *bpf_init (Elf *elf, GElf_Half machine, Ebl *eh, size_t ehlen);
 
@@ -74,7 +75,7 @@ static const struct
   { NULL, "elf_tilegx", "tilegx", 6, EM_TILEGX, ELFCLASS64, ELFDATA2LSB },
   // XXX class and machine fields need to be filled in for all archs.
   { NULL, "elf_sh", "sh", 2, EM_SH, 0, 0 },
-  { NULL, "ebl_arm", "arm", 3, EM_ARM, 0, 0 },
+  { arm_init, "ebl_arm", "arm", 3, EM_ARM, 0, 0 },
   { NULL, "elf_sparcv9", "sparc", 5, EM_SPARCV9, 0, 0 },
   { NULL, "elf_sparc", "sparc", 5, EM_SPARC, 0, 0 },
   { NULL, "elf_sparcv8plus", "sparc", 5, EM_SPARC32PLUS, 0, 0 },