mirror of
https://github.com/intel/llvm.git
synced 2026-01-19 01:15:50 +08:00
Create sections with just assignments as STT_NOBITS.
This matches the behaviour of bfd ld. Using 0 was causing problems with strip, which would remove these sections. llvm-svn: 287969
This commit is contained in:
@@ -566,7 +566,7 @@ template <class ELFT> void LinkerScript<ELFT>::adjustSectionsBeforeSorting() {
|
||||
// '.' is assigned to, but creating these section should not have any bad
|
||||
// consequeces and gives us a section to put the symbol in.
|
||||
uintX_t Flags = SHF_ALLOC;
|
||||
uint32_t Type = 0;
|
||||
uint32_t Type = SHT_NOBITS;
|
||||
for (const std::unique_ptr<BaseCommand> &Base : Opt.Commands) {
|
||||
auto *Cmd = dyn_cast<OutputSectionCommand>(Base.get());
|
||||
if (!Cmd)
|
||||
|
||||
@@ -12,8 +12,8 @@
|
||||
# CHECK: Sections:
|
||||
# CHECK-NEXT: Idx Name Size Address
|
||||
# CHECK-NEXT: 0 00000000 0000000000000000
|
||||
# CHECK-NEXT: 1 abc 00000000 [[ADDR:[0-9a-f]*]]
|
||||
# CHECK-NEXT: 2 bar 00000000 0000000000001000 DATA
|
||||
# CHECK: abc 00000000 [[ADDR:[0-9a-f]*]] BSS
|
||||
# CHECK-NEXT: bar 00000000 0000000000001000 DATA
|
||||
|
||||
# CHECK: SYMBOL TABLE:
|
||||
# CHECK: [[ADDR]] abc 00000000 foo
|
||||
|
||||
Reference in New Issue
Block a user