1*15fa3ba5SAmir Ayupov## Test that BOLT gracefully handles a YAML profile with unknown keys. 2*15fa3ba5SAmir Ayupov 3*15fa3ba5SAmir Ayupov# REQUIRES: system-linux 4*15fa3ba5SAmir Ayupov# RUN: split-file %s %t 5*15fa3ba5SAmir Ayupov# RUN: llvm-mc -filetype=obj -triple x86_64-unknown-unknown %t/main.s -o %t.o 6*15fa3ba5SAmir Ayupov# RUN: %clang %cflags %t.o -o %t.exe -Wl,-q -nostdlib 7*15fa3ba5SAmir Ayupov# RUN: llvm-bolt %t.exe -o %t.null --data %t/profile.yaml \ 8*15fa3ba5SAmir Ayupov# RUN: --profile-ignore-hash -v=1 2>&1 | FileCheck %s 9*15fa3ba5SAmir Ayupov# CHECK: warning: unknown key 'unknown-header-key' 10*15fa3ba5SAmir Ayupov# CHECK: warning: unknown key 'unknown_succ_key' 11*15fa3ba5SAmir Ayupov# CHECK: warning: unknown key 'unknown_block_key' 12*15fa3ba5SAmir Ayupov# CHECK: warning: unknown key 'unknown_function_key' 13*15fa3ba5SAmir Ayupov# CHECK: warning: unknown key 'unknown_toplev_key' 14*15fa3ba5SAmir Ayupov#--- main.s 15*15fa3ba5SAmir Ayupov .globl main 16*15fa3ba5SAmir Ayupov .type main, %function 17*15fa3ba5SAmir Ayupovmain: 18*15fa3ba5SAmir Ayupov .cfi_startproc 19*15fa3ba5SAmir Ayupov cmpl $0x0, %eax 20*15fa3ba5SAmir Ayupov jne .LBB0 21*15fa3ba5SAmir Ayupov.LBB0: 22*15fa3ba5SAmir Ayupov retq 23*15fa3ba5SAmir Ayupov .cfi_endproc 24*15fa3ba5SAmir Ayupov.size main, .-main 25*15fa3ba5SAmir Ayupov#--- profile.yaml 26*15fa3ba5SAmir Ayupov--- 27*15fa3ba5SAmir Ayupovheader: 28*15fa3ba5SAmir Ayupov profile-version: 1 29*15fa3ba5SAmir Ayupov binary-name: 'yaml-multiple-profiles.test.tmp.exe' 30*15fa3ba5SAmir Ayupov binary-build-id: '<unknown>' 31*15fa3ba5SAmir Ayupov profile-flags: [ lbr ] 32*15fa3ba5SAmir Ayupov profile-origin: branch profile reader 33*15fa3ba5SAmir Ayupov profile-events: '' 34*15fa3ba5SAmir Ayupov dfs-order: false 35*15fa3ba5SAmir Ayupov unknown-header-key: true 36*15fa3ba5SAmir Ayupovfunctions: 37*15fa3ba5SAmir Ayupov - name: 'main' 38*15fa3ba5SAmir Ayupov fid: 1 39*15fa3ba5SAmir Ayupov hash: 0x50BBA3441D436491 40*15fa3ba5SAmir Ayupov exec: 1 41*15fa3ba5SAmir Ayupov nblocks: 1 42*15fa3ba5SAmir Ayupov blocks: 43*15fa3ba5SAmir Ayupov - bid: 0 44*15fa3ba5SAmir Ayupov insns: 2 45*15fa3ba5SAmir Ayupov hash: 0x4D4D8FAF7D4C0000 46*15fa3ba5SAmir Ayupov succ: [ { bid: 1, cnt: 0, unknown_succ_key: 0x10 } ] 47*15fa3ba5SAmir Ayupov unknown_block_key: [ ] 48*15fa3ba5SAmir Ayupov unknown_function_key: 1 49*15fa3ba5SAmir Ayupovunknown_toplev_key: '' 50*15fa3ba5SAmir Ayupov... 51