# Test to check if using basic block sections to reorder basic blocks at
# run-time still produces the right backtraces with lldb.

# UNSUPPORTED: system-darwin, system-windows
# REQUIRES: target-x86_64
# REQUIRES: lld

# RUN: %clang_host %p/Inputs/basic-block-sections.c -o %t
# RUN: %lldb %t -s %s -o exit | FileCheck  %s --check-prefix=DEFAULT

# RUN: %clang_host %p/Inputs/basic-block-sections.c -o %t -fbasic-block-sections=all
# RUN: %lldb %t -s %s -o exit | FileCheck  %s --check-prefix=BBSECTIONS

# Reorder basic blocks so that main's basic blocks are discontiguous
# RUN: echo "main.__part.3" > %t.order
# RUN: echo "bar" >> %t.order
# RUN: echo "main" >> %t.order
# RUN: echo "main.__part.2" >> %t.order
# RUN: echo "foo" >> %t.order
# RUN: echo "main.__part.1" >> %t.order
# RUN: %clang_host %p/Inputs/basic-block-sections.c -o %t -fbasic-block-sections=all -fuse-ld=lld -Wl,--symbol-ordering-file,%t.order -Wl,--warn-symbol-ordering -Wl,--fatal-warnings
# RUN: %lldb %t -s %s -o exit | FileCheck  %s --check-prefix=BBSECTIONS

# Test the reverse permutation too.
# RUN: echo "main.__part.1" > %t.order
# RUN: echo "foo" >> %t.order
# RUN: echo "main.__part.2" >> %t.order
# RUN: echo "main" >> %t.order
# RUN: echo "bar" >> %t.order
# RUN: echo "main.__part.3" >> %t.order
# RUN: %clang_host %p/Inputs/basic-block-sections.c -o %t -fbasic-block-sections=all -fuse-ld=lld -Wl,--symbol-ordering-file,%t.order -Wl,--warn-symbol-ordering -Wl,--fatal-warnings
# RUN: %lldb %t -s %s -o exit | FileCheck  %s --check-prefix=BBSECTIONS

breakpoint set -n bar
# DEFAULT: Breakpoint 1: where = {{.*}}`bar
# BBSECTIONS: Breakpoint 1: where = {{.*}}`bar

process launch
# DEFAULT: stop reason = breakpoint 1.1
# BBSECTIONS: stop reason = breakpoint 1.1

thread backtrace
# DEFAULT: frame #0: {{.*}}`bar
# DEFAULT: frame #1: {{.*}}`foo
# DEFAULT: frame #2: {{.*}}`main +

# BBSECTIONS: frame #0: {{.*}}`bar
# BBSECTIONS: frame #1: {{.*}}`foo
# BBSECTIONS: frame #2: {{.*}}`main.__part.1 +
