[lld] r249760 - [ELF2] Make the system page size a target-dependent property
Hal Finkel via llvm-commits
llvm-commits at lists.llvm.org
Thu Oct 8 15:23:55 PDT 2015
Author: hfinkel
Date: Thu Oct 8 17:23:54 2015
New Revision: 249760
URL: http://llvm.org/viewvc/llvm-project?rev=249760&view=rev
Log:
[ELF2] Make the system page size a target-dependent property
The required page alignment is different on different targets. On PowerPC, for
example, we need 64K pages (the loader won't set different permissions on a
finer granularity than that). I've set the existing targets to what I believe
to be the correct values, and have updated the regression tests accordingly.
Modified:
lld/trunk/ELF/Target.cpp
lld/trunk/ELF/Target.h
lld/trunk/ELF/Writer.cpp
lld/trunk/test/elf2/basic-mips.s
lld/trunk/test/elf2/basic32be.s
lld/trunk/test/elf2/basic64be.s
lld/trunk/test/elf2/emulation.s
Modified: lld/trunk/ELF/Target.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/Target.cpp?rev=249760&r1=249759&r2=249760&view=diff
==============================================================================
--- lld/trunk/ELF/Target.cpp (original)
+++ lld/trunk/ELF/Target.cpp Thu Oct 8 17:23:54 2015
@@ -202,6 +202,7 @@ PPC64TargetInfo::PPC64TargetInfo() {
// PCRelReloc = FIXME
// GotReloc = FIXME
PltEntrySize = 32;
+ PageSize = 65536;
VAStart = 0x10000000;
}
void PPC64TargetInfo::writePltEntry(uint8_t *Buf, uint64_t GotEntryAddr,
@@ -235,6 +236,7 @@ void PPC64TargetInfo::relocateOne(uint8_
PPCTargetInfo::PPCTargetInfo() {
// PCRelReloc = FIXME
// GotReloc = FIXME
+ PageSize = 65536;
VAStart = 0x10000000;
}
void PPCTargetInfo::writePltEntry(uint8_t *Buf, uint64_t GotEntryAddr,
@@ -347,6 +349,7 @@ MipsTargetInfo::MipsTargetInfo() {
// PCRelReloc = FIXME
// GotReloc = FIXME
DefaultEntry = "__start";
+ PageSize = 65536;
VAStart = 0x400000;
}
Modified: lld/trunk/ELF/Target.h
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/Target.h?rev=249760&r1=249759&r2=249760&view=diff
==============================================================================
--- lld/trunk/ELF/Target.h (original)
+++ lld/trunk/ELF/Target.h Thu Oct 8 17:23:54 2015
@@ -21,6 +21,7 @@ class SymbolBody;
class TargetInfo {
public:
llvm::StringRef getDefaultEntry() const { return DefaultEntry; }
+ unsigned getPageSize() const { return PageSize; }
uint64_t getVAStart() const { return VAStart; }
unsigned getPCRelReloc() const { return PCRelReloc; }
unsigned getGotReloc() const { return GotReloc; }
@@ -39,6 +40,7 @@ public:
virtual ~TargetInfo();
protected:
+ unsigned PageSize = 4096;
uint64_t VAStart;
unsigned PCRelReloc;
unsigned GotRefReloc;
Modified: lld/trunk/ELF/Writer.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/Writer.cpp?rev=249760&r1=249759&r2=249760&view=diff
==============================================================================
--- lld/trunk/ELF/Writer.cpp (original)
+++ lld/trunk/ELF/Writer.cpp Thu Oct 8 17:23:54 2015
@@ -22,8 +22,6 @@ using namespace llvm::object;
using namespace lld;
using namespace lld::elf2;
-static const int PageSize = 4096;
-
namespace {
static uint32_t toPHDRFlags(uint64_t Flags) {
@@ -43,7 +41,7 @@ template <class ELFT> struct ProgramHead
std::memset(&Header, 0, sizeof(Elf_Phdr));
Header.p_type = Type;
Header.p_flags = Flags;
- Header.p_align = PageSize;
+ Header.p_align = Target->getPageSize();
Header.p_offset = FileOff;
Header.p_vaddr = VA;
Header.p_paddr = VA;
@@ -484,8 +482,8 @@ template <class ELFT> void Writer<ELFT>:
// Reserve space for PHDRs.
ProgramHeaderOff = FileOff;
- FileOff = RoundUpToAlignment(FileOff, PageSize);
- VA = RoundUpToAlignment(VA, PageSize);
+ FileOff = RoundUpToAlignment(FileOff, Target->getPageSize());
+ VA = RoundUpToAlignment(VA, Target->getPageSize());
if (needsInterpSection())
PHDRs.push_back(&InterpPHDR);
@@ -494,7 +492,7 @@ template <class ELFT> void Writer<ELFT>:
PHDRs.push_back(&FileHeaderPHDR);
FileHeaderPHDR.Header.p_vaddr = getVAStart();
FileHeaderPHDR.Header.p_paddr = getVAStart();
- FileHeaderPHDR.Header.p_align = PageSize;
+ FileHeaderPHDR.Header.p_align = Target->getPageSize();
for (OutputSectionBase<ELFT::Is64Bits> *Sec : OutputSections) {
Out<ELFT>::StrTab->add(Sec->getName());
@@ -512,8 +510,8 @@ template <class ELFT> void Writer<ELFT>:
}
if (needsPHDR<ELFT>(Sec)) {
- VA = RoundUpToAlignment(VA, PageSize);
- FileOff = RoundUpToAlignment(FileOff, PageSize);
+ VA = RoundUpToAlignment(VA, Target->getPageSize());
+ FileOff = RoundUpToAlignment(FileOff, Target->getPageSize());
PHDRs.push_back(new (PAlloc)
ProgramHeader<ELFT>(PT_LOAD, Flags, FileOff, VA));
}
@@ -579,7 +577,7 @@ template <class ELFT> void Writer<ELFT>:
EHdr->e_shstrndx = Out<ELFT>::StrTab->getSectionIndex();
// If nothing was merged into the file header PT_LOAD, set the size correctly.
- if (FileHeaderPHDR.Header.p_filesz == PageSize) {
+ if (FileHeaderPHDR.Header.p_filesz == Target->getPageSize()) {
uint64_t Size = sizeof(Elf_Ehdr) + sizeof(Elf_Phdr) * PHDRs.size();
FileHeaderPHDR.Header.p_filesz = Size;
FileHeaderPHDR.Header.p_memsz = Size;
Modified: lld/trunk/test/elf2/basic-mips.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/elf2/basic-mips.s?rev=249760&r1=249759&r2=249760&view=diff
==============================================================================
--- lld/trunk/test/elf2/basic-mips.s (original)
+++ lld/trunk/test/elf2/basic-mips.s Thu Oct 8 17:23:54 2015
@@ -25,9 +25,9 @@ __start:
# CHECK-NEXT: Type: Executable (0x2)
# CHECK-NEXT: Machine: EM_MIPS (0x8)
# CHECK-NEXT: Version: 1
-# CHECK-NEXT: Entry: 0x402000
+# CHECK-NEXT: Entry: 0x420000
# CHECK-NEXT: ProgramHeaderOffset: 0x34
-# CHECK-NEXT: SectionHeaderOffset: 0x2074
+# CHECK-NEXT: SectionHeaderOffset: 0x20074
# CHECK-NEXT: Flags [ (0x0)
# CHECK-NEXT: ]
# CHECK-NEXT: HeaderSize: 52
@@ -59,7 +59,7 @@ __start:
# CHECK-NEXT: Flags [ (0x2)
# CHECK-NEXT: SHF_ALLOC (0x2)
# CHECK-NEXT: ]
-# CHECK-NEXT: Address: 0x401000
+# CHECK-NEXT: Address: 0x410000
# CHECK-NEXT: Offset: 0x1000
# CHECK-NEXT: Size: 24
# CHECK-NEXT: Link: 0
@@ -74,8 +74,8 @@ __start:
# CHECK-NEXT: Flags [ (0x2)
# CHECK-NEXT: SHF_ALLOC (0x2)
# CHECK-NEXT: ]
-# CHECK-NEXT: Address: 0x401018
-# CHECK-NEXT: Offset: 0x1018
+# CHECK-NEXT: Address: 0x410018
+# CHECK-NEXT: Offset: 0x10018
# CHECK-NEXT: Size: 24
# CHECK-NEXT: Link: 0
# CHECK-NEXT: Info: 0
@@ -90,7 +90,7 @@ __start:
# CHECK-NEXT: SHF_ALLOC (0x2)
# CHECK-NEXT: SHF_EXECINSTR (0x4)
# CHECK-NEXT: ]
-# CHECK-NEXT: Address: 0x402000
+# CHECK-NEXT: Address: 0x420000
# CHECK-NEXT: Offset: 0x2000
# CHECK-NEXT: Size: 12
# CHECK-NEXT: Link: 0
@@ -106,8 +106,8 @@ __start:
# CHECK-NEXT: SHF_ALLOC (0x2)
# CHECK-NEXT: SHF_WRITE (0x1)
# CHECK-NEXT: ]
-# CHECK-NEXT: Address: 0x402010
-# CHECK-NEXT: Offset: 0x2010
+# CHECK-NEXT: Address: 0x420010
+# CHECK-NEXT: Offset: 0x20010
# CHECK-NEXT: Size: 0
# CHECK-NEXT: Link: 0
# CHECK-NEXT: Info: 0
@@ -122,8 +122,8 @@ __start:
# CHECK-NEXT: SHF_ALLOC (0x2)
# CHECK-NEXT: SHF_WRITE (0x1)
# CHECK-NEXT: ]
-# CHECK-NEXT: Address: 0x402010
-# CHECK-NEXT: Offset: 0x2010
+# CHECK-NEXT: Address: 0x420010
+# CHECK-NEXT: Offset: 0x20010
# CHECK-NEXT: Size: 0
# CHECK-NEXT: Link: 0
# CHECK-NEXT: Info: 0
@@ -137,7 +137,7 @@ __start:
# CHECK-NEXT: Flags [ (0x0)
# CHECK-NEXT: ]
# CHECK-NEXT: Address: 0x0
-# CHECK-NEXT: Offset: 0x2010
+# CHECK-NEXT: Offset: 0x20010
# CHECK-NEXT: Size: 32
# CHECK-NEXT: Link: 7
# CHECK-NEXT: Info: 1
@@ -151,7 +151,7 @@ __start:
# CHECK-NEXT: Flags [ (0x0)
# CHECK-NEXT: ]
# CHECK-NEXT: Address: 0x0
-# CHECK-NEXT: Offset: 0x2030
+# CHECK-NEXT: Offset: 0x20030
# CHECK-NEXT: Size: 66
# CHECK-NEXT: Link: 0
# CHECK-NEXT: Info: 0
@@ -171,7 +171,7 @@ __start:
# CHECK-NEXT: }
# CHECK-NEXT: Symbol {
# CHECK-NEXT: Name: __start (7)
-# CHECK-NEXT: Value: 0x402000
+# CHECK-NEXT: Value: 0x420000
# CHECK-NEXT: Size: 0
# CHECK-NEXT: Binding: Global (0x1)
# CHECK-NEXT: Type: None (0x0)
@@ -185,24 +185,24 @@ __start:
# CHECK-NEXT: Offset: 0x0
# CHECK-NEXT: VirtualAddress: 0x400000
# CHECK-NEXT: PhysicalAddress: 0x400000
-# CHECK-NEXT: FileSize: 4144
-# CHECK-NEXT: MemSize: 4144
+# CHECK-NEXT: FileSize: 65584
+# CHECK-NEXT: MemSize: 65584
# CHECK-NEXT: Flags [ (0x4)
# CHECK-NEXT: PF_R (0x4)
# CHECK-NEXT: ]
-# CHECK-NEXT: Alignment: 4096
+# CHECK-NEXT: Alignment: 65536
# CHECK-NEXT: }
# CHECK-NEXT: ProgramHeader {
# CHECK-NEXT: Type: PT_LOAD (0x1)
# CHECK-NEXT: Offset: 0x2000
-# CHECK-NEXT: VirtualAddress: 0x402000
-# CHECK-NEXT: PhysicalAddress: 0x402000
+# CHECK-NEXT: VirtualAddress: 0x420000
+# CHECK-NEXT: PhysicalAddress: 0x420000
# CHECK-NEXT: FileSize: 16
# CHECK-NEXT: MemSize: 16
# CHECK-NEXT: Flags [ (0x5)
# CHECK-NEXT: PF_R (0x4)
# CHECK-NEXT: PF_X (0x1)
# CHECK-NEXT: ]
-# CHECK-NEXT: Alignment: 4096
+# CHECK-NEXT: Alignment: 65536
# CHECK-NEXT: }
# CHECK-NEXT: ]
Modified: lld/trunk/test/elf2/basic32be.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/elf2/basic32be.s?rev=249760&r1=249759&r2=249760&view=diff
==============================================================================
--- lld/trunk/test/elf2/basic32be.s (original)
+++ lld/trunk/test/elf2/basic32be.s Thu Oct 8 17:23:54 2015
@@ -23,9 +23,9 @@ _start:
# CHECK-NEXT: Type: Executable (0x2)
# CHECK-NEXT: Machine: EM_PPC (0x14)
# CHECK-NEXT: Version: 1
-# CHECK-NEXT: Entry: 0x10001000
+# CHECK-NEXT: Entry: 0x10010000
# CHECK-NEXT: ProgramHeaderOffset: 0x34
-# CHECK-NEXT: SectionHeaderOffset: 0x1058
+# CHECK-NEXT: SectionHeaderOffset: 0x10058
# CHECK-NEXT: Flags [ (0x0)
# CHECK-NEXT: ]
# CHECK-NEXT: HeaderSize: 52
@@ -58,7 +58,7 @@ _start:
# CHECK-NEXT: SHF_ALLOC (0x2)
# CHECK-NEXT: SHF_EXECINSTR (0x4)
# CHECK-NEXT: ]
-# CHECK-NEXT: Address: 0x10001000
+# CHECK-NEXT: Address: 0x10010000
# CHECK-NEXT: Offset: 0x1000
# CHECK-NEXT: Size: 12
# CHECK-NEXT: Link: 0
@@ -74,8 +74,8 @@ _start:
# CHECK-NEXT: SHF_ALLOC (0x2)
# CHECK-NEXT: SHF_WRITE (0x1)
# CHECK-NEXT: ]
-# CHECK-NEXT: Address: 0x1000100C
-# CHECK-NEXT: Offset: 0x100C
+# CHECK-NEXT: Address: 0x1001000C
+# CHECK-NEXT: Offset: 0x1000C
# CHECK-NEXT: Size: 0
# CHECK-NEXT: Link: 0
# CHECK-NEXT: Info: 0
@@ -90,8 +90,8 @@ _start:
# CHECK-NEXT: SHF_ALLOC (0x2)
# CHECK-NEXT: SHF_WRITE (0x1)
# CHECK-NEXT: ]
-# CHECK-NEXT: Address: 0x1000100C
-# CHECK-NEXT: Offset: 0x100C
+# CHECK-NEXT: Address: 0x1001000C
+# CHECK-NEXT: Offset: 0x1000C
# CHECK-NEXT: Size: 0
# CHECK-NEXT: Link: 0
# CHECK-NEXT: Info: 0
@@ -105,7 +105,7 @@ _start:
# CHECK-NEXT: Flags [
# CHECK-NEXT: ]
# CHECK-NEXT: Address: 0x0
-# CHECK-NEXT: Offset: 0x100C
+# CHECK-NEXT: Offset: 0x1000C
# CHECK-NEXT: Size: 32
# CHECK-NEXT: Link: 5
# CHECK-NEXT: Info: 1
@@ -119,7 +119,7 @@ _start:
# CHECK-NEXT: Flags [ (0x0)
# CHECK-NEXT: ]
# CHECK-NEXT: Address: 0x0
-# CHECK-NEXT: Offset: 0x102C
+# CHECK-NEXT: Offset: 0x1002C
# CHECK-NEXT: Size: 41
# CHECK-NEXT: Link: 0
# CHECK-NEXT: Info: 0
@@ -138,19 +138,19 @@ _start:
# CHECK-NEXT: Flags [
# CHECK-NEXT: PF_R
# CHECK-NEXT: ]
-# CHECK-NEXT: Alignment: 4096
+# CHECK-NEXT: Alignment: 65536
# CHECK-NEXT: }
# CHECK-NEXT: ProgramHeader {
# CHECK-NEXT: Type: PT_LOAD (0x1)
# CHECK-NEXT: Offset: 0x1000
-# CHECK-NEXT: VirtualAddress: 0x10001000
-# CHECK-NEXT: PhysicalAddress: 0x10001000
+# CHECK-NEXT: VirtualAddress: 0x10010000
+# CHECK-NEXT: PhysicalAddress: 0x10010000
# CHECK-NEXT: FileSize: 12
# CHECK-NEXT: MemSize: 12
# CHECK-NEXT: Flags [ (0x5)
# CHECK-NEXT: PF_R (0x4)
# CHECK-NEXT: PF_X (0x1)
# CHECK-NEXT: ]
-# CHECK-NEXT: Alignment: 4096
+# CHECK-NEXT: Alignment: 65536
# CHECK-NEXT: }
# CHECK-NEXT: ]
Modified: lld/trunk/test/elf2/basic64be.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/elf2/basic64be.s?rev=249760&r1=249759&r2=249760&view=diff
==============================================================================
--- lld/trunk/test/elf2/basic64be.s (original)
+++ lld/trunk/test/elf2/basic64be.s Thu Oct 8 17:23:54 2015
@@ -28,9 +28,9 @@ _start:
# CHECK-NEXT: Type: Executable (0x2)
# CHECK-NEXT: Machine: EM_PPC64 (0x15)
# CHECK-NEXT: Version: 1
-# CHECK-NEXT: Entry: 0x10002000
+# CHECK-NEXT: Entry: 0x10020000
# CHECK-NEXT: ProgramHeaderOffset: 0x40
-# CHECK-NEXT: SectionHeaderOffset: 0x2078
+# CHECK-NEXT: SectionHeaderOffset: 0x20078
# CHECK-NEXT: Flags [ (0x0)
# CHECK-NEXT: ]
# CHECK-NEXT: HeaderSize: 64
@@ -65,7 +65,7 @@ _start:
# CHECK-NEXT: SHF_ALLOC (0x2)
# CHECK-NEXT: SHF_EXECINSTR (0x4)
# CHECK-NEXT: ]
-# CHECK-NEXT: Address: 0x10001000
+# CHECK-NEXT: Address: 0x10010000
# CHECK-NEXT: Offset: 0x1000
# CHECK-NEXT: Size: 12
# CHECK-NEXT: Link: 0
@@ -83,8 +83,8 @@ _start:
# CHECK-NEXT: SHF_ALLOC (0x2)
# CHECK-NEXT: SHF_WRITE (0x1)
# CHECK-NEXT: ]
-# CHECK-NEXT: Address: 0x1000100C
-# CHECK-NEXT: Offset: 0x100C
+# CHECK-NEXT: Address: 0x1001000C
+# CHECK-NEXT: Offset: 0x1000C
# CHECK-NEXT: Size: 0
# CHECK-NEXT: Link: 0
# CHECK-NEXT: Info: 0
@@ -101,7 +101,7 @@ _start:
# CHECK-NEXT: SHF_ALLOC (0x2)
# CHECK-NEXT: SHF_WRITE (0x1)
# CHECK-NEXT: ]
-# CHECK-NEXT: Address: 0x10002000
+# CHECK-NEXT: Address: 0x10020000
# CHECK-NEXT: Offset: 0x2000
# CHECK-NEXT: Size: 24
# CHECK-NEXT: Link: 0
@@ -109,7 +109,7 @@ _start:
# CHECK-NEXT: AddressAlignment: 1
# CHECK-NEXT: EntrySize: 0
# CHECK-NEXT: SectionData (
-# CHECK-NEXT: 0000: 00000000 10001000 00000000 00000000 |................|
+# CHECK-NEXT: 0000: 00000000 10010000 00000000 00000000 |................|
# CHECK-NEXT: 0010: 00000000 00000000 |........|
# CHECK-NEXT: )
# CHECK-NEXT: }
@@ -121,8 +121,8 @@ _start:
# CHECK-NEXT: SHF_ALLOC (0x2)
# CHECK-NEXT: SHF_WRITE (0x1)
# CHECK-NEXT: ]
-# CHECK-NEXT: Address: 0x10002018
-# CHECK-NEXT: Offset: 0x2018
+# CHECK-NEXT: Address: 0x10020018
+# CHECK-NEXT: Offset: 0x20018
# CHECK-NEXT: Size: 0
# CHECK-NEXT: Link: 0
# CHECK-NEXT: Info: 0
@@ -136,7 +136,7 @@ _start:
# CHECK-NEXT: Flags [
# CHECK-NEXT: ]
# CHECK-NEXT: Address: 0x0
-# CHECK-NEXT: Offset: 0x2018
+# CHECK-NEXT: Offset: 0x20018
# CHECK-NEXT: Size: 48
# CHECK-NEXT: Link: 6
# CHECK-NEXT: Info: 1
@@ -152,7 +152,7 @@ _start:
# CHECK-NEXT: Flags [ (0x0)
# CHECK-NEXT: ]
# CHECK-NEXT: Address: 0x0
-# CHECK-NEXT: Offset: 0x2048
+# CHECK-NEXT: Offset: 0x20048
# CHECK-NEXT: Size: 46
# CHECK-NEXT: Link: 0
# CHECK-NEXT: Info: 0
@@ -173,32 +173,32 @@ _start:
# CHECK-NEXT: Flags [
# CHECK-NEXT: PF_R
# CHECK-NEXT: ]
-# CHECK-NEXT: Alignment: 4096
+# CHECK-NEXT: Alignment: 65536
# CHECK-NEXT: }
# CHECK-NEXT: ProgramHeader {
# CHECK-NEXT: Type: PT_LOAD (0x1)
# CHECK-NEXT: Offset: 0x1000
-# CHECK-NEXT: VirtualAddress: 0x10001000
-# CHECK-NEXT: PhysicalAddress: 0x10001000
+# CHECK-NEXT: VirtualAddress: 0x10010000
+# CHECK-NEXT: PhysicalAddress: 0x10010000
# CHECK-NEXT: FileSize: 12
# CHECK-NEXT: MemSize: 12
# CHECK-NEXT: Flags [ (0x5)
# CHECK-NEXT: PF_R (0x4)
# CHECK-NEXT: PF_X (0x1)
# CHECK-NEXT: ]
-# CHECK-NEXT: Alignment: 4096
+# CHECK-NEXT: Alignment: 65536
# CHECK-NEXT: }
# CHECK-NEXT: ProgramHeader {
# CHECK-NEXT: Type: PT_LOAD (0x1)
# CHECK-NEXT: Offset: 0x2000
-# CHECK-NEXT: VirtualAddress: 0x10002000
-# CHECK-NEXT: PhysicalAddress: 0x10002000
+# CHECK-NEXT: VirtualAddress: 0x10020000
+# CHECK-NEXT: PhysicalAddress: 0x10020000
# CHECK-NEXT: FileSize: 24
# CHECK-NEXT: MemSize: 24
# CHECK-NEXT: Flags [ (0x6)
# CHECK-NEXT: PF_R (0x4)
# CHECK-NEXT: PF_W (0x2)
# CHECK-NEXT: ]
-# CHECK-NEXT: Alignment: 4096
+# CHECK-NEXT: Alignment: 65536
# CHECK-NEXT: }
# CHECK-NEXT:]
Modified: lld/trunk/test/elf2/emulation.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/elf2/emulation.s?rev=249760&r1=249759&r2=249760&view=diff
==============================================================================
--- lld/trunk/test/elf2/emulation.s (original)
+++ lld/trunk/test/elf2/emulation.s Thu Oct 8 17:23:54 2015
@@ -78,9 +78,9 @@
# PPC64-NEXT: Type: Executable (0x2)
# PPC64-NEXT: Machine: EM_PPC64 (0x15)
# PPC64-NEXT: Version: 1
-# PPC64-NEXT: Entry: 0x10001000
+# PPC64-NEXT: Entry: 0x10010000
# PPC64-NEXT: ProgramHeaderOffset: 0x40
-# PPC64-NEXT: SectionHeaderOffset: 0x1060
+# PPC64-NEXT: SectionHeaderOffset: 0x10060
# PPC64-NEXT: Flags [ (0x0)
# PPC64-NEXT: ]
# PPC64-NEXT: HeaderSize: 64
@@ -109,9 +109,9 @@
# PPC-NEXT: Type: Executable (0x2)
# PPC-NEXT: Machine: EM_PPC (0x14)
# PPC-NEXT: Version: 1
-# PPC-NEXT: Entry: 0x10001000
+# PPC-NEXT: Entry: 0x10010000
# PPC-NEXT: ProgramHeaderOffset: 0x34
-# PPC-NEXT: SectionHeaderOffset: 0x104C
+# PPC-NEXT: SectionHeaderOffset: 0x1004C
# PPC-NEXT: Flags [ (0x0)
# PPC-NEXT: ]
# PPC-NEXT: HeaderSize: 52
@@ -140,9 +140,9 @@
# MIPS-NEXT: Type: Executable (0x2)
# MIPS-NEXT: Machine: EM_MIPS (0x8)
# MIPS-NEXT: Version: 1
-# MIPS-NEXT: Entry: 0x401030
+# MIPS-NEXT: Entry: 0x410030
# MIPS-NEXT: ProgramHeaderOffset: 0x34
-# MIPS-NEXT: SectionHeaderOffset: 0x1094
+# MIPS-NEXT: SectionHeaderOffset: 0x10094
# MIPS-NEXT: Flags [ (0x0)
# MIPS-NEXT: ]
@@ -164,9 +164,9 @@
# MIPSEL-NEXT: Type: Executable (0x2)
# MIPSEL-NEXT: Machine: EM_MIPS (0x8)
# MIPSEL-NEXT: Version: 1
-# MIPSEL-NEXT: Entry: 0x401030
+# MIPSEL-NEXT: Entry: 0x410030
# MIPSEL-NEXT: ProgramHeaderOffset: 0x34
-# MIPSEL-NEXT: SectionHeaderOffset: 0x1094
+# MIPSEL-NEXT: SectionHeaderOffset: 0x10094
# MIPSEL-NEXT: Flags [ (0x0)
# MIPSEL-NEXT: ]
More information about the llvm-commits
mailing list