[PATCH] D49992: [ELF][ARM] Add Arm ABI names for float ABI ELF Header flags

Peter Smith via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jul 30 09:02:23 PDT 2018


peter.smith created this revision.
peter.smith added reviewers: olista01, rengolin, t.p.northover.
Herald added a reviewer: javed.absar.
Herald added subscribers: chrib, kristof.beyls.

The ELF for the Arm architecture document defines, for EF_ARM_EABI_VER5 and above, the flags EF_ARM_ABI_FLOAT_HARD and EF_ARM_ABI_FLOAT_SOFT. These have been defined to be compatible with the existing EF_ARM_VFP_FLOAT and EF_ARM_SOFT_FLOAT used by gcc for EF_ARM_EABI_UNKNOWN.

      

This patch adds the flags in addition to the existing ones so that any code depending on the old names will still work. To my knowledge nothing in the existing LLVM codebase uses the old names. I would like to use the new ones in a LLD patch.

Reference:
Elf for the Arm Architecture section 4.2 Elf Header http://infocenter.arm.com/help/topic/com.arm.doc.ihi0044f/IHI0044F_aaelf.pdf


https://reviews.llvm.org/D49992

Files:
  include/llvm/BinaryFormat/ELF.h


Index: include/llvm/BinaryFormat/ELF.h
===================================================================
--- include/llvm/BinaryFormat/ELF.h
+++ include/llvm/BinaryFormat/ELF.h
@@ -413,8 +413,10 @@
 
 // ARM Specific e_flags
 enum : unsigned {
-  EF_ARM_SOFT_FLOAT = 0x00000200U,
-  EF_ARM_VFP_FLOAT = 0x00000400U,
+  EF_ARM_SOFT_FLOAT = 0x00000200U,     // Legacy pre EABI_VER5
+  EF_ARM_ABI_FLOAT_SOFT = 0x00000200U, // EABI_VER5
+  EF_ARM_VFP_FLOAT = 0x00000400U,      // Legacy pre EABI_VER5
+  EF_ARM_ABI_FLOAT_HARD = 0x00000400U, // EABI_VER5
   EF_ARM_EABI_UNKNOWN = 0x00000000U,
   EF_ARM_EABI_VER1 = 0x01000000U,
   EF_ARM_EABI_VER2 = 0x02000000U,


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D49992.157977.patch
Type: text/x-patch
Size: 659 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180730/62101705/attachment.bin>


More information about the llvm-commits mailing list