Skip to content

Bolt crashes in Intel Arch while optimizing a C++ binary only when using update debug section #142519

Open
@jcgomezv

Description

@jcgomezv

llvm-bolt: /home/gomezjc/bolt/llvm-project/bolt/lib/Core/BinaryFunction.cpp:4353: llvm::bolt::DebugAddressRangesVector ll
vm::bolt::BinaryFunction::getOutputAddressRanges() const: Assertion !Frag->isSimple() && "fragment of non-simple functio\ n should also be non-simple"' failed. Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var LLVM_SYMBOLIZER
_PATH` to point to it):
0 llvm-bolt 0x0000000000f4d6e8
1 llvm-bolt 0x0000000000f4ac42
2 libpthread.so.0 0x00007f83cdc338e0
3 libc.so.6 0x00007f83cc9afca0 gsignal + 272
4 libc.so.6 0x00007f83cc9b1148 abort + 328
5 libc.so.6 0x00007f83cc9a8a4d
6 libc.so.6 0x00007f83cc9a8ac2
7 llvm-bolt 0x00000000017dcaf0
8 llvm-bolt 0x00000000017a76ef
9 llvm-bolt 0x0000000001060e23
10 llvm-bolt 0x0000000001066349
11 llvm-bolt 0x0000000000ff93ad
12 llvm-bolt 0x00000000010489ee
13 llvm-bolt 0x0000000000411612
14 libc.so.6 0x00007f83cc99d13a __libc_start_main + 234
15 llvm-bolt 0x00000000004bd04a
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0. Program arguments: llvm-bolt /home/gomezjc/tmp/postgres-binaries/csdd-17-5-pgo-intel-bolt-flags -update-debug-sec
tions -o csdd-17-5-pgo-bolt-lp1-pid-800-db -data=/home/gomezjc/tmp/perf-data/17-5-csdd/perf-pgo-r8g-lp1-rd-wr-pid-800.fda
ta -reorder-blocks=ext-tsp -reorder-functions=hfsort -split-functions -split-all-cold -split-eh -dyno-stats --skip-funcs=
_ZN6Grover18VmEndpointDetector12processBatchEib.cold/1,__libc_start_main --lite -v 1

Not the crash above only happens when I see the -update-debug
-sections , if I do not use that flag the optimized binary gets created and works properly, however for debugability we need to preserve debug sections for this binary.

Metadata

Metadata

Assignees

No one assigned

    Labels

    BOLTcrashPrefer [crash-on-valid] or [crash-on-invalid]

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions