| ... | ... | @@ -4081,26 +4081,26 @@ fn sectionRank(self: *Elf, shndx: u16) u8 { |
| 4081 | 4081 | elf.SHT_PROGBITS => { |
| 4082 | 4082 | assert(flags & elf.SHF_ALLOC != 0); |
| 4083 | 4083 | if (flags & elf.SHF_EXECINSTR != 0) { |
| 4084 | | return 0xe1; |
| 4084 | return 0x2; |
| 4085 | 4085 | } else if (flags & elf.SHF_WRITE != 0) { |
| 4086 | | return 0xe2; |
| 4086 | return 0x3; |
| 4087 | 4087 | } else { |
| 4088 | | return 0xe0; |
| 4088 | return 0x1; |
| 4089 | 4089 | } |
| 4090 | 4090 | }, |
| 4091 | | elf.SHT_NOBITS => return 0xef, |
| 4091 | elf.SHT_NOBITS => return 0xf, |
| 4092 | 4092 | else => unreachable, |
| 4093 | 4093 | } |
| 4094 | 4094 | } |
| 4095 | 4095 | |
| 4096 | 4096 | switch (shdr.sh_type) { |
| 4097 | | elf.SHT_NULL => return 0, |
| 4098 | | elf.SHT_DYNSYM => return 2, |
| 4099 | | elf.SHT_HASH => return 3, |
| 4100 | | elf.SHT_GNU_HASH => return 3, |
| 4101 | | elf.SHT_GNU_VERSYM => return 4, |
| 4102 | | elf.SHT_GNU_VERDEF => return 4, |
| 4103 | | elf.SHT_GNU_VERNEED => return 4, |
| 4097 | elf.SHT_NULL => return 0x0, |
| 4098 | elf.SHT_DYNSYM => return 0x12, |
| 4099 | elf.SHT_HASH => return 0x13, |
| 4100 | elf.SHT_GNU_HASH => return 0x13, |
| 4101 | elf.SHT_GNU_VERSYM => return 0x14, |
| 4102 | elf.SHT_GNU_VERDEF => return 0x14, |
| 4103 | elf.SHT_GNU_VERNEED => return 0x14, |
| 4104 | 4104 | |
| 4105 | 4105 | elf.SHT_PREINIT_ARRAY, |
| 4106 | 4106 | elf.SHT_INIT_ARRAY, |
| ... | ... | @@ -4109,7 +4109,7 @@ fn sectionRank(self: *Elf, shndx: u16) u8 { |
| 4109 | 4109 | |
| 4110 | 4110 | elf.SHT_DYNAMIC => return 0xf3, |
| 4111 | 4111 | |
| 4112 | | elf.SHT_RELA => return 0xf, |
| 4112 | elf.SHT_RELA => return 0x1f, |
| 4113 | 4113 | |
| 4114 | 4114 | elf.SHT_PROGBITS => if (flags & elf.SHF_ALLOC != 0) { |
| 4115 | 4115 | if (flags & elf.SHF_EXECINSTR != 0) { |
| ... | ... | @@ -4117,7 +4117,7 @@ fn sectionRank(self: *Elf, shndx: u16) u8 { |
| 4117 | 4117 | } else if (flags & elf.SHF_WRITE != 0) { |
| 4118 | 4118 | return if (flags & elf.SHF_TLS != 0) 0xf4 else 0xf6; |
| 4119 | 4119 | } else if (mem.eql(u8, name, ".interp")) { |
| 4120 | | return 1; |
| 4120 | return 0x11; |
| 4121 | 4121 | } else { |
| 4122 | 4122 | return 0xf0; |
| 4123 | 4123 | } |
| ... | ... | @@ -4131,7 +4131,7 @@ fn sectionRank(self: *Elf, shndx: u16) u8 { |
| 4131 | 4131 | |
| 4132 | 4132 | elf.SHT_NOBITS => return if (flags & elf.SHF_TLS != 0) 0xf5 else 0xf7, |
| 4133 | 4133 | elf.SHT_SYMTAB => return 0xfa, |
| 4134 | | elf.SHT_STRTAB => return if (mem.eql(u8, name, ".dynstr")) 4 else 0xfb, |
| 4134 | elf.SHT_STRTAB => return if (mem.eql(u8, name, ".dynstr")) 0x14 else 0xfb, |
| 4135 | 4135 | else => return 0xff, |
| 4136 | 4136 | } |
| 4137 | 4137 | } |