15e22e446STeresa Johnson; Check the linkage types in both the per-module and combined summaries. 268da426eSMehdi Amini; RUN: opt -module-summary %s -o %t.o 35e22e446STeresa Johnson; RUN: llvm-bcanalyzer -dump %t.o | FileCheck %s 45e22e446STeresa Johnson; RUN: llvm-lto -thinlto -o %t2 %t.o 55e22e446STeresa Johnson; RUN: llvm-bcanalyzer -dump %t2.thinlto.bc | FileCheck %s --check-prefix=COMBINED 65e22e446STeresa Johnson 75e22e446STeresa Johnsondefine private void @private() 8*e4b0231cSRafael Espindola; CHECK: <PERMODULE {{.*}} op1=72 9*e4b0231cSRafael Espindola; COMBINED-DAG: <COMBINED {{.*}} op2=72 105e22e446STeresa Johnson{ 115e22e446STeresa Johnson ret void 125e22e446STeresa Johnson} 135e22e446STeresa Johnson 145e22e446STeresa Johnsondefine internal void @internal() 15c3ed48c1SMehdi Amini; CHECK: <PERMODULE {{.*}} op1=7 1602e98331STeresa Johnson; COMBINED-DAG: <COMBINED {{.*}} op2=7 17c3ed48c1SMehdi Amini{ 18c3ed48c1SMehdi Amini ret void 19c3ed48c1SMehdi Amini} 20c3ed48c1SMehdi Amini 21c3ed48c1SMehdi Aminidefine available_externally void @available_externally() 22c3ed48c1SMehdi Amini; CHECK: <PERMODULE {{.*}} op1=1 2302e98331STeresa Johnson; COMBINED-DAG: <COMBINED {{.*}} op2=1 24c3ed48c1SMehdi Amini{ 25c3ed48c1SMehdi Amini ret void 26c3ed48c1SMehdi Amini} 27c3ed48c1SMehdi Amini 28c3ed48c1SMehdi Aminidefine linkonce void @linkonce() 29c3ed48c1SMehdi Amini; CHECK: <PERMODULE {{.*}} op1=2 3002e98331STeresa Johnson; COMBINED-DAG: <COMBINED {{.*}} op2=2 31c3ed48c1SMehdi Amini{ 32c3ed48c1SMehdi Amini ret void 33c3ed48c1SMehdi Amini} 34c3ed48c1SMehdi Amini 35c3ed48c1SMehdi Aminidefine weak void @weak() 36c3ed48c1SMehdi Amini; CHECK: <PERMODULE {{.*}} op1=4 3702e98331STeresa Johnson; COMBINED-DAG: <COMBINED {{.*}} op2=4 38c3ed48c1SMehdi Amini{ 39c3ed48c1SMehdi Amini ret void 40c3ed48c1SMehdi Amini} 41c3ed48c1SMehdi Amini 42c3ed48c1SMehdi Aminidefine linkonce_odr void @linkonce_odr() 4376a1c1d0STeresa Johnson; CHECK: <PERMODULE {{.*}} op1=3 4402e98331STeresa Johnson; COMBINED-DAG: <COMBINED {{.*}} op2=3 455e22e446STeresa Johnson{ 465e22e446STeresa Johnson ret void 475e22e446STeresa Johnson} 485e22e446STeresa Johnson 495e22e446STeresa Johnsondefine weak_odr void @weak_odr() 50c3ed48c1SMehdi Amini; CHECK: <PERMODULE {{.*}} op1=5 5102e98331STeresa Johnson; COMBINED-DAG: <COMBINED {{.*}} op2=5 525e22e446STeresa Johnson{ 535e22e446STeresa Johnson ret void 545e22e446STeresa Johnson} 555e22e446STeresa Johnson 565e22e446STeresa Johnsondefine external void @external() 5776a1c1d0STeresa Johnson; CHECK: <PERMODULE {{.*}} op1=0 5802e98331STeresa Johnson; COMBINED-DAG: <COMBINED {{.*}} op2=0 595e22e446STeresa Johnson{ 605e22e446STeresa Johnson ret void 615e22e446STeresa Johnson} 62