Revert "[InstrProfiling] Use nobits as __llvm_prf_cnts section type in ELF"

This reverts commit 6b286d93f7 because
in some cases when the optimizer evaluates the global initializer,
__llvm_prf_cnts may not be entirely zero initialized.
This commit is contained in:
Petr Hosek 2021-02-24 00:37:54 -08:00
parent 77bd454da3
commit 11a53f47fb
2 changed files with 0 additions and 19 deletions

View File

@ -440,10 +440,6 @@ static SectionKind getELFKindForNamedSection(StringRef Name, SectionKind K) {
Name == ".llvmbc" || Name == ".llvmcmd")
return SectionKind::getMetadata();
if (Name == getInstrProfSectionName(IPSK_cnts, Triple::ELF,
/*AddSegmentInfo=*/false))
return SectionKind::getBSS();
if (Name.empty() || Name[0] != '.') return K;
// Default implementation based on some magic section names.

View File

@ -1,15 +0,0 @@
;; Ensure that SHT_NOBITS section type is set for __llvm_prf_cnts in ELF.
; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu | FileCheck %s
@__profc_foo = hidden global [1 x i64] zeroinitializer, section "__llvm_prf_cnts", align 8
define void @foo() {
%pgocount = load i64, i64* getelementptr inbounds ([1 x i64], [1 x i64]* @__profc_foo, i64 0, i64 0), align 4
%1 = add i64 %pgocount, 1
store i64 %1, i64* getelementptr inbounds ([1 x i64], [1 x i64]* @__profc_foo, i64 0, i64 0), align 4
ret void
}
declare void @llvm.instrprof.increment(i8*, i64, i32, i32)
; CHECK: .section __llvm_prf_cnts,"aw",@nobits