You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by ma...@apache.org on 2021/11/23 11:35:06 UTC
[incubator-nuttx] 02/03: arch/arm: add more arch elf define
This is an automated email from the ASF dual-hosted git repository.
masayuki pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx.git
commit 4c76c356ef55c7e4f2bb26dad3a69a3ceead6a92
Author: chao.an <an...@xiaomi.com>
AuthorDate: Mon Nov 22 10:08:31 2021 +0800
arch/arm: add more arch elf define
Signed-off-by: chao.an <an...@xiaomi.com>
---
arch/arm/include/elf.h | 24 ++++++++++++++++++++++--
1 file changed, 22 insertions(+), 2 deletions(-)
diff --git a/arch/arm/include/elf.h b/arch/arm/include/elf.h
index fb87e2c..e74fbf4 100644
--- a/arch/arm/include/elf.h
+++ b/arch/arm/include/elf.h
@@ -37,8 +37,13 @@
* ELFDATA2MSB (big endian)
*/
-#if 0 /* Defined in include/elf32.h */
-#define EM_ARM 40
+#define EM_ARCH EM_ARM
+#define ELF_CLASS ELFCLASS32
+
+#ifdef CONFIG_ENDIAN_BIG
+# define ELF_DATA ELFDATA2MSB
+#else
+# define ELF_DATA ELFDATA2LSB
#endif
/* Table 4-2, ARM-specific e_flags */
@@ -53,6 +58,21 @@
#define EF_ARM_BE8 0x00800000
+#define EF_ARM_ABI_FLOAT_SOFT 0x00000200
+#define EF_ARM_ABI_FLOAT_HARD 0x00000400
+
+#ifdef __VFP_FP__
+# ifdef __ARM_PCS_VFP
+# define EF_ARM_ABI_FLOAT EF_ARM_ABI_FLOAT_HARD
+# else
+# define EF_ARM_ABI_FLOAT EF_ARM_ABI_FLOAT_SOFT
+# endif
+#else
+# define EF_ARM_ABI_FLOAT 0
+#endif
+
+#define EF_FLAG (EF_ARM_EABI_VER5 | EF_ARM_ABI_FLOAT)
+
/* Table 4-4, Processor specific section types */
#define SHT_ARM_EXIDX 0x70000001 /* Exception Index table */