49 lines · plain
1; RUN: llvm-split -o %t %s -j 3 -mtriple amdgcn-amd-amdhsa2; RUN: llvm-dis -o - %t0 | FileCheck --check-prefix=CHECK0 --implicit-check-not=define %s3; RUN: llvm-dis -o - %t1 | FileCheck --check-prefix=CHECK1 --implicit-check-not=define %s4; RUN: llvm-dis -o - %t2 | FileCheck --check-prefix=CHECK2 --implicit-check-not=define %s5 6; 3 kernels with each their own dependencies should go into 37; distinct partitions. The most expensive kernel should be8; seen first and go into the last partition.9 10; CHECK0: define amdgpu_kernel void @C11; CHECK0: define internal void @HelperC12; CHECK0-NOT: define13 14; CHECK1: define amdgpu_kernel void @A15; CHECK1: define internal void @HelperA16 17; CHECK2: define amdgpu_kernel void @B18; CHECK2: define internal void @HelperB19 20define amdgpu_kernel void @A() {21 call void @HelperA()22 ret void23}24 25define internal void @HelperA() {26 ret void27}28 29define amdgpu_kernel void @B(ptr %x) {30 store i64 42, ptr %x31 store i64 43, ptr %x32 store i64 44, ptr %x33 call void @HelperB()34 ret void35}36 37define internal void @HelperB() {38 ret void39}40 41define amdgpu_kernel void @C() {42 call void @HelperC()43 ret void44}45 46define internal void @HelperC() {47 ret void48}49