1. [llvm-readelf][llvm-readobj] - Reimplement the logic of section flags (details)
  2. [ELF] writePlt, writeIplt: replace parameters gotPltEntryAddr and index (details)
  3. [llvm-readelf] - Change letters used for SHF_ARM_PURECODE and (details)
  4. [llvm-readobj][test] - Cleanup hash-histogram.test (details)
  5. [llvm-readob] - Refactor printing of sections flags. NFCI. (details)
  6. [llvm-readobj][test] - Move a comment. NFC. (details)
  7. [cmake] Add llvm-locstats to LLVM_TEST_DEPENDS (details)
  8. [NFC][TTI] Add Alignment for isLegalMasked[Gather/Scatter] (details)
Commit 541daa5e6b9bc38986e09612a9bd6f0f148fdfcf by grimar
[llvm-readelf][llvm-readobj] - Reimplement the logic of section flags
Our logic that dumped the flags was buggy.
For LLVM style it dumped SHF_MASKPROC/SHF_MASKOS named constants, though
they are not flags, but masks.
For GNU style it was just very inconsistent with GNU which has logic
that is not straightforward. Imagine we have sh_flags == 0x90000000.
SHF_EXCLUDE ("E") has a value of 0x80000000 and SHF_MASKPROC is
0xf0000000. GNU readelf will not print "E" or "Ep" in this case, but
will print just
"p". It only will print "E" when no other processor flag is set. I had
to investigate the GNU source to find the algorithm and now our logic
should match it.
Differential revision:
The file was addedllvm/test/tools/llvm-readobj/ELF/section-flags-os-proc.test
The file was modifiedllvm/test/tools/llvm-readobj/ELF/section-flags.test
The file was modifiedllvm/test/tools/llvm-objcopy/ELF/rename-section-flag-osproc-mask.test
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/test/tools/llvm-readobj/ELF/section-arch-flags.test
Commit 37b280805914f0bdb9e45d2be33d457a99220444 by maskray
[ELF] writePlt, writeIplt: replace parameters gotPltEntryAddr and index
with `const Symbol &`. NFC
PPC::writeIplt (IPLT code sequence, D71621) needs to access `Symbol`.
Reviewed By: grimar, ruiu
Differential Revision:
The file was modifiedlld/ELF/Arch/RISCV.cpp
The file was modifiedlld/ELF/Arch/Hexagon.cpp
The file was modifiedlld/ELF/Arch/SPARCV9.cpp
The file was modifiedlld/ELF/Arch/X86.cpp
The file was modifiedlld/ELF/Arch/PPC64.cpp
The file was modifiedlld/ELF/Arch/X86_64.cpp
The file was modifiedlld/ELF/SyntheticSections.cpp
The file was modifiedlld/ELF/Arch/PPC.cpp
The file was modifiedlld/ELF/Arch/Mips.cpp
The file was modifiedlld/ELF/Arch/ARM.cpp
The file was modifiedlld/ELF/Arch/AArch64.cpp
The file was modifiedlld/ELF/Target.h
Commit f8dbb2c62f45a95f306a85410cb4f00c05c4bb0c by grimar
[llvm-readelf] - Change letters used for SHF_ARM_PURECODE and
SHF_X86_64_LARGE flags.
GNU uses `l` for SHF_X86_64_LARGE and `y` for SHF_ARM_PURECODE. Lets
To do this I had to refactor and refine how we print the help flags
description. It was too generic and inconsistent with GNU readelf.
Differential revision:
The file was modifiedllvm/test/tools/llvm-readobj/ELF/section-arch-flags.test
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
The file was modifiedllvm/test/tools/llvm-readobj/ELF/check-output-order.test
The file was modifiedllvm/test/MC/ARM/elf-execute-only-section.ll
The file was modifiedllvm/test/tools/llvm-readobj/ELF/gnu-sections.test
Commit f31fa4f8981231ad2d32dc51979c96ec85657fe2 by grimar
[llvm-readobj][test] - Cleanup hash-histogram.test
In this test case we use 3 precompiled objects to test how we print a
histogram for an GNU hash section. It does not make sense to use
precompiled objects for that. Also we could have 2 tests: one for 32 and
another for 64 bits target.
This patch does this change. It is not possible to remove these
precompiled objects because they are used elsewhere.
Differential revision:
The file was modifiedllvm/test/tools/llvm-readobj/ELF/hash-histogram.test
Commit 8810284af2ab2e950b86a33c47ac7cf52beb5d74 by grimar
[llvm-readob] - Refactor printing of sections flags. NFCI.
This is a natural clean-up after D71462/D71464. It allows to define
known section letters used for GNU style in one place.
Differential revision:
The file was modifiedllvm/tools/llvm-readobj/ELFDumper.cpp
Commit 36c3b3a61c9371c8f1fe10dda4c2bc00a77261c3 by grimar
[llvm-readobj][test] - Move a comment. NFC.
I've forgot to address this review comment.
The file was modifiedllvm/test/tools/llvm-readobj/ELF/section-flags-os-proc.test
Commit a6be12dbb14382cbc7817acbac2a86dfb2201949 by david.stenberg
[cmake] Add llvm-locstats to LLVM_TEST_DEPENDS
Summary: Make sure that llvm-locstats is updated before running lit
tests even when it's not an explicit target.
Reviewers: djtodoro, krisb, spatel
Reviewed By: djtodoro
Subscribers: mgorny, llvm-commits
Tags: #llvm
Differential Revision:
The file was modifiedllvm/test/CMakeLists.txt
Commit 7cd1cfdd6b6c89f74af69f3513b5856a5c837317 by anna.welker
[NFC][TTI] Add Alignment for isLegalMasked[Gather/Scatter]
Add an extra parameter so alignment can be taken under consideration in
gather/scatter legalization.
Differential Revision:
The file was modifiedllvm/lib/Analysis/TargetTransformInfo.cpp
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfo.h
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.h
The file was modifiedllvm/lib/CodeGen/ScalarizeMaskedMemIntrin.cpp
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.h
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfoImpl.h