[PATCH] D76410: [ELF] Don't combine SHF_LINK_ORDER sections linking different output sections
George Rimar via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Mar 19 02:39:29 PDT 2020
grimar added inline comments.
================
Comment at: lld/test/ELF/linkorder-output-section.s:42
+# DIFFERENT: foo
+# DIFFERENT: foo
+
----------------
Perhaps:
```
# DIFFERENT-COUNT-2: foo
# DIFFERENT-NOT: foo
```
================
Comment at: lld/test/ELF/partition-move-to-main-startstop.s:18
+// CHECK: part1
// CHECK: no_startstop
----------------
I think this kind of breaks the logic of this test?
See the output before this patch:
```
[ 4] .dynstr STRTAB 00000000002002b0 000002b0
0000000000000039 0000000000000000 A 0 0 1
[ 5] has_startstop PROGBITS 00000000002002e9 000002e9
0000000000000010 0000000000000000 AL 8 0 1
[ 6] no_startstop PROGBITS 00000000002002f9 000002f9
0000000000000008 0000000000000000 AL 8 0 1
...
[10] part1 LOOS+0xfff4c06 0000000000203000 00001000
0000000000000040 0000000000000000 A 0 0 1
Symbol table '.symtab' contains 6 entries:
Num: Value Size Type Bind Vis Ndx Name
...
2: 00000000002002e9 0 NOTYPE GLOBAL PROTECTED 5 __start_has_startstop
3: 00000000002002f9 0 NOTYPE GLOBAL PROTECTED 5 __stop_has_startstop
```
And after:
```
[ 5] has_startstop PROGBITS 00000000002002e9 000002e9
0000000000000008 0000000000000000 AL 9 0 1
[ 6] has_startstop PROGBITS 00000000002002f1 000002f1
0000000000000008 0000000000000000 AL 18 0 1
[ 7] no_startstop PROGBITS 00000000002002f9 000002f9
0000000000000008 0000000000000000 AL 9 0 1
[ 8] .rodata PROGBITS 0000000000200304 00000304
000000000000000c 0000000000000000 A 0 0 4
...
[11] part1 LOOS+0xfff4c06 0000000000203000 00001000
0000000000000040 0000000000000000 A 0 0 1
Symbol table '.symtab' contains 6 entries:
Num: Value Size Type Bind Vis Ndx Name
...
2: 00000000002002e9 0 NOTYPE GLOBAL PROTECTED 5 __start_has_startstop
3: 00000000002002f1 0 NOTYPE GLOBAL PROTECTED 5 __stop_has_startstop
```
`__stop_has_startstop` points to the begining of the second `has_startstop` section now.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D76410/new/
https://reviews.llvm.org/D76410
More information about the llvm-commits
mailing list