diff options
author | Daniel Genrich <daniel.genrich@gmx.net> | 2012-04-09 19:31:31 +0400 |
---|---|---|
committer | Daniel Genrich <daniel.genrich@gmx.net> | 2012-04-09 19:31:31 +0400 |
commit | 2e08b763c5e4b9514ce033fa6810cc0b5d332ae0 (patch) | |
tree | bfa388faa95799a9e1cd7f55b200e1b263bfabf1 /intern/cycles/kernel/kernel_accumulate.h | |
parent | 25492d1e4cadd63598581dd6b04c4aed47d501ca (diff) |
Bugfix [#30835]: Cycles doesn't work with AMD Juniper GPU, compiller throws errors. Thanks for reporting!
Problem: AMD does not like something like this.
float3 *a;
flaot b = a->x;
You need to circumvent this by using:
float3 *a;
float b = (*a).x;
Diffstat (limited to 'intern/cycles/kernel/kernel_accumulate.h')
-rw-r--r-- | intern/cycles/kernel/kernel_accumulate.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/intern/cycles/kernel/kernel_accumulate.h b/intern/cycles/kernel/kernel_accumulate.h index a78cfc4dfb7..9a52531eec0 100644 --- a/intern/cycles/kernel/kernel_accumulate.h +++ b/intern/cycles/kernel/kernel_accumulate.h @@ -296,7 +296,7 @@ __device_inline float3 path_radiance_sum(PathRadiance *L) __device_inline void path_radiance_clamp(PathRadiance *L, float3 *L_sum, float clamp) { - float sum = fabsf(L_sum->x) + fabsf(L_sum->y) + fabsf(L_sum->z); + float sum = fabsf((*L_sum).x) + fabsf((*L_sum).y) + fabsf((*L_sum).z); if(!isfinite(sum)) { /* invalid value, reject */ |