1; RUN: llvm-split -o %t %s -j 3 -mtriple amdgcn-amd-amdhsa 2; RUN: llvm-dis -o - %t0 | FileCheck --check-prefix=CHECK0 %s 3; RUN: llvm-dis -o - %t1 | FileCheck --check-prefix=CHECK1 %s 4; RUN: llvm-dis -o - %t2 | FileCheck --check-prefix=CHECK2 %s 5 6; 3 kernels share a common helper, that helper should be 7; cloned in all partitions. 8 9; CHECK0-NOT: define 10; CHECK0: define internal void @Helper 11; CHECK0: define amdgpu_kernel void @C 12; CHECK0-NOT: define 13 14; CHECK1-NOT: define 15; CHECK1: define internal void @Helper 16; CHECK1: define amdgpu_kernel void @B 17; CHECK1-NOT: define 18 19; CHECK2-NOT: define 20; CHECK2: define internal void @Helper 21; CHECK2: define amdgpu_kernel void @A 22; CHECK2-NOT: define 23 24define internal void @Helper() { 25 ret void 26} 27 28define amdgpu_kernel void @A() { 29 call void @Helper() 30 ret void 31} 32 33define amdgpu_kernel void @B() { 34 call void @Helper() 35 ret void 36} 37 38define amdgpu_kernel void @C() { 39 call void @Helper() 40 ret void 41} 42