diff options
Diffstat (limited to 'test/Bitcode')
-rw-r--r-- | test/Bitcode/thinlto-alias.ll | 36 | ||||
-rw-r--r-- | test/Bitcode/thinlto-function-summary-callgraph-pgo.ll | 28 | ||||
-rw-r--r-- | test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll | 48 | ||||
-rw-r--r-- | test/Bitcode/thinlto-function-summary-callgraph.ll | 31 | ||||
-rw-r--r-- | test/Bitcode/thinlto-function-summary-originalnames.ll | 8 | ||||
-rw-r--r-- | test/Bitcode/thinlto-function-summary-refgraph.ll | 59 | ||||
-rw-r--r-- | test/Bitcode/thinlto-function-summary.ll | 25 |
7 files changed, 134 insertions, 101 deletions
diff --git a/test/Bitcode/thinlto-alias.ll b/test/Bitcode/thinlto-alias.ll index cfdf8f7b0bd..2c235f0620e 100644 --- a/test/Bitcode/thinlto-alias.ll +++ b/test/Bitcode/thinlto-alias.ll @@ -5,33 +5,31 @@ ; RUN: llvm-lto -thinlto -o %t3 %t.o %t2.o ; RUN: llvm-bcanalyzer -dump %t3.thinlto.bc | FileCheck %s --check-prefix=COMBINED +; CHECK: <SOURCE_FILENAME +; "main" +; CHECK-NEXT: <FUNCTION op0=0 op1=4 +; "analias" +; CHECK-NEXT: <FUNCTION op0=4 op1=7 ; CHECK: <GLOBALVAL_SUMMARY_BLOCK ; CHECK-NEXT: <VERSION -; See if the call to func is registered, using the expected callsite count -; and value id matching the subsequent value symbol table. -; CHECK-NEXT: <PERMODULE {{.*}} op4=[[FUNCID:[0-9]+]]/> +; See if the call to func is registered. +; The value id 1 matches the second FUNCTION record above. +; CHECK-NEXT: <PERMODULE {{.*}} op4=1/> ; CHECK-NEXT: </GLOBALVAL_SUMMARY_BLOCK> -; CHECK-NEXT: <VALUE_SYMTAB -; CHECK-NEXT: <FNENTRY {{.*}} record string = 'main' -; External function analias should have entry with value id FUNCID -; CHECK-NEXT: <ENTRY {{.*}} op0=[[FUNCID]] {{.*}} record string = 'analias' -; CHECK-NEXT: </VALUE_SYMTAB> + +; CHECK: <STRTAB_BLOCK +; CHECK-NEXT: blob data = 'mainanalias' ; COMBINED: <GLOBALVAL_SUMMARY_BLOCK ; COMBINED-NEXT: <VERSION -; See if the call to analias is registered, using the expected callsite count -; and value id matching the subsequent value symbol table. -; COMBINED-NEXT: <COMBINED {{.*}} op5=[[ALIASID:[0-9]+]]/> -; Followed by the alias and aliasee +; See if the call to analias is registered, using the expected value id. +; COMBINED-NEXT: <VALUE_GUID op0=[[ALIASID:[0-9]+]] op1=-5751648690987223394/> +; COMBINED-NEXT: <VALUE_GUID +; COMBINED-NEXT: <VALUE_GUID op0=[[ALIASEEID:[0-9]+]] op1=-1039159065113703048/> +; COMBINED-NEXT: <COMBINED {{.*}} op5=[[ALIASID]]/> ; COMBINED-NEXT: <COMBINED {{.*}} -; COMBINED-NEXT: <COMBINED_ALIAS {{.*}} op3=[[ALIASEEID:[0-9]+]] +; COMBINED-NEXT: <COMBINED_ALIAS {{.*}} op3=[[ALIASEEID]] ; COMBINED-NEXT: </GLOBALVAL_SUMMARY_BLOCK -; COMBINED-NEXT: <VALUE_SYMTAB -; Entry for function func should have entry with value id ALIASID -; COMBINED-NEXT: <COMBINED_ENTRY {{.*}} op0=[[ALIASID]] op1=-5751648690987223394/> -; COMBINED-NEXT: <COMBINED -; COMBINED-NEXT: <COMBINED_ENTRY {{.*}} op0=[[ALIASEEID]] op1=-1039159065113703048/> -; COMBINED-NEXT: </VALUE_SYMTAB> ; ModuleID = 'thinlto-function-summary-callgraph.ll' target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" diff --git a/test/Bitcode/thinlto-function-summary-callgraph-pgo.ll b/test/Bitcode/thinlto-function-summary-callgraph-pgo.ll index 713e36dd14d..7f9d6d95f50 100644 --- a/test/Bitcode/thinlto-function-summary-callgraph-pgo.ll +++ b/test/Bitcode/thinlto-function-summary-callgraph-pgo.ll @@ -10,31 +10,27 @@ ; RUN: llvm-lto -thinlto-index-stats %p/Inputs/thinlto-function-summary-callgraph-pgo.1.bc | FileCheck %s --check-prefix=OLD ; RUN: llvm-lto -thinlto-index-stats %p/Inputs/thinlto-function-summary-callgraph-pgo-combined.1.bc | FileCheck %s --check-prefix=OLD-COMBINED +; CHECK: <SOURCE_FILENAME +; CHECK-NEXT: <FUNCTION +; "func" +; CHECK-NEXT: <FUNCTION op0=4 op1=4 ; CHECK: <GLOBALVAL_SUMMARY_BLOCK ; CHECK-NEXT: <VERSION -; See if the call to func is registered, using the expected callsite count -; and hotness type, with value id matching the subsequent value symbol table. -; CHECK-NEXT: <PERMODULE_PROFILE {{.*}} op4=[[FUNCID:[0-9]+]] op5=2/> +; See if the call to func is registered, using the expected hotness type. +; CHECK-NEXT: <PERMODULE_PROFILE {{.*}} op4=1 op5=2/> ; CHECK-NEXT: </GLOBALVAL_SUMMARY_BLOCK> -; CHECK-NEXT: <VALUE_SYMTAB -; CHECK-NEXT: <FNENTRY {{.*}} record string = 'main' -; External function func should have entry with value id FUNCID -; CHECK-NEXT: <ENTRY {{.*}} op0=[[FUNCID]] {{.*}} record string = 'func' -; CHECK-NEXT: </VALUE_SYMTAB> +; CHECK: <STRTAB_BLOCK +; CHECK-NEXT: blob data = 'mainfunc' ; COMBINED: <GLOBALVAL_SUMMARY_BLOCK ; COMBINED-NEXT: <VERSION +; COMBINED-NEXT: <VALUE_GUID op0=[[FUNCID:[0-9]+]] op1=7289175272376759421/> +; COMBINED-NEXT: <VALUE_GUID ; COMBINED-NEXT: <COMBINED -; See if the call to func is registered, using the expected callsite count -; and hotness type, with value id matching the subsequent value symbol table. +; See if the call to func is registered, using the expected hotness type. ; op6=2 which is hotnessType::None. -; COMBINED-NEXT: <COMBINED_PROFILE {{.*}} op5=[[FUNCID:[0-9]+]] op6=2/> +; COMBINED-NEXT: <COMBINED_PROFILE {{.*}} op5=[[FUNCID]] op6=2/> ; COMBINED-NEXT: </GLOBALVAL_SUMMARY_BLOCK> -; COMBINED-NEXT: <VALUE_SYMTAB -; Entry for function func should have entry with value id FUNCID -; COMBINED-NEXT: <COMBINED_ENTRY {{.*}} op0=[[FUNCID]] op1=7289175272376759421/> -; COMBINED-NEXT: <COMBINED -; COMBINED-NEXT: </VALUE_SYMTAB> ; ModuleID = 'thinlto-function-summary-callgraph.ll' target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" diff --git a/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll b/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll index 3a5adea202e..982bb5cb7e5 100644 --- a/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll +++ b/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll @@ -6,27 +6,45 @@ ; RUN: llvm-bcanalyzer -dump %t3.thinlto.bc | FileCheck %s --check-prefix=COMBINED +; CHECK: <SOURCE_FILENAME +; "hot_function" +; CHECK-NEXT: <FUNCTION op0=0 op1=12 +; "hot1" +; CHECK-NEXT: <FUNCTION op0=12 op1=4 +; "hot2" +; CHECK-NEXT: <FUNCTION op0=16 op1=4 +; "hot3" +; CHECK-NEXT: <FUNCTION op0=20 op1=4 +; "hot4" +; CHECK-NEXT: <FUNCTION op0=24 op1=4 +; "cold" +; CHECK-NEXT: <FUNCTION op0=28 op1=4 +; "none1" +; CHECK-NEXT: <FUNCTION op0=32 op1=5 +; "none2" +; CHECK-NEXT: <FUNCTION op0=37 op1=5 +; "none3" +; CHECK-NEXT: <FUNCTION op0=42 op1=5 ; CHECK-LABEL: <GLOBALVAL_SUMMARY_BLOCK ; CHECK-NEXT: <VERSION -; See if the call to func is registered, using the expected callsite count -; and profile count, with value id matching the subsequent value symbol table. -; CHECK-NEXT: <PERMODULE_PROFILE {{.*}} op4=[[HOT1:.*]] op5=3 op6=[[COLD:.*]] op7=1 op8=[[HOT2:.*]] op9=3 op10=[[HOT4:.*]] op11=3 op12=[[NONE1:.*]] op13=2 op14=[[HOT3:.*]] op15=3 op16=[[NONE2:.*]] op17=2 op18=[[NONE3:.*]] op19=2 op20=[[LEGACY:.*]] op21=3/> +; CHECK-NEXT: <VALUE_GUID op0=25 op1=123/> +; op4=hot1 op6=cold op8=hot2 op10=hot4 op12=none1 op14=hot3 op16=none2 op18=none3 op20=123 +; CHECK-NEXT: <PERMODULE_PROFILE {{.*}} op4=1 op5=3 op6=5 op7=1 op8=2 op9=3 op10=4 op11=3 op12=6 op13=2 op14=3 op15=3 op16=7 op17=2 op18=8 op19=2 op20=25 op21=3/> ; CHECK-NEXT: </GLOBALVAL_SUMMARY_BLOCK> -; CHECK-LABEL: <VALUE_SYMTAB -; CHECK-NEXT: <FNENTRY {{.*}} record string = 'hot_function -; CHECK-DAG: <ENTRY abbrevid=6 op0=[[NONE1]] {{.*}} record string = 'none1' -; CHECK-DAG: <ENTRY abbrevid=6 op0=[[COLD]] {{.*}} record string = 'cold' -; CHECK-DAG: <ENTRY abbrevid=6 op0=[[NONE2]] {{.*}} record string = 'none2' -; CHECK-DAG: <ENTRY abbrevid=6 op0=[[NONE3]] {{.*}} record string = 'none3' -; CHECK-DAG: <ENTRY abbrevid=6 op0=[[HOT1]] {{.*}} record string = 'hot1' -; CHECK-DAG: <ENTRY abbrevid=6 op0=[[HOT2]] {{.*}} record string = 'hot2' -; CHECK-DAG: <ENTRY abbrevid=6 op0=[[HOT3]] {{.*}} record string = 'hot3' -; CHECK-DAG: <ENTRY abbrevid=6 op0=[[HOT4]] {{.*}} record string = 'hot4' -; CHECK-DAG: <COMBINED_ENTRY abbrevid=11 op0=[[LEGACY]] op1=123/> -; CHECK-LABEL: </VALUE_SYMTAB> + +; CHECK: <STRTAB_BLOCK +; CHECK-NEXT: blob data = 'hot_functionhot1hot2hot3hot4coldnone1none2none3' ; COMBINED: <GLOBALVAL_SUMMARY_BLOCK ; COMBINED-NEXT: <VERSION +; COMBINED-NEXT: <VALUE_GUID +; COMBINED-NEXT: <VALUE_GUID +; COMBINED-NEXT: <VALUE_GUID +; COMBINED-NEXT: <VALUE_GUID +; COMBINED-NEXT: <VALUE_GUID +; COMBINED-NEXT: <VALUE_GUID +; COMBINED-NEXT: <VALUE_GUID +; COMBINED-NEXT: <VALUE_GUID ; COMBINED-NEXT: <COMBINED abbrevid= ; COMBINED-NEXT: <COMBINED abbrevid= ; COMBINED-NEXT: <COMBINED abbrevid= diff --git a/test/Bitcode/thinlto-function-summary-callgraph.ll b/test/Bitcode/thinlto-function-summary-callgraph.ll index c00907b7fb2..8cc60ad6336 100644 --- a/test/Bitcode/thinlto-function-summary-callgraph.ll +++ b/test/Bitcode/thinlto-function-summary-callgraph.ll @@ -10,30 +10,27 @@ ; RUN: llvm-lto -thinlto-index-stats %p/Inputs/thinlto-function-summary-callgraph.1.bc | FileCheck %s --check-prefix=OLD ; RUN: llvm-lto -thinlto-index-stats %p/Inputs/thinlto-function-summary-callgraph-combined.1.bc | FileCheck %s --check-prefix=OLD-COMBINED +; CHECK: <SOURCE_FILENAME +; CHECK-NEXT: <FUNCTION +; "func" +; CHECK-NEXT: <FUNCTION op0=4 op1=4 ; CHECK: <GLOBALVAL_SUMMARY_BLOCK ; CHECK-NEXT: <VERSION -; See if the call to func is registered, using the expected callsite count -; and value id matching the subsequent value symbol table. -; CHECK-NEXT: <PERMODULE {{.*}} op4=[[FUNCID:[0-9]+]]/> +; See if the call to func is registered. +; CHECK-NEXT: <PERMODULE {{.*}} op4=1/> ; CHECK-NEXT: </GLOBALVAL_SUMMARY_BLOCK> -; CHECK-NEXT: <VALUE_SYMTAB -; CHECK-NEXT: <FNENTRY {{.*}} record string = 'main' -; External function func should have entry with value id FUNCID -; CHECK-NEXT: <ENTRY {{.*}} op0=[[FUNCID]] {{.*}} record string = 'func' -; CHECK-NEXT: </VALUE_SYMTAB> +; CHECK: <STRTAB_BLOCK +; CHECK-NEXT: blob data = 'mainfunc' + ; COMBINED: <GLOBALVAL_SUMMARY_BLOCK ; COMBINED-NEXT: <VERSION +; COMBINED-NEXT: <VALUE_GUID op0=[[FUNCID:[0-9]+]] op1=7289175272376759421/> +; COMBINED-NEXT: <VALUE_GUID ; COMBINED-NEXT: <COMBINED -; See if the call to func is registered, using the expected callsite count -; and value id matching the subsequent value symbol table. -; COMBINED-NEXT: <COMBINED {{.*}} op5=[[FUNCID:[0-9]+]]/> +; See if the call to func is registered. +; COMBINED-NEXT: <COMBINED {{.*}} op5=[[FUNCID]]/> ; COMBINED-NEXT: </GLOBALVAL_SUMMARY_BLOCK> -; COMBINED-NEXT: <VALUE_SYMTAB -; Entry for function func should have entry with value id FUNCID -; COMBINED-NEXT: <COMBINED_ENTRY {{.*}} op0=[[FUNCID]] op1=7289175272376759421/> -; COMBINED-NEXT: <COMBINED -; COMBINED-NEXT: </VALUE_SYMTAB> ; ModuleID = 'thinlto-function-summary-callgraph.ll' target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" @@ -49,4 +46,4 @@ entry: declare void @func(...) #1 ; OLD: Index {{.*}} contains 1 nodes (1 functions, 0 alias, 0 globals) and 1 edges (0 refs and 1 calls) -; OLD-COMBINED: Index {{.*}} contains 2 nodes (2 functions, 0 alias, 0 globals) and 1 edges (0 refs and 1 calls)
\ No newline at end of file +; OLD-COMBINED: Index {{.*}} contains 2 nodes (2 functions, 0 alias, 0 globals) and 1 edges (0 refs and 1 calls) diff --git a/test/Bitcode/thinlto-function-summary-originalnames.ll b/test/Bitcode/thinlto-function-summary-originalnames.ll index 8777bd91607..afc9772484e 100644 --- a/test/Bitcode/thinlto-function-summary-originalnames.ll +++ b/test/Bitcode/thinlto-function-summary-originalnames.ll @@ -5,6 +5,9 @@ ; COMBINED: <GLOBALVAL_SUMMARY_BLOCK ; COMBINED-NEXT: <VERSION +; COMBINED-NEXT: <VALUE_GUID {{.*}} op1=4947176790635855146/> +; COMBINED-NEXT: <VALUE_GUID {{.*}} op1=-6591587165810580810/> +; COMBINED-NEXT: <VALUE_GUID {{.*}} op1=-4377693495213223786/> ; COMBINED-DAG: <COMBINED ; COMBINED-DAG: <COMBINED_ORIGINAL_NAME op0=6699318081062747564/> ; COMBINED-DAG: <COMBINED_GLOBALVAR_INIT_REFS @@ -12,11 +15,6 @@ ; COMBINED-DAG: <COMBINED_ALIAS ; COMBINED-DAG: <COMBINED_ORIGINAL_NAME op0=-4170563161550796836/> ; COMBINED-NEXT: </GLOBALVAL_SUMMARY_BLOCK> -; COMBINED-NEXT: <VALUE_SYMTAB -; COMBINED-NEXT: <COMBINED_ENTRY {{.*}} op1=4947176790635855146/> -; COMBINED-NEXT: <COMBINED_ENTRY {{.*}} op1=-6591587165810580810/> -; COMBINED-NEXT: <COMBINED_ENTRY {{.*}} op1=-4377693495213223786/> -; COMBINED-NEXT: </VALUE_SYMTAB> source_filename = "/path/to/source.c" diff --git a/test/Bitcode/thinlto-function-summary-refgraph.ll b/test/Bitcode/thinlto-function-summary-refgraph.ll index 882f86509ab..b52fce79179 100644 --- a/test/Bitcode/thinlto-function-summary-refgraph.ll +++ b/test/Bitcode/thinlto-function-summary-refgraph.ll @@ -2,6 +2,32 @@ ; RUN: opt -module-summary %s -o %t.o ; RUN: llvm-bcanalyzer -dump %t.o | FileCheck %s +; CHECK: <SOURCE_FILENAME +; "bar" +; CHECK-NEXT: <GLOBALVAR {{.*}} op0=0 op1=3 +; "globalvar" +; CHECK-NEXT: <GLOBALVAR {{.*}} op0=3 op1=9 +; "func" +; CHECK-NEXT: <FUNCTION op0=12 op1=4 +; "func2" +; CHECK-NEXT: <FUNCTION op0=16 op1=5 +; "foo" +; CHECK-NEXT: <FUNCTION op0=21 op1=3 +; "func3" +; CHECK-NEXT: <FUNCTION op0=24 op1=5 +; "W" +; CHECK-NEXT: <FUNCTION op0=29 op1=1 +; "X" +; CHECK-NEXT: <FUNCTION op0=30 op1=1 +; "Y" +; CHECK-NEXT: <FUNCTION op0=31 op1=1 +; "Z" +; CHECK-NEXT: <FUNCTION op0=32 op1=1 +; "llvm.ctpop.i8" +; CHECK-NEXT: <FUNCTION op0=33 op1=13 +; "main" +; CHECK-NEXT: <FUNCTION op0=46 op1=4 + ; See if the calls and other references are recorded properly using the ; expected value id and other information as appropriate (callsite cout ; for calls). Use different linkage types for the various test cases to @@ -11,37 +37,32 @@ ; llvm.ctpop.i8. ; CHECK: <GLOBALVAL_SUMMARY_BLOCK ; Function main contains call to func, as well as address reference to func: -; CHECK-DAG: <PERMODULE {{.*}} op0=[[MAINID:[0-9]+]] op1=0 {{.*}} op3=1 op4=[[FUNCID:[0-9]+]] op5=[[FUNCID]]/> +; op0=main op4=func op5=func +; CHECK-DAG: <PERMODULE {{.*}} op0=11 op1=0 {{.*}} op3=1 op4=2 op5=2/> ; Function W contains a call to func3 as well as a reference to globalvar: -; CHECK-DAG: <PERMODULE {{.*}} op0=[[WID:[0-9]+]] op1=5 {{.*}} op3=1 op4=[[GLOBALVARID:[0-9]+]] op5=[[FUNC3ID:[0-9]+]]/> +; op0=W op4=globalvar op5=func3 +; CHECK-DAG: <PERMODULE {{.*}} op0=6 op1=5 {{.*}} op3=1 op4=1 op5=5/> ; Function X contains call to foo, as well as address reference to foo ; which is in the same instruction as the call: -; CHECK-DAG: <PERMODULE {{.*}} op0=[[XID:[0-9]+]] op1=1 {{.*}} op3=1 op4=[[FOOID:[0-9]+]] op5=[[FOOID]]/> +; op0=X op4=foo op5=foo +; CHECK-DAG: <PERMODULE {{.*}} op0=7 op1=1 {{.*}} op3=1 op4=4 op5=4/> ; Function Y contains call to func2, and ensures we don't incorrectly add ; a reference to it when reached while earlier analyzing the phi using its ; return value: -; CHECK-DAG: <PERMODULE {{.*}} op0=[[YID:[0-9]+]] op1=8 {{.*}} op3=0 op4=[[FUNC2ID:[0-9]+]]/> +; op0=Y op4=func2 +; CHECK-DAG: <PERMODULE {{.*}} op0=8 op1=8 {{.*}} op3=0 op4=3/> ; Function Z contains call to func2, and ensures we don't incorrectly add ; a reference to it when reached while analyzing subsequent use of its return ; value: -; CHECK-DAG: <PERMODULE {{.*}} op0=[[ZID:[0-9]+]] op1=3 {{.*}} op3=0 op4=[[FUNC2ID:[0-9]+]]/> +; op0=Z op4=func2 +; CHECK-DAG: <PERMODULE {{.*}} op0=9 op1=3 {{.*}} op3=0 op4=3/> ; Variable bar initialization contains address reference to func: -; CHECK-DAG: <PERMODULE_GLOBALVAR_INIT_REFS {{.*}} op0=[[BARID:[0-9]+]] op1=0 op2=[[FUNCID]]/> +; op0=bar op2=func +; CHECK-DAG: <PERMODULE_GLOBALVAR_INIT_REFS {{.*}} op0=0 op1=0 op2=2/> ; CHECK: </GLOBALVAL_SUMMARY_BLOCK> -; CHECK-NEXT: <VALUE_SYMTAB -; CHECK-DAG: <ENTRY {{.*}} op0=[[BARID]] {{.*}} record string = 'bar' -; CHECK-DAG: <ENTRY {{.*}} op0=[[FUNCID]] {{.*}} record string = 'func' -; CHECK-DAG: <ENTRY {{.*}} op0=[[FOOID]] {{.*}} record string = 'foo' -; CHECK-DAG: <FNENTRY {{.*}} op0=[[MAINID]] {{.*}} record string = 'main' -; CHECK-DAG: <FNENTRY {{.*}} op0=[[WID]] {{.*}} record string = 'W' -; CHECK-DAG: <FNENTRY {{.*}} op0=[[XID]] {{.*}} record string = 'X' -; CHECK-DAG: <FNENTRY {{.*}} op0=[[YID]] {{.*}} record string = 'Y' -; CHECK-DAG: <FNENTRY {{.*}} op0=[[ZID]] {{.*}} record string = 'Z' -; CHECK-DAG: <ENTRY {{.*}} op0=[[FUNC2ID]] {{.*}} record string = 'func2' -; CHECK-DAG: <ENTRY {{.*}} op0=[[FUNC3ID]] {{.*}} record string = 'func3' -; CHECK-DAG: <ENTRY {{.*}} op0=[[GLOBALVARID]] {{.*}} record string = 'globalvar' -; CHECK: </VALUE_SYMTAB> +; CHECK: <STRTAB_BLOCK +; CHECK-NEXT: blob data = 'barglobalvarfuncfunc2foofunc3WXYZllvm.ctpop.i8main' ; ModuleID = 'thinlto-function-summary-refgraph.ll' target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" diff --git a/test/Bitcode/thinlto-function-summary.ll b/test/Bitcode/thinlto-function-summary.ll index ff61b7713f0..6b8bfbb292c 100644 --- a/test/Bitcode/thinlto-function-summary.ll +++ b/test/Bitcode/thinlto-function-summary.ll @@ -2,9 +2,19 @@ ; RUN: opt -passes=name-anon-globals -module-summary < %s | llvm-bcanalyzer -dump | FileCheck %s -check-prefix=BC ; Check for summary block/records. -; Check the value ids in the summary entries against the -; same in the ValueSumbolTable, to ensure the ordering is stable. -; Also check the linkage field on the summary entries. +; BC: <SOURCE_FILENAME +; "h" +; BC-NEXT: <GLOBALVAR {{.*}} op0=0 op1=1 +; "foo" +; BC-NEXT: <FUNCTION op0=1 op1=3 +; "bar" +; BC-NEXT: <FUNCTION op0=4 op1=3 +; "anon.[32 chars].0" +; BC-NEXT: <FUNCTION op0=7 op1=39 +; "variadic" +; BC-NEXT: <FUNCTION op0=46 op1=8 +; "f" +; BC-NEXT: <ALIAS op0=54 op1=1 ; BC: <GLOBALVAL_SUMMARY_BLOCK ; BC-NEXT: <VERSION ; BC-NEXT: <PERMODULE {{.*}} op0=1 op1=0 @@ -13,13 +23,8 @@ ; BC-NEXT: <PERMODULE {{.*}} op0=4 op1=16 ; BC-NEXT: <ALIAS {{.*}} op0=5 op1=0 op2=3 ; BC-NEXT: </GLOBALVAL_SUMMARY_BLOCK -; BC-NEXT: <VALUE_SYMTAB -; BC-NEXT: <FNENTRY {{.*}} op0=4 {{.*}}> record string = 'variadic' -; BC-NEXT: <FNENTRY {{.*}} op0=1 {{.*}}> record string = 'foo' -; BC-NEXT: <FNENTRY {{.*}} op0=2 {{.*}}> record string = 'bar' -; BC-NEXT: <ENTRY {{.*}} op0=5 {{.*}}> record string = 'f' -; BC-NEXT: <ENTRY {{.*}} record string = 'h' -; BC-NEXT: <FNENTRY {{.*}} op0=3 {{.*}}> record string = 'anon. +; BC: <STRTAB_BLOCK +; BC-NEXT: blob data = 'hfoobaranon.{{................................}}.0variadicf' ; RUN: opt -name-anon-globals -module-summary < %s | llvm-dis | FileCheck %s |