Skip to content

"llvm-profdata merge" doesn't work in 13.0 #50966

@berolinux

Description

@berolinux
Bugzilla Link 51624
Version trunk
OS Linux
Blocks #50580 #51489
CC @tstellar

Extended Description

Doing something along the lines of
export LLVM_PROFILE_FILE=xyz-%p.profile.d
export CFLAGS="-O2 -fprofile-instr-generate"
export CXXFLAGS="-O2 -fprofile-instr-generate"
./configure
make

Run the generated binaries in some expected ways, e.g. "make check"

llvm-profdata merge --output=xyz.profile xyz-*.profile.d

consistently (obviously with PIDs varying) results in
warning: xyz-670250.profile.d: malformed instrumentation profile data
warning: xyz-670257.profile.d: malformed instrumentation profile data
error: no profile can be merged

The *.profile.d files look ok at a first glance, and "file" recognizes them as "LLVM raw profile data, version 7".

Looks like only "llvm-profdata merge" is broken, using -fprofile-instr-use= seems to be ok.

This is a regression from 12.x.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugzillaIssues migrated from bugzillaconfirmedVerified by a second partyllvm-toolsAll llvm tools that do not have corresponding tag

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions