brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.3 KiB · c03e2f5 Raw
119 lines · plain
1## Checks that symbols are allocated in correct sections, and that empty2## fragments are not allocated at all.3 4# REQUIRES: x86_64-linux5 6# RUN: llvm-mc -filetype=obj -triple x86_64-unknown-unknown %s -o %t.o7# RUN: %clangxx %cxxflags %t.o -o %t.exe -Wl,-q -no-pie8# RUN: llvm-bolt %t.exe -o %t.bolt --split-functions --split-strategy=all \9# RUN:         --print-split --print-only=_Z3foov 2>&1 | \10# RUN:     FileCheck %s --check-prefix=CHECK-SPLIT11# RUN: llvm-nm %t.bolt | FileCheck %s --check-prefix=CHECK-COLD012# RUN: llvm-objdump --syms %t.bolt | \13# RUN:     FileCheck %s --check-prefix=CHECK-SYMS14 15# CHECK-SPLIT: .LLP0 (4 instructions, align : 1)16# CHECK-SPLIT: -------   HOT-COLD SPLIT POINT   -------17# CHECK-SPLIT-EMPTY:18# CHECK-SPLIT-NEXT: -------   HOT-COLD SPLIT POINT   -------19# CHECK-SPLIT-EMPTY:20# CHECK-SPLIT-NEXT: .LFT0 (2 instructions, align : 1)21 22# CHECK-COLD0-NOT: _Z3foov.cold.023 24# CHECK-SYMS: .text.cold.125# CHECK-SYMS-SAME: _Z3foov.cold.126# CHECK-SYMS: .text.cold.227# CHECK-SYMS-SAME: _Z3foov.cold.228# CHECK-SYMS: .text.cold.329# CHECK-SYMS-SAME: _Z3foov.cold.330 31 32        .text33        .globl  _Z3barv34        .type   _Z3barv, @function35_Z3barv:                            # void bar();36        .cfi_startproc37        ret38        .cfi_endproc39        .size   _Z3barv, .-_Z3barv40 41 42        .globl  _Z3bazv43        .type   _Z3bazv, @function44_Z3bazv:                            # void baz() noexcept;45        .cfi_startproc46        ret47        .cfi_endproc48        .size   _Z3bazv, .-_Z3bazv49 50 51        .globl  _Z3foov52        .type   _Z3foov, @function53_Z3foov:                            # void foo() noexcept;54.LFB1265:                           # _Z3foov55        .cfi_startproc56        .cfi_personality 0x3,__gxx_personality_v057        .cfi_lsda 0x3,.LLSDA126558        subq    $8, %rsp59        .cfi_def_cfa_offset 1660.LEHB0:61        call    _Z3barv             # LP: .L562.LEHE0:63        jmp     .L464.L5:                                # (_Z3foov.cold.0), landing pad, hot65        movq    %rax, %rdi66        cmpq    $1, %rdx67        je      .L368        call    _ZSt9terminatev     # _Z3foov.cold.169.L3:                                # _Z3foov.cold.270        call    __cxa_begin_catch71        call    _Z3bazv72        call    __cxa_end_catch73.L4:                                # _Z3foov.cold.374        call    _Z3bazv75        addq    $8, %rsp76        .cfi_def_cfa_offset 877        ret78        .cfi_endproc79        .globl  __gxx_personality_v080        .section        .gcc_except_table,"a",@progbits81        .align 482.LLSDA1265:83        .byte   0xff84        .byte   0x385        .uleb128 .LLSDATT1265-.LLSDATTD126586.LLSDATTD1265:87        .byte   0x188        .uleb128 .LLSDACSE1265-.LLSDACSB126589.LLSDACSB1265:90        .uleb128 .LEHB0-.LFB126591        .uleb128 .LEHE0-.LEHB092        .uleb128 .L5-.LFB126593        .uleb128 0x394.LLSDACSE1265:95        .byte   096        .byte   097        .byte   0x198        .byte   0x7d99        .align 4100        .long   _ZTISt13runtime_error101.LLSDATT1265:102        .text103        .size   _Z3foov, .-_Z3foov104 105 106        .globl  main107        .type   main, @function108main:109        .cfi_startproc110        subq    $8, %rsp111        .cfi_def_cfa_offset 16112        call    _Z3foov113        movl    $0, %eax114        addq    $8, %rsp115        .cfi_def_cfa_offset 8116        ret117        .cfi_endproc118        .size   main, .-main119