llvm-project/polly/test/GPGPU
Tobias Grosser 51dfc27589 GPGPU: Store back non-read-only scalars
We may generate GPU kernels that store into scalars in case we run some
sequential code on the GPU because the remaining data is expected to already be
on the GPU. For these kernels it is important to not keep the scalar values
in thread-local registers, but to store them back to the corresponding device
memory objects that backs them up.

We currently only store scalars back at the end of a kernel. This is only
correct if precisely one thread is executed. In case more than one thread may
be run, we currently invalidate the scop. To support such cases correctly,
we would need to always load and store back from a corresponding global
memory slot instead of a thread-local alloca slot.

llvm-svn: 281838
2016-09-17 19:22:31 +00:00
..
cuda-annotations.ll Add missing 'REQUIRES' line 2016-08-05 07:08:45 +00:00
double-parallel-loop.ll GPGPU: Detect read-only scalar arrays ... 2016-09-17 19:22:18 +00:00
host-control-flow.ll [BlockGenerator] Also eliminate dead code not originating from BB 2016-08-09 08:59:05 +00:00
host-statement.ll [GPGPU] Ensure arrays where only parts are modified are copied to GPU 2016-08-10 10:58:19 +00:00
invalid-kernel.ll GPGPU: Bail out gracefully in case of invalid IR 2016-09-12 06:06:31 +00:00
kernel-params-only-some-arrays.ll GPGPU: Detect read-only scalar arrays ... 2016-09-17 19:22:18 +00:00
kernel-params-scop-parameter.ll GPGPU: Mark kernel functions as polly.skip 2016-08-03 12:00:07 +00:00
non-read-only-scalars.ll GPGPU: Store back non-read-only scalars 2016-09-17 19:22:31 +00:00
non-zero-array-offset.ll GPGPU: Do not assume arrays start at 0 2016-09-15 14:05:58 +00:00
only-part-of-array-modified.ll [GPGPU] Ensure arrays where only parts are modified are copied to GPU 2016-08-10 10:58:19 +00:00
parametric-loop-bound.ll Add missing REQUIRES line 2016-07-28 07:08:34 +00:00
phi-nodes-in-kernel.ll GPGPU: Do not assume arrays start at 0 2016-09-15 14:05:58 +00:00
private-memory.ll GPGPU: Add private memory support 2016-08-04 12:39:03 +00:00
region-stmt.ll GPGPU: Allow region statements 2016-09-13 08:42:10 +00:00
remove-dead-instructions-in-stmt-2.ll [tests] Add two missing 'REQUIRES' lines 2016-08-09 09:11:39 +00:00
remove-dead-instructions-in-stmt.ll [tests] Add two missing 'REQUIRES' lines 2016-08-09 09:11:39 +00:00
run-time-check.ll [GPGPU] Create code to verify run-time conditions 2016-08-08 17:35:55 +00:00
scalar-param-and-value-32-bit.ll [GPGPU] Pass parameters always by using their own type 2016-08-09 07:22:08 +00:00
scalar-param-and-value-use.ll [GPGPU] Support Values referenced from both isl expr and llvm instructions 2016-08-08 19:22:19 +00:00
scalar-parameter-fp128.ll GPGPU: Generate PTX assembly code for the kernel modules 2016-07-22 07:11:12 +00:00
scalar-parameter-half.ll GPGPU: Detect read-only scalar arrays ... 2016-09-17 19:22:18 +00:00
scalar-parameter-i80.ll GPGPU: Generate PTX assembly code for the kernel modules 2016-07-22 07:11:12 +00:00
scalar-parameter-i120.ll GPGPU: Generate PTX assembly code for the kernel modules 2016-07-22 07:11:12 +00:00
scalar-parameter-i128.ll GPGPU: Generate PTX assembly code for the kernel modules 2016-07-22 07:11:12 +00:00
scalar-parameter-i3000.ll GPGPU: Generate PTX assembly code for the kernel modules 2016-07-22 07:11:12 +00:00
scalar-parameter-ppc_fp128.ll GPGPU: Generate PTX assembly code for the kernel modules 2016-07-22 07:11:12 +00:00
scalar-parameter-x86_fp80.ll GPGPU: Generate PTX assembly code for the kernel modules 2016-07-22 07:11:12 +00:00
scalar-parameter.ll GPGPU: Detect read-only scalar arrays ... 2016-09-17 19:22:18 +00:00
scheduler-timeout.ll GPGPU: Detect read-only scalar arrays ... 2016-09-17 19:22:18 +00:00
shared-memory-scalar.ll GPGPU: Detect read-only scalar arrays ... 2016-09-17 19:22:18 +00:00
shared-memory-two-dimensional.ll GPGPU: Sort dimension sizes of multi-dimensional shared memory arrays correctly 2016-08-05 08:27:24 +00:00
shared-memory.ll GPGPU: Add support for shared memory 2016-08-04 12:18:14 +00:00
size-cast.ll GPGPU: Extend types when array sizes have smaller types 2016-09-13 08:02:14 +00:00
untouched-arrays.ll Add missing 'REQUIRES' line 2016-09-11 13:42:42 +00:00