[lld] [LLD] Deprecate --lto-basic-block-sections=labels. (PR #110697)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Oct 1 09:38:48 PDT 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-lld
Author: Rahman Lavaee (rlavaee)
<details>
<summary>Changes</summary>
This option is now replaced by `--lto-basic-block-address-map`.
---
Full diff: https://github.com/llvm/llvm-project/pull/110697.diff
2 Files Affected:
- (modified) lld/ELF/LTO.cpp (+3-2)
- (modified) lld/test/ELF/lto/basic-block-sections.ll (+3)
``````````diff
diff --git a/lld/ELF/LTO.cpp b/lld/ELF/LTO.cpp
index 6b4b0716b9ccb9..8fbb73c49733c6 100644
--- a/lld/ELF/LTO.cpp
+++ b/lld/ELF/LTO.cpp
@@ -62,7 +62,7 @@ static lto::Config createConfig(Ctx &ctx) {
c.Options.DataSections = true;
// Check if basic block sections must be used.
- // Allowed values for --lto-basic-block-sections are "all", "labels",
+ // Allowed values for --lto-basic-block-sections are "all",
// "<file name specifying basic block ids>", or none. This is the equivalent
// of -fbasic-block-sections= flag in clang.
if (!ctx.arg.ltoBasicBlockSections.empty()) {
@@ -70,7 +70,8 @@ static lto::Config createConfig(Ctx &ctx) {
c.Options.BBSections = BasicBlockSection::All;
} else if (ctx.arg.ltoBasicBlockSections == "labels") {
c.Options.BBAddrMap = true;
- c.Options.BBSections = BasicBlockSection::None;
+ warn("'--lto-basic-block-sections=labels' is deprecated. Please use "
+ "'--lto-basic-block-address-map' instead");
} else if (ctx.arg.ltoBasicBlockSections == "none") {
c.Options.BBSections = BasicBlockSection::None;
} else {
diff --git a/lld/test/ELF/lto/basic-block-sections.ll b/lld/test/ELF/lto/basic-block-sections.ll
index 35b638ac488a35..600a28dbe516b8 100644
--- a/lld/test/ELF/lto/basic-block-sections.ll
+++ b/lld/test/ELF/lto/basic-block-sections.ll
@@ -1,11 +1,14 @@
; REQUIRES: x86
; RUN: llvm-as %s -o %t.o
+; RUN: ld.lld %t.o -o %t --lto-basic-block-sections=labels --lto-O0 2>&1 | FileCheck -check-prefix=LABELSWARN %s
; RUN: ld.lld %t.o -o %t --lto-basic-block-sections=all --lto-O0 --save-temps
; RUN: llvm-readobj -s %t.lto.o | FileCheck --check-prefix=SECNAMES %s
; RUN: ld.lld %t.o -o %t --lto-basic-block-sections=all --lto-unique-basic-block-section-names --lto-O0 --save-temps
; RUN: llvm-readobj -s %t.lto.o | FileCheck --check-prefix=SECNAMES-FULL %s
; RUN: llvm-nm %t | FileCheck --check-prefix=SYMS %s
+; LABELSWARN: --lto-basic-block-sections=labels' is deprecated. Please use '--lto-basic-block-address-map' instead
+
; SECNAMES: Name: .text.foo {{.*}}
; SECNAMES: Name: .text.foo {{.*}}
; SECNAMES: Name: .text.foo {{.*}}
``````````
</details>
https://github.com/llvm/llvm-project/pull/110697
More information about the llvm-commits
mailing list