From 954403938f00645d92520efc4433c440a133c0b9 Mon Sep 17 00:00:00 2001 From: Luboš Luňák Date: Tue, 19 Jun 2018 12:16:38 +0200 Subject: discard cached cell values if the cell changes FormulaGroupContext is actually a cache of cell results for OpenCL, but the cached values are not always properly discarded. Happens e.g. with testFormulaDepTracking in sc_ucalc fails if OpenCL is forced for it (i.e. with mnOpenCLMinimumFormulaGroupSize disabled), because a SetString() call for a cell doesn't invalidate the cache. This obviously reduces the cache hit rate a bit, but according to my tests it's not that bad (in fact the cache doesn't seem to get used that often, so I even wonder if it's worth it). Change-Id: Ia7ef2214956861d26ca3a42b84f9fecbff8316d0 Reviewed-on: https://gerrit.libreoffice.org/56087 Tested-by: Jenkins Reviewed-by: Michael Meeks --- sc/inc/formulagroup.hxx | 2 ++ 1 file changed, 2 insertions(+) (limited to 'sc/inc/formulagroup.hxx') diff --git a/sc/inc/formulagroup.hxx b/sc/inc/formulagroup.hxx index fa6bb4f61877..f0dcb4888a72 100644 --- a/sc/inc/formulagroup.hxx +++ b/sc/inc/formulagroup.hxx @@ -48,6 +48,8 @@ struct FormulaGroupEntry FormulaGroupEntry( ScFormulaCell* pCell, size_t nRow ); }; +// Despite the name, this is actually a cache of cell values, used by OpenCL +// code ... I think. And obviously it's not really a struct either. struct FormulaGroupContext { typedef AlignedAllocator DoubleAllocType; -- cgit