[llvm] r196106 - Add tests for profile sample file parsing.

Diego Novillo dnovillo at google.com
Mon Dec 2 07:12:51 PST 2013


Author: dnovillo
Date: Mon Dec  2 09:12:50 2013
New Revision: 196106

URL: http://llvm.org/viewvc/llvm-project?rev=196106&view=rev
Log:
Add tests for profile sample file parsing.

The profile file parser needed some tests for its parsing actions.
This adds tests for each of the error messages emitted by the parser.

Added:
    llvm/trunk/test/Transforms/SampleProfile/Inputs/bad_fn_header.prof
    llvm/trunk/test/Transforms/SampleProfile/Inputs/bad_sample_line.prof
    llvm/trunk/test/Transforms/SampleProfile/Inputs/missing_num_syms.prof
    llvm/trunk/test/Transforms/SampleProfile/Inputs/missing_samples.prof
    llvm/trunk/test/Transforms/SampleProfile/Inputs/missing_symtab.prof
    llvm/trunk/test/Transforms/SampleProfile/syntax.ll

Added: llvm/trunk/test/Transforms/SampleProfile/Inputs/bad_fn_header.prof
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SampleProfile/Inputs/bad_fn_header.prof?rev=196106&view=auto
==============================================================================
--- llvm/trunk/test/Transforms/SampleProfile/Inputs/bad_fn_header.prof (added)
+++ llvm/trunk/test/Transforms/SampleProfile/Inputs/bad_fn_header.prof Mon Dec  2 09:12:50 2013
@@ -0,0 +1,6 @@
+symbol table
+1
+empty
+empty:100:BAD
+0: 0
+1: 100

Added: llvm/trunk/test/Transforms/SampleProfile/Inputs/bad_sample_line.prof
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SampleProfile/Inputs/bad_sample_line.prof?rev=196106&view=auto
==============================================================================
--- llvm/trunk/test/Transforms/SampleProfile/Inputs/bad_sample_line.prof (added)
+++ llvm/trunk/test/Transforms/SampleProfile/Inputs/bad_sample_line.prof Mon Dec  2 09:12:50 2013
@@ -0,0 +1,6 @@
+symbol table
+1
+empty
+empty:100:0:1
+0: 0
+1: BAD

Added: llvm/trunk/test/Transforms/SampleProfile/Inputs/missing_num_syms.prof
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SampleProfile/Inputs/missing_num_syms.prof?rev=196106&view=auto
==============================================================================
--- llvm/trunk/test/Transforms/SampleProfile/Inputs/missing_num_syms.prof (added)
+++ llvm/trunk/test/Transforms/SampleProfile/Inputs/missing_num_syms.prof Mon Dec  2 09:12:50 2013
@@ -0,0 +1,5 @@
+symbol table
+empty
+empty:100:0:1
+0: 0
+1: 100

Added: llvm/trunk/test/Transforms/SampleProfile/Inputs/missing_samples.prof
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SampleProfile/Inputs/missing_samples.prof?rev=196106&view=auto
==============================================================================
--- llvm/trunk/test/Transforms/SampleProfile/Inputs/missing_samples.prof (added)
+++ llvm/trunk/test/Transforms/SampleProfile/Inputs/missing_samples.prof Mon Dec  2 09:12:50 2013
@@ -0,0 +1,6 @@
+symbol table
+1
+empty
+empty:100:0:10
+0: 0
+1: 100

Added: llvm/trunk/test/Transforms/SampleProfile/Inputs/missing_symtab.prof
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SampleProfile/Inputs/missing_symtab.prof?rev=196106&view=auto
==============================================================================
--- llvm/trunk/test/Transforms/SampleProfile/Inputs/missing_symtab.prof (added)
+++ llvm/trunk/test/Transforms/SampleProfile/Inputs/missing_symtab.prof Mon Dec  2 09:12:50 2013
@@ -0,0 +1,5 @@
+1
+empty
+empty:100:0:1
+0: 0
+1: 100

Added: llvm/trunk/test/Transforms/SampleProfile/syntax.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Transforms/SampleProfile/syntax.ll?rev=196106&view=auto
==============================================================================
--- llvm/trunk/test/Transforms/SampleProfile/syntax.ll (added)
+++ llvm/trunk/test/Transforms/SampleProfile/syntax.ll Mon Dec  2 09:12:50 2013
@@ -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





More information about the llvm-commits mailing list