diff options
author | Tor Lillqvist <tml@collabora.com> | 2015-02-06 20:53:59 +0200 |
---|---|---|
committer | Jan Holesovsky <kendy@collabora.com> | 2015-02-10 12:25:54 +0000 |
commit | 91a425313d54f3a2a61aee55786cb5ce22fae130 (patch) | |
tree | dfe11c1cd2654b6b6de7b0f6f550c9ce0e345c98 /sc/source/core/src | |
parent | f262e1b1356488515972916c3e11ec210d22cdd9 (diff) |
Handle zero or empty cells properly when using OpenCL for division
This is a combination of 4 commits from master:
4f4daf163e92d113b62cc19fb0b7f5ec05dce48a: Introduce SetResultError()
f7c6089c0f5ac7976149d270f6d9694ef8ed7cfd: Be prepared to handle error codes
encoded in NaNs ("double error")
f6dfb3b4098f4554782e35fdb471ef69f2f53386: Create proper error when dividing by
zero. Create a so-called "double error", i.e. a NaN with a error code payload.
f5e7207053b857b6903a0ab9c161bed9ad7bcee9: Handle zero and empty cells (which
also means zero) in OpenCL for division.
Not sure if it makes sense to keep having OpDiv a subclass of Reduction.
There is no DIV() function that would take a range of cells, so it isn't
really comparable to the other Reducion subclasses. But let's keep hat as it
is for now.
We need to handle three cases specially in the OpenCL: Dividing by an empty
cell which should produce an #DIV/0! error, dividing an empty cell by zero
which also should produce #DIV/0!, and dividing an empty cell with anything
else number which should produce 0.
Change-Id: I86d86f652047d6f9e3c095c3ef135a8f5396b000
Reviewed-on: https://gerrit.libreoffice.org/14395
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Tested-by: Jan Holesovsky <kendy@collabora.com>
Diffstat (limited to 'sc/source/core/src')
0 files changed, 0 insertions, 0 deletions