summaryrefslogtreecommitdiff
path: root/src/kernels/level3/invert_diagonal_blocks.opencl
diff options
context:
space:
mode:
Diffstat (limited to 'src/kernels/level3/invert_diagonal_blocks.opencl')
-rw-r--r--src/kernels/level3/invert_diagonal_blocks.opencl4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/kernels/level3/invert_diagonal_blocks.opencl b/src/kernels/level3/invert_diagonal_blocks.opencl
index c59bcbcb..55f4a963 100644
--- a/src/kernels/level3/invert_diagonal_blocks.opencl
+++ b/src/kernels/level3/invert_diagonal_blocks.opencl
@@ -140,7 +140,9 @@ void InvertDiagonalBlock(int n, __global const real* restrict src, const int src
for (int k = j + 1; k < INTERNAL_BLOCK_SIZE; ++k) {
MultiplyAdd(sum, lm[thread_index][k], lm[k][j]);
}
- Multiply(lm[thread_index][j], -lm[j][j], sum);
+ real diagonal_value = lm[j][j];
+ Negate(diagonal_value);
+ Multiply(lm[thread_index][j], diagonal_value, sum);
}
barrier(CLK_LOCAL_MEM_FENCE);
}