sc/source/core/data/formulacell.cxx | 2 +- sc/source/core/tool/token.cxx | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-)
New commits: commit 05934bd862e74dd420b6b5d691ce0d712509c4fd Author: Tor Lillqvist <t...@collabora.com> Date: Mon Oct 16 18:40:51 2017 +0300 Add OFFSET to blacklist for threaded calculation Change-Id: Ia1aaf40aa4e8e6f41ca190272365528bf37bf130 diff --git a/sc/source/core/tool/token.cxx b/sc/source/core/tool/token.cxx index fd0adcb030b3..ec8f67b4b980 100644 --- a/sc/source/core/tool/token.cxx +++ b/sc/source/core/tool/token.cxx @@ -1341,6 +1341,7 @@ void ScTokenArray::CheckToken( const FormulaToken& r ) static const std::set<OpCode> aThreadedCalcBlackList({ ocIndirect, ocMacro, + ocOffset, ocTableOp }); commit 4a781ce705bd47d0a91b3da404da4a601f845791 Author: Tor Lillqvist <t...@collabora.com> Date: Mon Oct 16 18:31:07 2017 +0300 Add INDIRECT to blacklist for threaded calculation Change-Id: I9a2066c396802551c3eda2c8db32b6d1a4171dfd diff --git a/sc/source/core/tool/token.cxx b/sc/source/core/tool/token.cxx index bbd6063dfff8..fd0adcb030b3 100644 --- a/sc/source/core/tool/token.cxx +++ b/sc/source/core/tool/token.cxx @@ -1339,6 +1339,7 @@ bool ScTokenArray::AddFormulaToken( void ScTokenArray::CheckToken( const FormulaToken& r ) { static const std::set<OpCode> aThreadedCalcBlackList({ + ocIndirect, ocMacro, ocTableOp }); commit 343f3455ca0686eca392102155af343e52354794 Author: Tor Lillqvist <t...@collabora.com> Date: Mon Oct 16 18:28:24 2017 +0300 Check whether ScTokenArray::CheckToken() has disabled threading of the group Otherwise the aThreadedCalcBlackList check in CheckToken() has no effect, we would still attempt the threaded code path. Change-Id: I08dc2dd174459615ab8a11dbb819e39fc5437d10 diff --git a/sc/source/core/data/formulacell.cxx b/sc/source/core/data/formulacell.cxx index 36c941fed7f3..f8704821588a 100644 --- a/sc/source/core/data/formulacell.cxx +++ b/sc/source/core/data/formulacell.cxx @@ -4345,7 +4345,7 @@ bool ScFormulaCell::InterpretFormulaGroup() return false; } - if (!bThreadingProhibited && !ScCalcConfig::isOpenCLEnabled() && officecfg::Office::Calc::Formula::Calculation::UseThreadedCalculationForFormulaGroups::get()) + if (!bThreadingProhibited && !ScCalcConfig::isOpenCLEnabled() && pCode->GetVectorState() != FormulaVectorDisabledNotInSubSet && officecfg::Office::Calc::Formula::Calculation::UseThreadedCalculationForFormulaGroups::get()) { // iterate over code in the formula ... // ensure all input is pre-calculated - _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits