llvm-project/clang/test/CodeGenOpenCL
Matt Arsenault 88d7da01ca AMDGPU: Handle structs directly in AMDGPUABIInfo
Structs are currently handled as pointer + byval, which makes AMDGPU
LLVM backend generate incorrect code when structs are used. This patch
changes struct argument to be handled directly and without flattening,
which Clover (Mesa 3D Gallium OpenCL state tracker) will be able to
handle. Flattening would expand the struct to individual elements and
pass each as a separate argument, which Clover can not
handle. Furthermore, such expansion does not fit the OpenCL
programming model which requires to explicitely specify each argument
index, size and memory location.

Patch by Vedran Miletić

llvm-svn: 279463
2016-08-22 19:25:59 +00:00
..
2011-04-15-vec-init-from-vec.cl
addr-space-struct-arg.cl Prune CRLF. 2014-10-27 12:37:26 +00:00
address-space-constant-initializers.cl Test case updates for explicit type parameter to the gep operator 2015-03-13 18:21:46 +00:00
address-spaces-conversions.cl [OpenCL] Fix bug in mergeTypes which causes equivalent types treated as different. 2016-04-28 17:34:57 +00:00
address-spaces-mangling.cl
address-spaces.cl [OpenCL 2.0] Apply default address space (AS). 2015-11-23 11:14:44 +00:00
amdgcn-flat-scratch-name.cl AMDGPU: Fix inconsistent register name for flat_scratch 2016-02-27 09:06:22 +00:00
amdgpu-abi-struct-coerce.cl AMDGPU: Handle structs directly in AMDGPUABIInfo 2016-08-22 19:25:59 +00:00
amdgpu-call-kernel.cl AMDGPU: Set amdgpu_kernel calling convention for OpenCL kernels. 2016-06-30 09:06:33 +00:00
amdgpu-calling-conv.cl AMDGPU: Set amdgpu_kernel calling convention for OpenCL kernels. 2016-06-30 09:06:33 +00:00
amdgpu-num-gpr-attr.cl AMDGPU: Set amdgpu_kernel calling convention for OpenCL kernels. 2016-06-30 09:06:33 +00:00
as_type.cl Let FuncAttrs infer the 'returned' argument attribute 2016-07-19 19:59:24 +00:00
bool_cast.cl [Bugfix] Fix ICE on constexpr vector splat. 2016-01-13 01:52:39 +00:00
builtins-amdgcn-error.cl [AMDGPU] add s_incperflevel/s_decperflevel builtins 2016-08-19 12:54:31 +00:00
builtins-amdgcn-vi.cl AMDGPU: Verify subtarget specific builtins 2016-06-08 01:56:42 +00:00
builtins-amdgcn.cl [AMDGPU] add s_incperflevel/s_decperflevel builtins 2016-08-19 12:54:31 +00:00
builtins-generic-amdgcn.cl AMDGPU: Add test for generic builtin behavior 2016-04-14 22:34:39 +00:00
builtins-r600.cl AMDGPU: Remove legacy ldexp builtin 2016-07-15 21:33:06 +00:00
cast_image.cl [OpenCL] Add the lit test for image size which was omitted by r277647. 2016-08-04 19:35:17 +00:00
cl-strict-aliasing.cl Revert r229409: "Hack to try deleting file from build bots" 2015-02-16 18:03:59 +00:00
cl20-device-side-enqueue.cl [OpenCL] Fix typo in test that I accidentally introduced in my previous commit. 2016-08-10 16:04:14 +00:00
const-str-array-decay.cl Test case updates for explicit type parameter to the gep operator 2015-03-13 18:21:46 +00:00
constant-addr-space-globals.cl Update clang for D20348 2016-06-14 21:02:05 +00:00
denorms-are-zero.cl [OpenCL][AMDGPU] Add support for -cl-denorms-are-zero 2016-08-09 19:43:38 +00:00
event_t.cl [OpenCL] Allow explicit cast of 0 to event_t. 2016-05-20 17:18:16 +00:00
ext-vector-shuffle.cl
fpmath.cl [OpenCL] Handle -cl-fp32-correctly-rounded-divide-sqrt 2016-08-09 20:10:18 +00:00
half.cl [OpenCL] Add supported OpenCL extensions to target info. 2016-05-16 17:06:34 +00:00
images.cl [OpenCL] Complete image types support. 2016-04-08 13:40:33 +00:00
kernel-arg-info.cl [OpenCL] Fix access qualifiers handling for typedefs 2016-07-08 15:34:59 +00:00
kernel-attributes.cl Attempt to fix MIPS buildbots after r273425. 2016-06-23 09:29:38 +00:00
kernel-metadata.cl [OpenCL] Use function metadata to represent kernel attributes 2016-06-22 14:56:35 +00:00
local-initializer-undef.cl Emit OpenCL local global variables without zeorinitializer 2014-11-03 16:51:53 +00:00
local.cl Account for calling convention specifiers in function definitions in IR test cases 2015-06-29 17:29:50 +00:00
logical-ops.cl
memcpy.cl Sema: Accept pointers to any address space for builtin functions 2015-03-31 16:39:02 +00:00
no-signed-zeros.cl [OpenCL] Add missing -cl-no-signed-zeros option into driver 2016-07-08 20:28:29 +00:00
opencl_types.cl [OpenCL] Generate opaque type for sampler_t and function call for the initializer 2016-07-28 19:26:30 +00:00
pipe_builtin.cl Recommit: R258773 [OpenCL] Pipe builtin functions 2016-01-26 04:03:48 +00:00
pipe_types.cl [OpenCL] Fix code generation of kernel pipe parameters. 2016-07-13 10:28:13 +00:00
ptx-calls.cl IR: Make metadata typeless in assembly, clang side 2014-12-15 19:10:08 +00:00
ptx-kernels.cl IR: Make metadata typeless in assembly, clang side 2014-12-15 19:10:08 +00:00
relaxed-fpmath.cl Remove the cl-no-signed-zeros cc1 option 2015-04-04 14:54:24 +00:00
sampler.cl [OpenCL] Generate opaque type for sampler_t and function call for the initializer 2016-07-28 19:26:30 +00:00
shifts.cl Update clang for D20348 2016-06-14 21:02:05 +00:00
single-precision-constant.cl
size_t.cl Re-commit [OpenCL] AMDGCN: Fix size_t type 2016-08-19 05:17:25 +00:00
spir-calling-conv.cl Re-apply "r226548 - Introduce SPIR calling conventions" reverted in r226558. 2015-01-20 11:20:41 +00:00
spir32_target.cl
spir64_target.cl
spir_version.cl [OpenCL] Fixes bug of missing OCL version metadata on the AMDGCN target 2016-07-19 19:39:45 +00:00
str_literals.cl Update clang for D20348 2016-06-14 21:02:05 +00:00
to_addr_builtin.cl [OpenCL] Added underscores to the names of 'to_addr' OpenCL built-ins. 2016-08-04 18:06:27 +00:00
unroll-hint.cl [OpenCL] Generate metadata for opencl_unroll_hint attribute 2016-02-19 18:30:11 +00:00
vectorLoadStore.cl
vector_literals_nested.cl
vector_literals_valid.cl
vector_logops.cl
vector_odd.cl
vector_shufflevector_valid.cl Fix invalid shufflevector operands 2015-08-02 15:28:10 +00:00
vla.cl [OPENCL] Fix wrongly vla error for OpenCL array. 2016-06-07 04:34:00 +00:00