[all-commits] [llvm/llvm-project] 463da4: MC: make section classification a bit more thorough
Saleem Abdulrasool via All-commits
all-commits at lists.llvm.org
Thu Sep 22 09:27:23 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 463da422f019a417b791d7db9adae1ad7d089802
https://github.com/llvm/llvm-project/commit/463da422f019a417b791d7db9adae1ad7d089802
Author: Saleem Abdulrasool <compnerd at compnerd.org>
Date: 2022-09-22 (Thu, 22 Sep 2022)
Changed paths:
M llvm/lib/MC/MCContext.cpp
A llvm/test/MC/ELF/section-classification.ll
Log Message:
-----------
MC: make section classification a bit more thorough
This does *NOT* change the emitted section flags in any way. This only
impacts the internal classification of sections.
Extend the section classification in LLVM for ELF targets. This has one
important change: we now classify sections as text by default rather
than readonly. This matches the behaviour for GAS better.
Ensure that any section that has a writable attribute set is not treated
as readonly. We also special case any section named `.debug_` which is
reserved for DWARF as metadata. In the case none of the attributes are
set (or because no attributes were provided), consult the section name
for classification. We match the well known names and classify the
section accordingly. Any remaining section is now classified as text.
This change allows us to classify sections in the MC layer more
precisely which is needed for subsequent changes for handling target
specific behaviour.
Re-apply the change that was reverted with additional changes to
classify section prefixes appropriately and differentiate the TLS
sections, addressing the FIXME and post-commit review comments by
@MaskRay.
Differential Revision: https://reviews.llvm.org/D133456
Reviewed By: @MaskRay
More information about the All-commits
mailing list