Cycles: OpenCL split kernel cleanup, move casts from .h files to .cl files

Ideally we shouldn't use char* at all, but for now we have to, so at least
let's assume common .h files are free from pointer magic.
This commit is contained in:
Sergey Sharybin
2015-10-29 21:44:36 +05:00
parent fc5f717888
commit 4ca688a963
18 changed files with 68 additions and 103 deletions

View File

@@ -51,9 +51,9 @@
* The number of elements in the queues is initialized to 0;
*/
ccl_device void kernel_data_init(
ccl_global char *globals,
ccl_global char *shader_data_sd, /* Arguments related to ShaderData */
ccl_global char *shader_data_sd_DL_shadow, /* Arguments related to ShaderData */
KernelGlobals *kg,
ShaderData *sd,
ShaderData *sd_DL_shadow,
ccl_global float3 *P_sd,
ccl_global float3 *P_sd_DL_shadow,
@@ -175,19 +175,11 @@ ccl_device void kernel_data_init(
#endif
int parallel_samples) /* Number of samples to be processed in parallel */
{
/* Load kernel globals structure */
KernelGlobals *kg = (KernelGlobals *)globals;
kg->data = data;
#define KERNEL_TEX(type, ttype, name) \
kg->name = name;
#include "../kernel_textures.h"
/* Load ShaderData structure */
ShaderData *sd = (ShaderData *)shader_data_sd;
ShaderData *sd_DL_shadow = (ShaderData *)shader_data_sd_DL_shadow;
sd->P = P_sd;
sd_DL_shadow->P = P_sd_DL_shadow;