diff --git a/test/Transforms/SampleProfile/Inputs/bad_fn_header.prof b/test/Transforms/SampleProfile/Inputs/bad_fn_header.prof new file mode 100644 index 00000000000..90459e65d04 --- /dev/null +++ b/test/Transforms/SampleProfile/Inputs/bad_fn_header.prof @@ -0,0 +1,6 @@ +symbol table +1 +empty +empty:100:BAD +0: 0 +1: 100 diff --git a/test/Transforms/SampleProfile/Inputs/bad_sample_line.prof b/test/Transforms/SampleProfile/Inputs/bad_sample_line.prof new file mode 100644 index 00000000000..8c0d7630f91 --- /dev/null +++ b/test/Transforms/SampleProfile/Inputs/bad_sample_line.prof @@ -0,0 +1,6 @@ +symbol table +1 +empty +empty:100:0:1 +0: 0 +1: BAD diff --git a/test/Transforms/SampleProfile/Inputs/missing_num_syms.prof b/test/Transforms/SampleProfile/Inputs/missing_num_syms.prof new file mode 100644 index 00000000000..7cd053611c8 --- /dev/null +++ b/test/Transforms/SampleProfile/Inputs/missing_num_syms.prof @@ -0,0 +1,5 @@ +symbol table +empty +empty:100:0:1 +0: 0 +1: 100 diff --git a/test/Transforms/SampleProfile/Inputs/missing_samples.prof b/test/Transforms/SampleProfile/Inputs/missing_samples.prof new file mode 100644 index 00000000000..edd36c2f52f --- /dev/null +++ b/test/Transforms/SampleProfile/Inputs/missing_samples.prof @@ -0,0 +1,6 @@ +symbol table +1 +empty +empty:100:0:10 +0: 0 +1: 100 diff --git a/test/Transforms/SampleProfile/Inputs/missing_symtab.prof b/test/Transforms/SampleProfile/Inputs/missing_symtab.prof new file mode 100644 index 00000000000..2a826138b08 --- /dev/null +++ b/test/Transforms/SampleProfile/Inputs/missing_symtab.prof @@ -0,0 +1,5 @@ +1 +empty +empty:100:0:1 +0: 0 +1: 100 diff --git a/test/Transforms/SampleProfile/syntax.ll b/test/Transforms/SampleProfile/syntax.ll new file mode 100644 index 00000000000..baf3852f322 --- /dev/null +++ b/test/Transforms/SampleProfile/syntax.ll @@ -0,0 +1,17 @@ +; RUN: not opt < %s -sample-profile -sample-profile-file=missing.prof 2>&1 | FileCheck -check-prefix=MISSING-FILE %s +; RUN: not opt < %s -sample-profile -sample-profile-file=%S/Inputs/missing_symtab.prof 2>&1 | FileCheck -check-prefix=MISSING-SYMTAB %s +; RUN: not opt < %s -sample-profile -sample-profile-file=%S/Inputs/missing_num_syms.prof 2>&1 | FileCheck -check-prefix=MISSING-NUM-SYMS %s +; RUN: not opt < %s -sample-profile -sample-profile-file=%S/Inputs/bad_fn_header.prof 2>&1 | FileCheck -check-prefix=BAD-FN-HEADER %s +; RUN: not opt < %s -sample-profile -sample-profile-file=%S/Inputs/bad_sample_line.prof 2>&1 | FileCheck -check-prefix=BAD-SAMPLE-LINE %s +; RUN: not opt < %s -sample-profile -sample-profile-file=%S/Inputs/missing_samples.prof 2>&1 | FileCheck -check-prefix=MISSING-SAMPLES %s + +define void @empty() { +entry: + ret void +} +; MISSING-FILE: LLVM ERROR: Could not open profile file missing.prof: No such file or directory +; MISSING-SYMTAB: LLVM ERROR: {{.*}}missing_symtab.prof:1: Expected 'symbol table', found 1 +; MISSING-NUM-SYMS: LLVM ERROR: {{.*}}missing_num_syms.prof:2: Expected a number, found empty +; BAD-FN-HEADER: LLVM ERROR: {{.*}}bad_fn_header.prof:4: Expected 'mangled_name:NUM:NUM:NUM', found empty:100:BAD +; BAD-SAMPLE-LINE: LLVM ERROR: {{.*}}bad_sample_line.prof:6: Expected 'mangled_name:NUM:NUM:NUM', found 1: BAD +; MISSING-SAMPLES: LLVM ERROR: {{.*}}missing_samples.prof:6: Unexpected end of file