## Test that BOLT gracefully handles a YAML profile with unknown keys. # REQUIRES: system-linux # RUN: split-file %s %t # RUN: llvm-mc -filetype=obj -triple x86_64-unknown-unknown %t/main.s -o %t.o # RUN: %clang %cflags %t.o -o %t.exe -Wl,-q -nostdlib # RUN: llvm-bolt %t.exe -o %t.null --data %t/profile.yaml \ # RUN: --profile-ignore-hash -v=1 2>&1 | FileCheck %s # CHECK: warning: unknown key 'unknown-header-key' # CHECK: warning: unknown key 'unknown_succ_key' # CHECK: warning: unknown key 'unknown_block_key' # CHECK: warning: unknown key 'unknown_function_key' # CHECK: warning: unknown key 'unknown_toplev_key' #--- main.s .globl main .type main, %function main: .cfi_startproc cmpl $0x0, %eax jne .LBB0 .LBB0: retq .cfi_endproc .size main, .-main #--- profile.yaml --- header: profile-version: 1 binary-name: 'yaml-multiple-profiles.test.tmp.exe' binary-build-id: '' profile-flags: [ lbr ] profile-origin: branch profile reader profile-events: '' dfs-order: false unknown-header-key: true functions: - name: 'main' fid: 1 hash: 0x50BBA3441D436491 exec: 1 nblocks: 1 blocks: - bid: 0 insns: 2 hash: 0x4D4D8FAF7D4C0000 succ: [ { bid: 1, cnt: 0, unknown_succ_key: 0x10 } ] unknown_block_key: [ ] unknown_function_key: 1 unknown_toplev_key: '' ...