diff options
Diffstat (limited to 'test/tools')
-rw-r--r-- | test/tools/llvm-pdbdump/Inputs/FilterTest.cpp | 18 | ||||
-rw-r--r-- | test/tools/llvm-pdbdump/Inputs/FilterTest.pdb | bin | 44032 -> 44032 bytes | |||
-rw-r--r-- | test/tools/llvm-pdbdump/regex-filter.test | 8 | ||||
-rw-r--r-- | test/tools/llvm-pdbdump/symbol-filters.test | 74 | ||||
-rw-r--r-- | test/tools/llvm-profdata/sample-profile-basic.test | 7 | ||||
-rw-r--r-- | test/tools/llvm-readobj/wasm-invalid.test | 7 |
6 files changed, 107 insertions, 7 deletions
diff --git a/test/tools/llvm-pdbdump/Inputs/FilterTest.cpp b/test/tools/llvm-pdbdump/Inputs/FilterTest.cpp index bcf9360d4a9b..4dd5581e2fca 100644 --- a/test/tools/llvm-pdbdump/Inputs/FilterTest.cpp +++ b/test/tools/llvm-pdbdump/Inputs/FilterTest.cpp @@ -10,6 +10,8 @@ public: void MemberFunc() {} + int foo() const { return IntMemberVar; } + private: int IntMemberVar; double DoubleMemberVar; @@ -18,10 +20,26 @@ private: int IntGlobalVar; double DoubleGlobalVar; typedef int GlobalTypedef; +char OneByte; +char TwoBytes[2]; +char ThreeBytes[3]; + enum GlobalEnum { GlobalEnumVal1 } GlobalEnumVar; +int CFunc() { + return (int)OneByte * 2; +} +int BFunc() { + return 42; +} +int AFunc() { + static FilterTestClass FC; + + return (CFunc() + BFunc()) * IntGlobalVar + FC.foo(); +} + int main(int argc, char **argv) { FilterTestClass TestClass; GlobalTypedef v1; diff --git a/test/tools/llvm-pdbdump/Inputs/FilterTest.pdb b/test/tools/llvm-pdbdump/Inputs/FilterTest.pdb Binary files differindex 5f01ec701b81..ce7e017f9151 100644 --- a/test/tools/llvm-pdbdump/Inputs/FilterTest.pdb +++ b/test/tools/llvm-pdbdump/Inputs/FilterTest.pdb diff --git a/test/tools/llvm-pdbdump/regex-filter.test b/test/tools/llvm-pdbdump/regex-filter.test index d2f500e88c33..36c3da33e2e4 100644 --- a/test/tools/llvm-pdbdump/regex-filter.test +++ b/test/tools/llvm-pdbdump/regex-filter.test @@ -1,4 +1,4 @@ -; RUN: llvm-pdbdump pretty -symbols -globals -types %p/Inputs/FilterTest.pdb \ +; RUN: llvm-pdbdump pretty -module-syms -globals -types %p/Inputs/FilterTest.pdb \ ; RUN: | FileCheck --check-prefix=NO_FILTER %s ; RUN: llvm-pdbdump pretty -types -exclude-types="GlobalTypedef|NestedTypedef" \ @@ -11,15 +11,15 @@ ; RUN: llvm-pdbdump pretty -classes -typedefs %p/Inputs/FilterTest.pdb \ ; RUN: | FileCheck --check-prefix=EXCLUDE_ENUMS %s -; RUN: llvm-pdbdump pretty -types -symbols -globals -exclude-symbols="MemberVar|GlobalVar" \ +; RUN: llvm-pdbdump pretty -types -module-syms -globals -exclude-symbols="MemberVar|GlobalVar" \ ; RUN: %p/Inputs/FilterTest.pdb | FileCheck --check-prefix=EXCLUDE_VARS %s ; RUN: llvm-pdbdump pretty -types -exclude-types="FilterTestClass" \ ; RUN: %p/Inputs/FilterTest.pdb | FileCheck --check-prefix=EXCLUDE_WHOLE_CLASS %s -; RUN: llvm-pdbdump pretty -symbols -globals -exclude-compilands="FilterTest.obj" \ +; RUN: llvm-pdbdump pretty -module-syms -globals -exclude-compilands="FilterTest.obj" \ ; RUN: %p/Inputs/FilterTest.pdb | FileCheck --check-prefix=EXCLUDE_COMPILAND %s ; RUN: llvm-pdbdump pretty -types -include-types="FilterTestClass" \ ; RUN: %p/Inputs/FilterTest.pdb | FileCheck --check-prefix=INCLUDE_ONLY_TYPES %s -; RUN: llvm-pdbdump pretty -types -symbols -globals -include-symbols="[[:<:]](IntGlobalVar|DoubleGlobalVar)[[:>:]]" \ +; RUN: llvm-pdbdump pretty -types -module-syms -globals -include-symbols="[[:<:]](IntGlobalVar|DoubleGlobalVar)[[:>:]]" \ ; RUN: %p/Inputs/FilterTest.pdb | FileCheck --check-prefix=INCLUDE_ONLY_VARS %s ; NO_FILTER: ---TYPES--- diff --git a/test/tools/llvm-pdbdump/symbol-filters.test b/test/tools/llvm-pdbdump/symbol-filters.test new file mode 100644 index 000000000000..d12d2aa8be0f --- /dev/null +++ b/test/tools/llvm-pdbdump/symbol-filters.test @@ -0,0 +1,74 @@ +; RUN: llvm-pdbdump pretty -globals -module-syms -sym-types=data %p/Inputs/FilterTest.pdb \ +; RUN: | FileCheck --check-prefix=ONLY_DATA %s + +; RUN: llvm-pdbdump pretty -globals -module-syms -sym-types=thunks %p/Inputs/FilterTest.pdb \ +; RUN: | FileCheck --check-prefix=ONLY_THUNKS %s + +; RUN: llvm-pdbdump pretty -globals -module-syms -sym-types=funcs %p/Inputs/FilterTest.pdb \ +; RUN: | FileCheck --check-prefix=ONLY_FUNCS %s + +; RUN: llvm-pdbdump pretty -globals -module-syms -sym-types=funcs -sym-types=data \ +; RUN: %p/Inputs/FilterTest.pdb | FileCheck --check-prefix=TWO_TYPES %s + +; RUN: llvm-pdbdump pretty -globals -module-syms -sym-types=data \ +; RUN: -symbol-order=name %p/Inputs/FilterTest.pdb | FileCheck --check-prefix=NAME_SORT_DATA %s + +; RUN: llvm-pdbdump pretty -globals -module-syms -sym-types=data \ +; RUN: -symbol-order=size %p/Inputs/FilterTest.pdb | FileCheck --check-prefix=SIZE_SORT_DATA %s + +; RUN: llvm-pdbdump pretty -globals -module-syms -sym-types=funcs \ +; RUN: -symbol-order=name %p/Inputs/FilterTest.pdb | FileCheck --check-prefix=NAME_SORT_FUNCS %s + +; RUN: llvm-pdbdump pretty -globals -module-syms -sym-types=funcs \ +; RUN: -symbol-order=size %p/Inputs/FilterTest.pdb | FileCheck --check-prefix=SIZE_SORT_FUNCS %s + +; ONLY_DATA-NOT: func +; ONLY_DATA-NOT: thunk +; ONLY_DATA-DAG: data {{.*}} static char OneByte +; ONLY_DATA-DAG: data {{.*}} static double DoubleGlobalVar +; ONLY_DATA-DAG: data {{.*}} static char TwoBytes[2] +; ONLY_DATA-DAG: data {{.*}} static char ThreeBytes[3] +; ONLY_DATA-DAG: data {{.*}} static int IntGlobalVar +; ONLY_DATA-DAG: data {{.*}} static GlobalEnum GlobalEnumVar + +; ONLY_FUNCS-NOT: data +; ONLY_FUNCS-NOT: thunk +; ONLY_FUNCS: func {{.*}} int __cdecl main(int argc, char** argv) +; ONLY_FUNCS: func {{.*}} int __cdecl CFunc() +; ONLY_FUNCS: func {{.*}} int __cdecl BFunc() +; ONLY_FUNCS: func {{.*}} int __cdecl AFunc() +; ONLY_FUNCS: func {{.*}} int FilterTestClass::foo() + +; ONLY_THUNKS-NOT: func +; ONLY_THUNKS-NOT: data +; ONLY_THUNKS-DAG: thunk {{.*}} (TrampIncremental) + +; TWO_TYPES-NOT: thunk +; TWO_TYPES-DAG: func {{.*}} int __cdecl main(int argc, char** argv) +; TWO_TYPES-DAG: data {{.*}} static double DoubleGlobalVar + +; NAME_SORT_DATA: data {{.*}} static double DoubleGlobalVar +; NAME_SORT_DATA: data {{.*}} static GlobalEnum GlobalEnumVar +; NAME_SORT_DATA: data {{.*}} static int IntGlobalVar +; NAME_SORT_DATA: data {{.*}} static char OneByte +; NAME_SORT_DATA: data {{.*}} static char ThreeBytes[3] +; NAME_SORT_DATA: data {{.*}} static char TwoBytes[2] + +; SIZE_SORT_DATA: data {{.*}}sizeof=8{{.*}}double DoubleGlobalVar +; SIZE_SORT_DATA-DAG: data {{.*}}sizeof=4{{.*}}GlobalEnum GlobalEnumVar +; SIZE_SORT_DATA-DAG: data {{.*}}sizeof=4{{.*}}int IntGlobalVar +; SIZE_SORT_DATA: data {{.*}}sizeof=3{{.*}}char ThreeBytes[3] +; SIZE_SORT_DATA: data {{.*}}sizeof=2{{.*}}char TwoBytes[2] +; SIZE_SORT_DATA: data {{.*}}sizeof=1{{.*}}char OneByte + +; NAME_SORT_FUNCS: func {{.*}}sizeof= 40{{.*}}AFunc +; NAME_SORT_FUNCS: func {{.*}}sizeof= 10{{.*}}BFunc +; NAME_SORT_FUNCS: func {{.*}}sizeof= 14{{.*}}CFunc +; NAME_SORT_FUNCS: func {{.*}}sizeof= 16{{.*}}FilterTestClass::foo +; NAME_SORT_FUNCS: func {{.*}}sizeof= 7{{.*}}main + +; SIZE_SORT_FUNCS: func {{.*}}sizeof= 40{{.*}}AFunc +; SIZE_SORT_FUNCS: func {{.*}}sizeof= 16{{.*}}FilterTestClass::foo +; SIZE_SORT_FUNCS: func {{.*}}sizeof= 14{{.*}}CFunc +; SIZE_SORT_FUNCS: func {{.*}}sizeof= 10{{.*}}BFunc +; SIZE_SORT_FUNCS: func {{.*}}sizeof= 7{{.*}}main diff --git a/test/tools/llvm-profdata/sample-profile-basic.test b/test/tools/llvm-profdata/sample-profile-basic.test index 211d8c5bbd84..3ba42c20f2e8 100644 --- a/test/tools/llvm-profdata/sample-profile-basic.test +++ b/test/tools/llvm-profdata/sample-profile-basic.test @@ -25,9 +25,10 @@ RUN: diff %t-binary %t-text counters have doubled. RUN: llvm-profdata merge --sample %p/Inputs/sample-profile.proftext -o %t-binprof RUN: llvm-profdata merge --sample --text %p/Inputs/sample-profile.proftext %t-binprof -o - | FileCheck %s --check-prefix=MERGE1 -MERGE1-DAG: main:368038:0 -MERGE1-DAG: 9: 4128 _Z3fooi:1262 _Z3bari:2942 -MERGE1-DAG: _Z3fooi:15422:1220 +MERGE1: main:368038:0 +MERGE1: 9: 4128 _Z3fooi:1262 _Z3bari:2942 +MERGE1: _Z3bari:40602:2874 +MERGE1: _Z3fooi:15422:1220 5- Detect invalid text encoding (e.g. instrumentation profile text format). RUN: not llvm-profdata show --sample %p/Inputs/foo3bar3-1.proftext 2>&1 | FileCheck %s --check-prefix=BADTEXT diff --git a/test/tools/llvm-readobj/wasm-invalid.test b/test/tools/llvm-readobj/wasm-invalid.test new file mode 100644 index 000000000000..d500d582ca03 --- /dev/null +++ b/test/tools/llvm-readobj/wasm-invalid.test @@ -0,0 +1,7 @@ +# RUN: yaml2obj %s | not llvm-readobj -t - 2>&1 | FileCheck %s + +--- !WASM +FileHeader: + Version: 0x0000000c + +# CHECK: Error reading file: <stdin>: Bad version number |