[PATCH] D48406: [ELF] Make non-writable non-executable PROGBITS sections closer to .text
Fangrui Song via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jun 20 17:02:50 PDT 2018
MaskRay added a comment.
Effect:
[Nr] Name Type Address Off Size ES Flg Lk Inf Al
[ 0] NULL 0000000000000000 000000 000000 00 0 0 0
[ 1] .interp PROGBITS 0000000000200270 000270 00001c 00 A 0 0 1
[ 2] .dynsym DYNSYM 0000000000200290 000290 0000c0 18 A 7 1 8
[ 3] .gnu.version VERSYM 0000000000200350 000350 000010 02 A 2 0 2
[ 4] .gnu.version_r VERNEED 0000000000200360 000360 000020 00 A 7 1 4
[ 5] .gnu.hash GNU_HASH 0000000000200380 000380 000020 00 A 2 0 8
[ 6] .hash HASH 00000000002003a0 0003a0 000048 04 A 2 0 4
[ 7] .dynstr STRTAB 00000000002003e8 0003e8 000097 00 A 0 0 1
[ 8] .rela.dyn RELA 0000000000200480 000480 000048 18 A 2 0 8
[ 9] .rela.plt RELA 00000000002004c8 0004c8 000030 18 A 2 0 8
[10] .note.ABI-tag NOTE 00000000002004f8 0004f8 000020 00 A 0 0 4
[11] .note.gnu.property NOTE 0000000000200518 000518 000040 00 A 0 0 8
[12] .rodata PROGBITS 0000000000200560 000560 000403 00 AMS 0 0 16
[13] .eh_frame_hdr PROGBITS 0000000000200964 000964 00002c 00 A 0 0 4
[14] .eh_frame PROGBITS 0000000000200990 000990 0000cc 00 A 0 0 8
[15] .text PROGBITS 0000000000201000 001000 0001a2 00 AX 0 0 16
[16] .init PROGBITS 00000000002011a4 0011a4 000017 00 AX 0 0 4
[17] .fini PROGBITS 00000000002011bc 0011bc 000009 00 AX 0 0 4
[18] .plt PROGBITS 00000000002011d0 0011d0 000030 00 AX 0 0 16
[19] .data PROGBITS 0000000000202000 002000 000010 00 WA 0 0 8
[20] .tm_clone_table PROGBITS 0000000000202010 002010 000000 00 WA 0 0 8
[21] .got.plt PROGBITS 0000000000202010 002010 000028 00 WA 0 0 8
[22] .fini_array FINI_ARRAY 0000000000203000 003000 000008 08 WA 0 0 8
[23] .init_array INIT_ARRAY 0000000000203008 003008 000008 08 WA 0 0 8
[24] .dynamic DYNAMIC 0000000000203010 003010 0001a0 10 WA 7 0 8
[25] .got PROGBITS 00000000002031b0 0031b0 000010 00 WA 0 0 8
[26] .bss NOBITS 0000000000204000 0031c0 0003f8 00 WA 0 0 16
[27] .comment PROGBITS 0000000000000000 0031c0 0000aa 01 MS 0 0 1
[28] .symtab SYMTAB 0000000000000000 003270 000378 18 30 19 8
[29] .shstrtab STRTAB 0000000000000000 0035e8 00011e 00 0 0 1
[30] .strtab STRTAB 0000000000000000 003706 0001fb 00 0 0 1
The `Flg` looks nicer and more regular and we can remove that DYNSTR DYNSYM condition.
Repository:
rLLD LLVM Linker
https://reviews.llvm.org/D48406
More information about the llvm-commits
mailing list