File tree Expand file tree Collapse file tree 1 file changed +26
-0
lines changed Expand file tree Collapse file tree 1 file changed +26
-0
lines changed Original file line number Diff line number Diff line change 1+ // Check that AlwaysInliner pass is always run for compilation of SYCL device
2+ // target code, even if all optimizations are disabled.
3+
4+ // RUN: %clang_cc1 -fsycl-is-device -triple spir64-unknown-unknown-sycldevice -emit-llvm \
5+ // RUN: -mllvm -debug-pass=Structure %s -o - 2>&1 \
6+ // RUN: | FileCheck %s --check-prefix=CHECK-EARLYOPT
7+ // CHECK-EARLYOPT: Function Integration/Inlining
8+ // CHECK-EARLYOPT: Replace __sycl_allocateLocalMemory with allocation of memory in local address space
9+
10+ // RUN: %clang_cc1 -fsycl-is-device -triple spir64-unknown-unknown-sycldevice -emit-llvm \
11+ // RUN: -mllvm -debug-pass=Structure %s -o - -disable-llvm-passes 2>&1 \
12+ // RUN: | FileCheck %s --check-prefix=CHECK-NOPASSES
13+ // CHECK-NOPASSES: Inliner for always_inline functions
14+ // CHECK-NOPASSES: Replace __sycl_allocateLocalMemory with allocation of memory in local address space
15+
16+ // RUN: %clang_cc1 -fsycl-is-device -triple spir64-unknown-unknown-sycldevice -emit-llvm \
17+ // RUN: -mllvm -debug-pass=Structure %s -o - -fno-sycl-early-optimizations 2>&1 \
18+ // RUN: | FileCheck %s --check-prefix=CHECK-NOEARLYOPT
19+ // CHECK-NOEARLYOPT: Inliner for always_inline functions
20+ // CHECK-NOEARLYOPT: Replace __sycl_allocateLocalMemory with allocation of memory in local address space
21+
22+ // RUN: %clang_cc1 -fsycl-is-device -triple spir64-unknown-unknown-sycldevice -emit-llvm \
23+ // RUN: -mllvm -debug-pass=Structure %s -o - -O0 2>&1 \
24+ // RUN: | FileCheck %s --check-prefix=CHECK-O0opt
25+ // CHECK-O0opt: Inliner for always_inline functions
26+ // CHECK-O0opt: Replace __sycl_allocateLocalMemory with allocation of memory in local address space
You can’t perform that action at this time.
0 commit comments