[llvm] r262394 - [lanai] Add ELF enum value and relocations.
Jacques Pienaar via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 1 13:21:42 PST 2016
Author: jpienaar
Date: Tue Mar 1 15:21:42 2016
New Revision: 262394
URL: http://llvm.org/viewvc/llvm-project?rev=262394&view=rev
Log:
[lanai] Add ELF enum value and relocations.
Add ELF enum value and relocations for Lanai backed.
General Lanai backend discussion on llvm-dev thread "[RFC] Lanai backend" (http://lists.llvm.org/pipermail/llvm-dev/2016-February/095118.html).
Differential Revision: http://reviews.llvm.org/D17008
Added:
llvm/trunk/include/llvm/Support/ELFRelocs/Lanai.def
llvm/trunk/test/DebugInfo/Inputs/lanai-processes-relocations.elf (with props)
llvm/trunk/test/DebugInfo/Lanai/
llvm/trunk/test/DebugInfo/Lanai/lit.local.cfg
llvm/trunk/test/DebugInfo/Lanai/processes-relocations.ll
llvm/trunk/test/Object/Lanai/
llvm/trunk/test/Object/Lanai/lit.local.cfg
llvm/trunk/test/Object/Lanai/yaml2obj-elf-lanai-rel.yaml
llvm/trunk/test/tools/llvm-readobj/Inputs/relocs.obj.elf-lanai (with props)
llvm/trunk/test/tools/llvm-readobj/Inputs/trivial.obj.elf-lanai (with props)
Modified:
llvm/trunk/include/llvm/Object/ELFObjectFile.h
llvm/trunk/include/llvm/Object/RelocVisitor.h
llvm/trunk/include/llvm/Support/ELF.h
llvm/trunk/lib/MC/MCObjectFileInfo.cpp
llvm/trunk/lib/Object/ELF.cpp
llvm/trunk/test/tools/llvm-readobj/Inputs/relocs.py
llvm/trunk/test/tools/llvm-readobj/file-headers.test
llvm/trunk/test/tools/llvm-readobj/reloc-types.test
llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp
llvm/trunk/tools/llvm-readobj/ELFDumper.cpp
Modified: llvm/trunk/include/llvm/Object/ELFObjectFile.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Object/ELFObjectFile.h?rev=262394&r1=262393&r2=262394&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Object/ELFObjectFile.h (original)
+++ llvm/trunk/include/llvm/Object/ELFObjectFile.h Tue Mar 1 15:21:42 2016
@@ -835,6 +835,8 @@ StringRef ELFObjectFile<ELFT>::getFileFo
return "ELF32-avr";
case ELF::EM_HEXAGON:
return "ELF32-hexagon";
+ case ELF::EM_LANAI:
+ return "ELF32-lanai";
case ELF::EM_MIPS:
return "ELF32-mips";
case ELF::EM_PPC:
@@ -891,6 +893,8 @@ unsigned ELFObjectFile<ELFT>::getArch()
return Triple::avr;
case ELF::EM_HEXAGON:
return Triple::hexagon;
+ case ELF::EM_LANAI:
+ return Triple::lanai;
case ELF::EM_MIPS:
switch (EF.getHeader()->e_ident[ELF::EI_CLASS]) {
case ELF::ELFCLASS32:
Modified: llvm/trunk/include/llvm/Object/RelocVisitor.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Object/RelocVisitor.h?rev=262394&r1=262393&r2=262394&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Object/RelocVisitor.h (original)
+++ llvm/trunk/include/llvm/Object/RelocVisitor.h Tue Mar 1 15:21:42 2016
@@ -175,6 +175,14 @@ private:
case llvm::ELF::R_ARM_ABS32:
return visitELF_ARM_ABS32(R, Value);
}
+ case Triple::lanai:
+ switch (RelocType) {
+ case llvm::ELF::R_LANAI_32:
+ return visitELF_Lanai_32(R, Value);
+ default:
+ HasError = true;
+ return RelocToApply();
+ }
case Triple::mipsel:
case Triple::mips:
switch (RelocType) {
@@ -309,6 +317,13 @@ private:
int64_t Addend = getELFAddend(R);
uint32_t Res = (Value + Addend) & 0xFFFFFFFF;
return RelocToApply(Res, 4);
+ }
+
+ /// Lanai ELF
+ RelocToApply visitELF_Lanai_32(RelocationRef R, uint64_t Value) {
+ int64_t Addend = getELFAddend(R);
+ uint32_t Res = (Value + Addend) & 0xFFFFFFFF;
+ return RelocToApply(Res, 4);
}
/// MIPS ELF
Modified: llvm/trunk/include/llvm/Support/ELF.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Support/ELF.h?rev=262394&r1=262393&r2=262394&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Support/ELF.h (original)
+++ llvm/trunk/include/llvm/Support/ELF.h Tue Mar 1 15:21:42 2016
@@ -315,6 +315,11 @@ enum {
// such numbers for an official value for WebAssembly. As soon as one is
// allocated, this enum will be updated to use it.
EM_WEBASSEMBLY = 0x4157, // WebAssembly architecture
+
+ // A request has been made to the maintainer of the official registry for
+ // an official value for Lanai. As soon as one is allocated, this enum will be
+ // updated to use it.
+ EM_LANAI = 0x8123, // Lanai 32-bit processor
};
// Object file classes.
@@ -589,6 +594,11 @@ enum {
#include "ELFRelocs/Hexagon.def"
};
+// ELF Relocation type for Lanai.
+enum {
+#include "ELFRelocs/Lanai.def"
+};
+
// ELF Relocation types for S390/zSeries
enum {
#include "ELFRelocs/SystemZ.def"
Added: llvm/trunk/include/llvm/Support/ELFRelocs/Lanai.def
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Support/ELFRelocs/Lanai.def?rev=262394&view=auto
==============================================================================
--- llvm/trunk/include/llvm/Support/ELFRelocs/Lanai.def (added)
+++ llvm/trunk/include/llvm/Support/ELFRelocs/Lanai.def Tue Mar 1 15:21:42 2016
@@ -0,0 +1,19 @@
+
+#ifndef ELF_RELOC
+#error "ELF_RELOC must be defined"
+#endif
+
+// No relocation
+ELF_RELOC(R_LANAI_NONE, 0)
+// 21-bit symbol relocation
+ELF_RELOC(R_LANAI_21, 1)
+// 21-bit symbol relocation with last two bits masked to 0
+ELF_RELOC(R_LANAI_21_F, 2)
+// 25-bit branch targets
+ELF_RELOC(R_LANAI_25, 3)
+// General 32-bit relocation
+ELF_RELOC(R_LANAI_32, 4)
+// Upper 16-bits of a symbolic relocation
+ELF_RELOC(R_LANAI_HI16, 5)
+// Lower 16-bits of a symbolic relocation
+ELF_RELOC(R_LANAI_LO16, 6)
Modified: llvm/trunk/lib/MC/MCObjectFileInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MCObjectFileInfo.cpp?rev=262394&r1=262393&r2=262394&view=diff
==============================================================================
--- llvm/trunk/lib/MC/MCObjectFileInfo.cpp (original)
+++ llvm/trunk/lib/MC/MCObjectFileInfo.cpp Tue Mar 1 15:21:42 2016
@@ -356,6 +356,11 @@ void MCObjectFileInfo::initELFMCObjectFi
TTypeEncoding = dwarf::DW_EH_PE_absptr;
}
break;
+ case Triple::lanai:
+ LSDAEncoding = dwarf::DW_EH_PE_absptr;
+ PersonalityEncoding = dwarf::DW_EH_PE_absptr;
+ TTypeEncoding = dwarf::DW_EH_PE_absptr;
+ break;
case Triple::mips:
case Triple::mipsel:
case Triple::mips64:
Modified: llvm/trunk/lib/Object/ELF.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Object/ELF.cpp?rev=262394&r1=262393&r2=262394&view=diff
==============================================================================
--- llvm/trunk/lib/Object/ELF.cpp (original)
+++ llvm/trunk/lib/Object/ELF.cpp Tue Mar 1 15:21:42 2016
@@ -61,6 +61,13 @@ StringRef getELFRelocationTypeName(uint3
break;
}
break;
+ case ELF::EM_LANAI:
+ switch (Type) {
+#include "llvm/Support/ELFRelocs/Lanai.def"
+ default:
+ break;
+ }
+ break;
case ELF::EM_PPC:
switch (Type) {
#include "llvm/Support/ELFRelocs/PowerPC.def"
Added: llvm/trunk/test/DebugInfo/Inputs/lanai-processes-relocations.elf
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/Inputs/lanai-processes-relocations.elf?rev=262394&view=auto
==============================================================================
Binary file - no diff available.
Propchange: llvm/trunk/test/DebugInfo/Inputs/lanai-processes-relocations.elf
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: llvm/trunk/test/DebugInfo/Lanai/lit.local.cfg
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/Lanai/lit.local.cfg?rev=262394&view=auto
==============================================================================
--- llvm/trunk/test/DebugInfo/Lanai/lit.local.cfg (added)
+++ llvm/trunk/test/DebugInfo/Lanai/lit.local.cfg Tue Mar 1 15:21:42 2016
@@ -0,0 +1,2 @@
+if not 'Lanai' in config.root.targets:
+ config.unsupported = True
Added: llvm/trunk/test/DebugInfo/Lanai/processes-relocations.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/Lanai/processes-relocations.ll?rev=262394&view=auto
==============================================================================
--- llvm/trunk/test/DebugInfo/Lanai/processes-relocations.ll (added)
+++ llvm/trunk/test/DebugInfo/Lanai/processes-relocations.ll Tue Mar 1 15:21:42 2016
@@ -0,0 +1,19 @@
+; RUN: llvm-dwarfdump %p/Inputs/lanai-processes-relocations.elf 2>&1 | FileCheck %s
+
+; FIXME: Use llc with this file as input instead of binary file.
+; NOTE: this test is currently not using llc, but using a binary input as the
+; rest of the backend is not yet in tree. Once the Lanai backend is in tree,
+; the binary file will be removed and this test will use llc.
+
+; CHECK-NOT: failed to compute relocation
+
+!llvm.dbg.cu = !{!0}
+!llvm.module.flags = !{!3, !4}
+!llvm.ident = !{!5}
+
+!0 = !{i32 786449, !1, i32 12, !"clang version 3.6.0 ", i1 false, !"", i32 0, !2, !2, !2, !2, !2, !"", i32 1} ; [ DW_TAG_compile_unit ] [/a/empty.c] [DW_LANG_C99]
+!1 = !{!"empty.c", !"/a"}
+!2 = !{}
+!3 = !{i32 2, !"Dwarf Version", i32 4}
+!4 = !{i32 2, !"Debug Info Version", i32 3}
+!5 = !{!"clang version 3.6.0 "}
Added: llvm/trunk/test/Object/Lanai/lit.local.cfg
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Object/Lanai/lit.local.cfg?rev=262394&view=auto
==============================================================================
--- llvm/trunk/test/Object/Lanai/lit.local.cfg (added)
+++ llvm/trunk/test/Object/Lanai/lit.local.cfg Tue Mar 1 15:21:42 2016
@@ -0,0 +1,2 @@
+if not 'Lanai' in config.root.targets:
+ config.unsupported = True
Added: llvm/trunk/test/Object/Lanai/yaml2obj-elf-lanai-rel.yaml
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Object/Lanai/yaml2obj-elf-lanai-rel.yaml?rev=262394&view=auto
==============================================================================
--- llvm/trunk/test/Object/Lanai/yaml2obj-elf-lanai-rel.yaml (added)
+++ llvm/trunk/test/Object/Lanai/yaml2obj-elf-lanai-rel.yaml Tue Mar 1 15:21:42 2016
@@ -0,0 +1,66 @@
+# RUN: yaml2obj -format=elf %s > %t
+# RUN: llvm-readobj -r %t | FileCheck %s
+
+# CHECK : Relocations [
+# CHECK-NEXT: Section (2) .rel.text {
+# CHECK-NEXT: 0x0 R_LANAI_32 main 0x0
+# CHECK-NEXT: 0x4 R_LANAI_NONE - 0x0
+# CHECK-NEXT: 0x8 R_LANAI_21 - 0x0
+# CHECK-NEXT: 0xC R_LANAI_21_F - 0x0
+# CHECK-NEXT: 0x10 R_LANAI_25 - 0x0
+# CHECK-NEXT: 0x14 R_LANAI_HI16 - 0x0
+# CHECK-NEXT: 0x18 R_LANAI_LO16 - 0x0
+# CHECK-NEXT: }
+# CHECK-NEXT: ]
+
+FileHeader:
+ Class: ELFCLASS32
+ Data: ELFDATA2LSB
+ Type: ET_REL
+ Machine: EM_LANAI
+Sections:
+ - Type: SHT_PROGBITS
+ Name: .text
+ Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
+ AddressAlign: 0x04
+ Content: 0000000000000000
+ - Type: SHT_REL
+ Name: .rel.text
+ Link: .symtab
+ Info: .text
+ AddressAlign: 0x04
+ Relocations:
+ - Offset: 0x0
+ Symbol: main
+ Type: R_LANAI_32
+ - Offset: 0x4
+ Symbol: a
+ Type: R_LANAI_NONE
+ - Offset: 0x8
+ Symbol: b
+ Type: R_LANAI_21
+ - Offset: 0xC
+ Symbol: c
+ Type: R_LANAI_21_F
+ - Offset: 0x10
+ Symbol: d
+ Type: R_LANAI_25
+ - Offset: 0x14
+ Symbol: e
+ Type: R_LANAI_HI16
+ - Offset: 0x18
+ Symbol: f
+ Type: R_LANAI_LO16
+
+
+Symbols:
+ Local:
+ - Name: .text
+ Type: STT_SECTION
+ Section: .text
+
+ Global:
+ - Name: main
+ Type: STT_FUNC
+ Section: .text
+ Size: 0x08
Added: llvm/trunk/test/tools/llvm-readobj/Inputs/relocs.obj.elf-lanai
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-readobj/Inputs/relocs.obj.elf-lanai?rev=262394&view=auto
==============================================================================
Binary file - no diff available.
Propchange: llvm/trunk/test/tools/llvm-readobj/Inputs/relocs.obj.elf-lanai
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Modified: llvm/trunk/test/tools/llvm-readobj/Inputs/relocs.py
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-readobj/Inputs/relocs.py?rev=262394&r1=262393&r2=262394&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-readobj/Inputs/relocs.py (original)
+++ llvm/trunk/test/tools/llvm-readobj/Inputs/relocs.py Tue Mar 1 15:21:42 2016
@@ -991,6 +991,14 @@ class Relocs_Elf_Hexagon(Enum):
R_HEX_TPREL_16_X = 84
R_HEX_TPREL_11_X = 85
+class Relocs_Elf_Lanai(Enum):
+ R_LANAI_NONE = 0
+ R_LANAI_21 = 1
+ R_LANAI_21_F = 2
+ R_LANAI_25 = 3
+ R_LANAI_32 = 4
+ R_LANAI_HI16 = 5
+ R_LANAI_LO16 = 6
class Relocs_Coff_i386(Enum):
IMAGE_REL_I386_ABSOLUTE = 0x0000
@@ -1103,6 +1111,7 @@ craftElf("relocs.obj.elf-arm", "arm
craftElf("relocs.obj.elf-mips", "mips-unknown-linux", Relocs_Elf_Mips.entries(), "lui $2, %hi(sym)")
craftElf("relocs.obj.elf-mips64el", "mips64el-unknown-linux", Relocs_Elf_Mips.entries(), "lui $2, %hi(sym)")
#craftElf("relocs.obj.elf-hexagon", "hexagon-unknown-unknown", Relocs_Elf_Hexagon.entries(), ...)
+#craftElf("relocs.obj.elf-lanai", "lanai-unknown-unknown", Relocs_Elf_Lanai.entries(), "mov hi(x), %r4")
craftCoff("relocs.obj.coff-i386", "i386-pc-win32", Relocs_Coff_i386.entries(), "mov foo at imgrel(%ebx, %ecx, 4), %eax")
craftCoff("relocs.obj.coff-x86_64", "x86_64-pc-win32", Relocs_Coff_X86_64.entries(), "mov foo at imgrel(%ebx, %ecx, 4), %eax")
Added: llvm/trunk/test/tools/llvm-readobj/Inputs/trivial.obj.elf-lanai
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-readobj/Inputs/trivial.obj.elf-lanai?rev=262394&view=auto
==============================================================================
Binary file - no diff available.
Propchange: llvm/trunk/test/tools/llvm-readobj/Inputs/trivial.obj.elf-lanai
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Modified: llvm/trunk/test/tools/llvm-readobj/file-headers.test
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-readobj/file-headers.test?rev=262394&r1=262393&r2=262394&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-readobj/file-headers.test (original)
+++ llvm/trunk/test/tools/llvm-readobj/file-headers.test Tue Mar 1 15:21:42 2016
@@ -24,6 +24,8 @@ RUN: llvm-readobj -h %p/Inputs/magic.cof
RUN: | FileCheck %s -check-prefix COFF-UNKNOWN
RUN: llvm-readobj -h %p/Inputs/magic.coff-importlib \
RUN: | FileCheck %s -check-prefix COFF-IMPORTLIB
+RUN: llvm-readobj -h %p/Inputs/trivial.obj.elf-lanai \
+RUN: | FileCheck %s -check-prefix ELF-LANAI
COFF-ARM: File: {{(.*[/\\])?}}trivial.obj.coff-arm
COFF-ARM-NEXT: Format: COFF-ARM
@@ -335,3 +337,33 @@ COFF-IMPORTLIB-NEXT: Type: code
COFF-IMPORTLIB-NEXT: Name type: noprefix
COFF-IMPORTLIB-NEXT: Symbol: __imp__func
COFF-IMPORTLIB-NEXT: Symbol: _func
+
+ELF-LANAI: Format: ELF32-lanai
+ELF-LANAI-NEXT: Arch: lanai
+ELF-LANAI-NEXT: AddressSize: 32bit
+ELF-LANAI-NEXT: LoadName:
+ELF-LANAI-NEXT: ElfHeader {
+ELF-LANAI-NEXT: Ident {
+ELF-LANAI-NEXT: Magic: (7F 45 4C 46)
+ELF-LANAI-NEXT: Class: 32-bit (0x1)
+ELF-LANAI-NEXT: DataEncoding: BigEndian (0x2)
+ELF-LANAI-NEXT: FileVersion: 1
+ELF-LANAI-NEXT: OS/ABI: SystemV (0x0)
+ELF-LANAI-NEXT: ABIVersion: 0
+ELF-LANAI-NEXT: Unused: (00 00 00 00 00 00 00)
+ELF-LANAI-NEXT: }
+ELF-LANAI-NEXT: Type: Relocatable (0x1)
+ELF-LANAI-NEXT: Machine: EM_LANAI (0x8123)
+ELF-LANAI-NEXT: Version: 1
+ELF-LANAI-NEXT: Entry: 0x0
+ELF-LANAI-NEXT: ProgramHeaderOffset: 0x0
+ELF-LANAI-NEXT: SectionHeaderOffset: 0x1A0
+ELF-LANAI-NEXT: Flags [ (0x0)
+ELF-LANAI-NEXT: ]
+ELF-LANAI-NEXT: HeaderSize: 52
+ELF-LANAI-NEXT: ProgramHeaderEntrySize: 0
+ELF-LANAI-NEXT: ProgramHeaderCount: 0
+ELF-LANAI-NEXT: SectionHeaderEntrySize: 40
+ELF-LANAI-NEXT: SectionHeaderCount: 8
+ELF-LANAI-NEXT: StringTableSectionIndex: 1
+ELF-LANAI-NEXT: }
Modified: llvm/trunk/test/tools/llvm-readobj/reloc-types.test
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-readobj/reloc-types.test?rev=262394&r1=262393&r2=262394&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-readobj/reloc-types.test (original)
+++ llvm/trunk/test/tools/llvm-readobj/reloc-types.test Tue Mar 1 15:21:42 2016
@@ -7,6 +7,7 @@ RUN: llvm-readobj -r -expand-relocs %p/I
RUN: llvm-readobj -r -expand-relocs %p/Inputs/relocs.obj.elf-x86_64 | FileCheck %s -check-prefix ELF-64
RUN: llvm-readobj -r -expand-relocs %p/Inputs/relocs.obj.elf-aarch64 | FileCheck %s -check-prefix ELF-AARCH64
RUN: llvm-readobj -r -expand-relocs %p/Inputs/relocs.obj.elf-arm | FileCheck %s -check-prefix ELF-ARM
+RUN: llvm-readobj -r -expand-relocs %p/Inputs/relocs.obj.elf-lanai | FileCheck %s -check-prefix ELF-LANAI
RUN: llvm-readobj -r -expand-relocs %p/Inputs/relocs.obj.elf-mips | FileCheck %s -check-prefix ELF-MIPS
RUN: llvm-readobj -r -expand-relocs %p/Inputs/relocs.obj.elf-mips64el | FileCheck %s -check-prefix ELF-MIPS64EL
RUN: llvm-readobj -r -expand-relocs %p/Inputs/relocs.obj.elf-ppc64 | FileCheck %s -check-prefix ELF-PPC64
@@ -405,6 +406,14 @@ ELF-ARM: Type: R_ARM_THM_TLS_DESCSEQ16 (
ELF-ARM: Type: R_ARM_THM_TLS_DESCSEQ32 (130)
ELF-ARM: Type: R_ARM_IRELATIVE (160)
+ELF-LANAI: Type: R_LANAI_NONE (0)
+ELF-LANAI: Type: R_LANAI_21 (1)
+ELF-LANAI: Type: R_LANAI_21_F (2)
+ELF-LANAI: Type: R_LANAI_25 (3)
+ELF-LANAI: Type: R_LANAI_32 (4)
+ELF-LANAI: Type: R_LANAI_HI16 (5)
+ELF-LANAI: Type: R_LANAI_LO16 (6)
+
ELF-MIPS: Type: R_MIPS_NONE (0)
ELF-MIPS: Type: R_MIPS_16 (1)
ELF-MIPS: Type: R_MIPS_32 (2)
Modified: llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp?rev=262394&r1=262393&r2=262394&view=diff
==============================================================================
--- llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp (original)
+++ llvm/trunk/tools/llvm-objdump/llvm-objdump.cpp Tue Mar 1 15:21:42 2016
@@ -476,6 +476,7 @@ static std::error_code getRelocationValu
res = "Unknown";
}
break;
+ case ELF::EM_LANAI:
case ELF::EM_AARCH64: {
std::string fmtbuf;
raw_string_ostream fmt(fmtbuf);
Modified: llvm/trunk/tools/llvm-readobj/ELFDumper.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/tools/llvm-readobj/ELFDumper.cpp?rev=262394&r1=262393&r2=262394&view=diff
==============================================================================
--- llvm/trunk/tools/llvm-readobj/ELFDumper.cpp (original)
+++ llvm/trunk/tools/llvm-readobj/ELFDumper.cpp Tue Mar 1 15:21:42 2016
@@ -769,7 +769,8 @@ static const EnumEntry<unsigned> ElfMach
ENUM_ENT(EM_78KOR, "EM_78KOR"),
ENUM_ENT(EM_56800EX, "EM_56800EX"),
ENUM_ENT(EM_AMDGPU, "EM_AMDGPU"),
- ENUM_ENT(EM_WEBASSEMBLY, "EM_WEBASSEMBLY")
+ ENUM_ENT(EM_WEBASSEMBLY, "EM_WEBASSEMBLY"),
+ ENUM_ENT(EM_LANAI, "EM_LANAI"),
};
static const EnumEntry<unsigned> ElfSymbolBindings[] = {
More information about the llvm-commits
mailing list