; REQUIRES: x86_64-linux
; RUN: mkdir -p %t
; RUN: llvm-ctxprof-util fromYAML --input %S/Inputs/empty.yaml -output %t/empty.bitstream
; RUN: llvm-bcanalyzer --dump %t/empty.bitstream | FileCheck %s --check-prefix=EMPTY
; RUN: llvm-ctxprof-util fromYAML -input %S/Inputs/valid.yaml -output %t/valid.bitstream
; RUN: llvm-ctxprof-util toYAML -input %t/valid.bitstream -output %t/valid2.yaml
; RUN: diff %t/valid2.yaml %S/Inputs/valid.yaml
; For the valid case, check against a reference output.
; Note that uint64_t are printed as signed values by llvm-bcanalyzer:
; * 18446744073709551613 in yaml is -3 in the output
; * 18446744073709551612 in yaml is -4 in the output
; Also we have no callee/context at index 0, 2 callsites for index 1, and one for
; index 2.
; RUN: llvm-bcanalyzer --dump %t/valid.bitstream | FileCheck %s --check-prefix=VALID
; EMPTY:
; EMPTY-NEXT:
; EMPTY-NEXT:
; EMPTY-NEXT:
; VALID:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT:
; VALID-NEXT: