64 lines · plain
1## Tests function matching in YAMLProfileReader by function hash.2 3# REQUIRES: system-linux4# RUN: split-file %s %t5# RUN: llvm-mc -filetype=obj -triple x86_64-unknown-unknown %t/main.s -o %t.o6# RUN: %clang %cflags %t.o -o %t.exe -Wl,-q -nostdlib7# RUN: llvm-bolt %t.exe -o %t.out --data %t/yaml -v=2 \8# RUN: --print-cfg --match-profile-with-function-hash --profile-ignore-hash=0 2>&1 | FileCheck %s9 10# CHECK: BOLT-INFO: matched 1 functions with hash11 12#--- main.s13.globl main14.type main, @function15main:16 .cfi_startproc17.LBB00:18 pushq %rbp19 movq %rsp, %rbp20 subq $16, %rsp21 testq %rax, %rax22 js .LBB0323.LBB01:24 jne .LBB0425.LBB02:26 nop27.LBB03:28 xorl %eax, %eax29 addq $16, %rsp30 popq %rbp31 retq32.LBB04:33 xorl %eax, %eax34 addq $16, %rsp35 popq %rbp36 retq37## For relocations against .text38 .reloc 0, R_X86_64_NONE39 .cfi_endproc40 .size main, .-main41 42#--- yaml43---44header:45 profile-version: 146 binary-name: 'hashing-based-function-matching.s.tmp.exe'47 binary-build-id: '<unknown>'48 profile-flags: [ lbr ]49 profile-origin: branch profile reader50 profile-events: ''51 dfs-order: false52 hash-func: xxh353functions:54 - name: main255 fid: 056 hash: 0x6E7F15254DE247857 exec: 158 nblocks: 659 blocks:60 - bid: 161 insns: 162 succ: [ { bid: 3, cnt: 1} ]63...64