Tests for weighted merge of instrumented profiles. 1- Merge the foo and bar profiles with unity weight and verify the combined output RUN: llvm-profdata merge --instr %p/Inputs/weight-instr-bar.profdata:1 %p/Inputs/weight-instr-foo.profdata:1 -o %t RUN: llvm-profdata show --instr -all-functions %t | FileCheck %s --check-prefix=WEIGHT1 WEIGHT1: Counters: WEIGHT1: usage: WEIGHT1: Hash: 0x0000000000000000 WEIGHT1: Counters: 1 WEIGHT1: Function count: 0 WEIGHT1: foo: WEIGHT1: Hash: 0x000000000000028a WEIGHT1: Counters: 3 WEIGHT1: Function count: 866988873 WEIGHT1: bar: WEIGHT1: Hash: 0x000000000000028a WEIGHT1: Counters: 3 WEIGHT1: Function count: 866988873 WEIGHT1: main: WEIGHT1: Hash: 0x7d31c47ea98f8248 WEIGHT1: Counters: 60 WEIGHT1: Function count: 2 WEIGHT1: Functions shown: 4 WEIGHT1: Total functions: 4 WEIGHT1: Maximum function count: 866988873 WEIGHT1: Maximum internal block count: 267914296 2- Merge the foo and bar profiles with weight 3x and 5x respectively and verify the combined output RUN: llvm-profdata merge --instr %p/Inputs/weight-instr-bar.profdata:3 %p/Inputs/weight-instr-foo.profdata:5 -o %t RUN: llvm-profdata show --instr -all-functions %t | FileCheck %s --check-prefix=WEIGHT2 WEIGHT2: Counters: WEIGHT2: usage: WEIGHT2: Hash: 0x0000000000000000 WEIGHT2: Counters: 1 WEIGHT2: Function count: 0 WEIGHT2: foo: WEIGHT2: Hash: 0x000000000000028a WEIGHT2: Counters: 3 WEIGHT2: Function count: 4334944365 WEIGHT2: bar: WEIGHT2: Hash: 0x000000000000028a WEIGHT2: Counters: 3 WEIGHT2: Function count: 2600966619 WEIGHT2: main: WEIGHT2: Hash: 0x7d31c47ea98f8248 WEIGHT2: Counters: 60 WEIGHT2: Function count: 8 WEIGHT2: Functions shown: 4 WEIGHT2: Total functions: 4 WEIGHT2: Maximum function count: 4334944365 WEIGHT2: Maximum internal block count: 1339571480 3- Bad merge: foo and bar profiles with invalid weights RUN: not llvm-profdata merge --instr %p/Inputs/weight-instr-bar.profdata:3 %p/Inputs/weight-instr-foo.profdata:-5 -o %t.out 2>&1 | FileCheck %s --check-prefix=ERROR3 ERROR3: error: Input weight must be a positive integer.