|
Revision tags: llvmorg-20.1.0, llvmorg-20.1.0-rc3, llvmorg-20.1.0-rc2, llvmorg-20.1.0-rc1, llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init |
|
| #
aff68f5a |
| 25-Jul-2022 |
Weining Lu <[email protected]> |
[LoongArch] Parse LoongArch base ABI in ObjectYAML and llvm-readobj
LoongArch e_flags definition: https://loongson.github.io/LoongArch-Documentation/LoongArch-ELF-ABI-EN.html#_e_flags_identifies_abi
[LoongArch] Parse LoongArch base ABI in ObjectYAML and llvm-readobj
LoongArch e_flags definition: https://loongson.github.io/LoongArch-Documentation/LoongArch-ELF-ABI-EN.html#_e_flags_identifies_abi_type_and_version
Differential Revision: https://reviews.llvm.org/D130238
show more ...
|
| #
1d2ce4da |
| 03-Jul-2022 |
Joseph Huber <[email protected]> |
[Object] Add ELF section type for offloading objects
Currently we use the `.llvm.offloading` section to store device-side objects inside the host, creating a fat binary. The contents of these sectio
[Object] Add ELF section type for offloading objects
Currently we use the `.llvm.offloading` section to store device-side objects inside the host, creating a fat binary. The contents of these sections is currently determined by the name of the section while it should ideally be determined by its type. This patch adds the new `SHT_LLVM_OFFLOADING` section type to the ELF section types. Which should make it easier to identify this specific data format.
Reviewed By: jhenderson
Differential Revision: https://reviews.llvm.org/D129052
show more ...
|
| #
0aa6df65 |
| 28-Jun-2022 |
Rahman Lavaee <[email protected]> |
[Propeller] Encode address offsets of basic blocks relative to the end of the previous basic blocks.
This is a resurrection of D106421 with the change that it keeps backward-compatibility. This mean
[Propeller] Encode address offsets of basic blocks relative to the end of the previous basic blocks.
This is a resurrection of D106421 with the change that it keeps backward-compatibility. This means decoding the previous version of `LLVM_BB_ADDR_MAP` will work. This is required as the profile mapping tool is not released with LLVM (AutoFDO). As suggested by @jhenderson we rename the original section type value to `SHT_LLVM_BB_ADDR_MAP_V0` and assign a new value to the `SHT_LLVM_BB_ADDR_MAP` section type. The new encoding adds a version byte to each function entry to specify the encoding version for that function. This patch also adds a feature byte to be used with more flexibility in the future. An use-case example for the feature field is encoding multi-section functions more concisely using a different format.
Conceptually, the new encoding emits basic block offsets and sizes as label differences between each two consecutive basic block begin and end label. When decoding, offsets must be aggregated along with basic block sizes to calculate the final offsets of basic blocks relative to the function address.
This encoding uses smaller values compared to the existing one (offsets relative to function symbol). Smaller values tend to occupy fewer bytes in ULEB128 encoding. As a result, we get about 17% total reduction in the size of the bb-address-map section (from about 11MB to 9MB for the clang PGO binary). The extra two bytes (version and feature fields) incur a small 3% size overhead to the `LLVM_BB_ADDR_MAP` section size.
Reviewed By: jhenderson
Differential Revision: https://reviews.llvm.org/D121346
show more ...
|
|
Revision tags: llvmorg-14.0.6 |
|
| #
d66cbc56 |
| 21-Jun-2022 |
Kazu Hirata <[email protected]> |
Don't use Optional::hasValue (NFC)
|
| #
5413bf1b |
| 20-Jun-2022 |
Kazu Hirata <[email protected]> |
Don't use Optional::hasValue (NFC)
|
|
Revision tags: llvmorg-14.0.5 |
|
| #
9da89651 |
| 25-May-2022 |
Anubhab Ghosh <[email protected]> |
[llvm-objcopy][ObjectYAML][mips] Add MIPS specific ELF section indexes
This fixes https://github.com/llvm/llvm-project/issues/53998 and displays correct information in obj2yaml for SHN_MIPS_* sectio
[llvm-objcopy][ObjectYAML][mips] Add MIPS specific ELF section indexes
This fixes https://github.com/llvm/llvm-project/issues/53998 and displays correct information in obj2yaml for SHN_MIPS_* sections according to https://refspecs.linuxfoundation.org/elf/mipsabi.pdf
Reviewed By: jhenderson, MaskRay
Differential Revision: https://reviews.llvm.org/D123902
show more ...
|
|
Revision tags: llvmorg-14.0.4, llvmorg-14.0.3, llvmorg-14.0.2 |
|
| #
813e521e |
| 12-Apr-2022 |
Joe Nash <[email protected]> |
[AMDGPU] Add gfx11 subtarget ELF definition
This is the first patch of a series to upstream support for the new subtarget.
Contributors: Jay Foad <[email protected]> Konstantin Zhuravlyov <kzhuravl_
[AMDGPU] Add gfx11 subtarget ELF definition
This is the first patch of a series to upstream support for the new subtarget.
Contributors: Jay Foad <[email protected]> Konstantin Zhuravlyov <[email protected]>
Patch 1/N for upstreaming AMDGPU gfx11 architectures.
Reviewed By: foad, kzhuravl, #amdgpu
Differential Revision: https://reviews.llvm.org/D124536
show more ...
|
|
Revision tags: llvmorg-14.0.1, llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3 |
|
| #
73df8257 |
| 03-Mar-2022 |
Mitch Phillips <[email protected]> |
[MTE] Add NT_ANDROID_TYPE_MEMTAG
This ELF note is aarch64 and Android-specific. It specifies to the dynamic loader that specific work should be scheduled to enable MTE protection of stack and heap r
[MTE] Add NT_ANDROID_TYPE_MEMTAG
This ELF note is aarch64 and Android-specific. It specifies to the dynamic loader that specific work should be scheduled to enable MTE protection of stack and heap regions.
Current synthesis of the ".note.android.memtag" ELF note is done in the Android build system. We'd like to move that to the compiler, and this is the first step.
Reviewed By: MaskRay, jhenderson
Differential Revision: https://reviews.llvm.org/D119381
show more ...
|
| #
84069581 |
| 02-Mar-2022 |
Aakanksha <[email protected]> |
[AMDGPU] Add gfx1036 target
Differential Revision: https://reviews.llvm.org/D120846
|
|
Revision tags: llvmorg-14.0.0-rc2 |
|
| #
2e2e64df |
| 28-Feb-2022 |
Stanislav Mekhanoshin <[email protected]> |
[AMDGPU] Add gfx940 target
This is target definition only.
Differential Revision: https://reviews.llvm.org/D120688
|
| #
42e391e4 |
| 23-Feb-2022 |
Rainer Orth <[email protected]> |
[ELF] Use SHF_SUNW_NODISCARD instead of SHF_GNU_RETAIN on Solaris
Instead of the GNU extension `SHF_GNU_RETAIN`, Solaris provides equivalent functionality with `SHF_SUNW_NODISCARD`. This patch imple
[ELF] Use SHF_SUNW_NODISCARD instead of SHF_GNU_RETAIN on Solaris
Instead of the GNU extension `SHF_GNU_RETAIN`, Solaris provides equivalent functionality with `SHF_SUNW_NODISCARD`. This patch implements the necessary support.
Tested on `sparcv9-sun-solaris2.11`, `amd64-pc-solaris2.11`, and `x86_64-pc-linux-gnu`.
Differential Revision: https://reviews.llvm.org/D107955
show more ...
|
| #
e53e6ec6 |
| 10-Feb-2022 |
Lu Weining <[email protected]> |
[LoongArch 2/6] Add ELF machine flag and relocs for upcoming LoongArch target
This patch adds necessary definitions for LoongArch ELF files, including relocation types. Also adds initial support to
[LoongArch 2/6] Add ELF machine flag and relocs for upcoming LoongArch target
This patch adds necessary definitions for LoongArch ELF files, including relocation types. Also adds initial support to ELFYaml, llvm-objdump, and llvm-readobj in order to work with LoongArch ELFs.
Differential revision: https://reviews.llvm.org/D115859
show more ...
|
|
Revision tags: llvmorg-14.0.0-rc1 |
|
| #
c161b30f |
| 04-Feb-2022 |
Fangrui Song <[email protected]> |
[yaml2obj] Support R_PPC_* relocation types
|
|
Revision tags: llvmorg-15-init |
|
| #
1194b9cd |
| 01-Feb-2022 |
Changpeng Fang <[email protected]> |
AMDGPU {NFC}: Add code object v5 support and generate metadata for implicit kernel args
Summary: Add code object v5 support (deafult is still v4) Generate metadata for implicit kernel args for t
AMDGPU {NFC}: Add code object v5 support and generate metadata for implicit kernel args
Summary: Add code object v5 support (deafult is still v4) Generate metadata for implicit kernel args for the new ABI Set the metadata version to be 1.2
Reviewers: t-tye, b-sumner, arsenm, and bcahoon
Fixes: SWDEV-307188, SWDEV-307189
Differential Revision: https://reviews.llvm.org/D118272
show more ...
|
|
Revision tags: llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2 |
|
| #
c747b2c0 |
| 07-Jan-2022 |
luxufan <[email protected]> |
[RISCV] Add missing e_flag EF_RISCV_TSO
This flag was defined here https://github.com/riscv-non-isa/riscv-elf-psabi-doc/blob/master/riscv-elf.adoc
Reviewed By: asb, MaskRay, jhenderson
Differentia
[RISCV] Add missing e_flag EF_RISCV_TSO
This flag was defined here https://github.com/riscv-non-isa/riscv-elf-psabi-doc/blob/master/riscv-elf.adoc
Reviewed By: asb, MaskRay, jhenderson
Differential Revision: https://reviews.llvm.org/D111939
show more ...
|
| #
7a641d24 |
| 21-Dec-2021 |
Krzysztof Parzyszek <[email protected]> |
[Hexagon] Add ELF flags for Hexagon v69
|
| #
878ff1f9 |
| 29-Nov-2021 |
Frederic Cambus <[email protected]> |
[llvm-readobj] Add support for machine-independent NetBSD ELF core notes.
Notes generated in NetBSD core files provide additional information about processes. These notes are described in core.5, wh
[llvm-readobj] Add support for machine-independent NetBSD ELF core notes.
Notes generated in NetBSD core files provide additional information about processes. These notes are described in core.5, which can be viewed here: https://man.netbsd.org/core.5
Differential Revision: https://reviews.llvm.org/D114635
show more ...
|
|
Revision tags: llvmorg-13.0.1-rc1 |
|
| #
65031173 |
| 01-Nov-2021 |
Frederic Cambus <[email protected]> |
[llvm-readobj] Add support for reading OpenBSD ELF core notes.
Notes generated in OpenBSD core files provide additional information about the kernel state and CPU registers. These notes are describe
[llvm-readobj] Add support for reading OpenBSD ELF core notes.
Notes generated in OpenBSD core files provide additional information about the kernel state and CPU registers. These notes are described in core.5, which can be viewed here: https://man.openbsd.org/core.5
Differential Revision: https://reviews.llvm.org/D111966
show more ...
|
| #
8971b99c |
| 29-Sep-2021 |
Fangrui Song <[email protected]> |
[llvm-objdump/llvm-readobj/obj2yaml/yaml2obj] Support STO_RISCV_VARIANT_CC and DT_RISCV_VARIANT_CC
STO_RISCV_VARIANT_CC marks that a symbol uses a non-standard calling convention or the vector calli
[llvm-objdump/llvm-readobj/obj2yaml/yaml2obj] Support STO_RISCV_VARIANT_CC and DT_RISCV_VARIANT_CC
STO_RISCV_VARIANT_CC marks that a symbol uses a non-standard calling convention or the vector calling convention.
See https://github.com/riscv/riscv-elf-psabi-doc/pull/190
Differential Revision: https://reviews.llvm.org/D107949
show more ...
|
| #
6cfb4d46 |
| 27-Sep-2021 |
Jozef Lawrynowicz <[email protected]> |
[llvm-readobj] Support dumping of MSP430 ELF attributes
The MSP430 ABI supports build attributes for specifying the ISA, code model, data model and enum size in ELF object files.
Differential Revis
[llvm-readobj] Support dumping of MSP430 ELF attributes
The MSP430 ABI supports build attributes for specifying the ISA, code model, data model and enum size in ELF object files.
Differential Revision: https://reviews.llvm.org/D107969
show more ...
|
|
Revision tags: llvmorg-13.0.0, llvmorg-13.0.0-rc4, llvmorg-13.0.0-rc3, llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1, llvmorg-14-init, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3 |
|
| #
3453f3dd |
| 24-Jun-2021 |
Aakanksha Patil <[email protected]> |
[AMDGPU] Add gfx1035 target
Differential Revision: https://reviews.llvm.org/D104804
|
| #
a224c519 |
| 24-Jun-2021 |
Alexander Yermolovich <[email protected]> |
[LLD][LLVM] CG Graph profile using relocations
Currently when .llvm.call-graph-profile is created by llvm it explicitly encodes the symbol indices. This section is basically a black box for post pro
[LLD][LLVM] CG Graph profile using relocations
Currently when .llvm.call-graph-profile is created by llvm it explicitly encodes the symbol indices. This section is basically a black box for post processing tools. For example, if we run strip -s on the object files the symbol table changes, but indices in that section do not. In non-visible behavior indices point to wrong symbols. The visible behavior indices point outside of Symbol table: "invalid symbol index".
This patch changes the format by using R_*_NONE relocations to indicate the from/to symbols. The Frequency (Weight) will still be in the .llvm.call-graph-profile, but symbol information will be in relocation section. In LLD information from both sections is used to reconstruct call graph profile. Relocations themselves will never be applied.
With this approach post processing tools that handle relocations correctly work for this section also. Tools can add/remove symbols and as long as they handle relocation sections with this approach information stays correct.
Doing a quick experiment with clang-13. The size went up from 107KB to 322KB, aggregate of all the input sections. Size of clang-13 binary is ~118MB. For users of -fprofile-use/-fprofile-sample-use the size of object files will go up slightly, it will not impact final binary size.
Reviewed By: jhenderson, MaskRay
Differential Revision: https://reviews.llvm.org/D104080
show more ...
|
|
Revision tags: llvmorg-12.0.1-rc2 |
|
| #
5c1639fe |
| 10-Jun-2021 |
James Henderson <[email protected]> |
[yaml2obj][obj2yaml] Support custom ELF section header string table name
This patch adds support for a new field in the FileHeader, which states the name to use for the section header string table.
[yaml2obj][obj2yaml] Support custom ELF section header string table name
This patch adds support for a new field in the FileHeader, which states the name to use for the section header string table. This also allows combining the string table with another string table in the object, e.g. the symbol name string table. The field is optional. By default, .shstrtab will continue to be used.
This partially fixes https://bugs.llvm.org/show_bug.cgi?id=50506.
Reviewed by: Higuoxing
Differential Revision: https://reviews.llvm.org/D104035
show more ...
|
| #
294efbbd |
| 08-Jun-2021 |
Brendon Cahoon <[email protected]> |
Reland "[AMDGPU] Add gfx1013 target"
This reverts commit 211e584fa2a4c032e4d573e7cdbffd622aad0a8f.
Fixed a use-after-free error that caused the sanitizers to fail.
|
| #
211e584f |
| 08-Jun-2021 |
Brendon Cahoon <[email protected]> |
Revert "[AMDGPU] Add gfx1013 target"
This reverts commit ea10a86984ea73fcec3b12d22404a15f2f59b219.
A sanitizer buildbot reports an error.
|