[llvm] r262394 - [lanai] Add ELF enum value and relocations.
Jacques Pienaar via llvm-commits
llvm-commits at lists.llvm.org
Sun Mar 13 03:38:20 PDT 2016
Hi,
My apologies I didn't see this till now as I was traveling. I see Eric
fixed this in r263319.
Jacques
On Thu, Mar 10, 2016 at 8:19 AM, Vassil Vassilev <v.g.vassilev at gmail.com>
wrote:
> Hi,
>
> This broke the llvm selfhost module build (even more?). Could you add this
> fix please:
> diff --git a/include/llvm/module.modulemap b/include/llvm/module.modulemap
> index 708d33c..aa7d469 100644
> --- a/include/llvm/module.modulemap
> +++ b/include/llvm/module.modulemap
> @@ -208,6 +208,7 @@ module LLVM_Utils {
> textual header "Support/ELFRelocs/SystemZ.def"
> textual header "Support/ELFRelocs/x86_64.def"
> textual header "Support/ELFRelocs/WebAssembly.def"
> + textual header "Support/ELFRelocs/Lanai.def"
> }
>
> // This part of the module is usable from both C and C++ code.
>
> --Vassil
>
> On 01/03/16 22:21, Jacques Pienaar via llvm-commits wrote:
>
>> 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/MCObje
>> ctFileInfo.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/EL
>> F.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/DebugInf
>> o/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/DebugInf
>> o/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/DebugInf
>> o/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/ll
>> vm-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-lan
>> ai
>> ------------------------------------------------------------
>> ------------------
>> 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/ll
>> vm-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/ll
>> vm-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/ll
>> vm-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/ll
>> vm-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-ob
>> jdump/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-re
>> adobj/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[] = {
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160313/bf109499/attachment-0001.html>
More information about the llvm-commits
mailing list