mirror of
https://github.com/intel/llvm.git
synced 2026-01-25 10:55:58 +08:00
[LLD][ELF] - Do not forget to use ch_addralign field after decompressing the sections.
LLD did not use ELF::Chdr::ch_addralign for decompressed sections. This resulted in a broken output. Fixes https://bugs.llvm.org/show_bug.cgi?id=40482. Differential revision: https://reviews.llvm.org/D60959 llvm-svn: 358885
This commit is contained in:
@@ -253,6 +253,7 @@ void InputSectionBase::parseCompressedHeader() {
|
||||
}
|
||||
|
||||
UncompressedSize = Hdr->ch_size;
|
||||
Alignment = std::max<uint64_t>(Hdr->ch_addralign, 1);
|
||||
RawData = RawData.slice(sizeof(*Hdr));
|
||||
return;
|
||||
}
|
||||
@@ -270,6 +271,7 @@ void InputSectionBase::parseCompressedHeader() {
|
||||
}
|
||||
|
||||
UncompressedSize = Hdr->ch_size;
|
||||
Alignment = std::max<uint64_t>(Hdr->ch_addralign, 1);
|
||||
RawData = RawData.slice(sizeof(*Hdr));
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user