sc/inc/formulacell.hxx | 2 +- sc/source/core/data/colorscale.cxx | 2 +- sc/source/core/data/column.cxx | 23 +++++------------------ sc/source/core/data/column3.cxx | 9 +-------- sc/source/core/data/documen4.cxx | 11 +++++------ sc/source/core/data/documen7.cxx | 5 ++--- sc/source/core/data/formulacell.cxx | 11 +++++++---- sc/source/core/data/validat.cxx | 2 +- sc/source/core/tool/detfunc.cxx | 10 +++++----- sc/source/ui/docshell/docfunc.cxx | 2 +- 10 files changed, 29 insertions(+), 48 deletions(-)
New commits: commit 6f5961806793fc980129c7e119708001a9c944d8 Author: Tor Lillqvist <t...@collabora.com> Date: Fri Oct 2 13:29:47 2015 +0300 Revert "Make less calls to officecfg::...::UseOpenCL::get()" Was not liked. This reverts commit 565232aa89889b373d487d77fcba826abaf875f1. diff --git a/sc/inc/formulacell.hxx b/sc/inc/formulacell.hxx index bb97160..c017dbe 100644 --- a/sc/inc/formulacell.hxx +++ b/sc/inc/formulacell.hxx @@ -242,7 +242,7 @@ public: void CompileXML( sc::CompileFormulaContext& rCxt, ScProgress& rProgress ); // compile temporary string tokens void CalcAfterLoad( sc::CompileFormulaContext& rCxt, bool bStartListening ); bool MarkUsedExternalReferences(); - void Interpret(bool bUseOpenCL); + void Interpret(); bool IsIterCell() const { return bIsIterCell; } sal_uInt16 GetSeenInIteration() const { return nSeenInIteration; } diff --git a/sc/source/core/data/colorscale.cxx b/sc/source/core/data/colorscale.cxx index 9bd845f..9be59b7 100644 --- a/sc/source/core/data/colorscale.cxx +++ b/sc/source/core/data/colorscale.cxx @@ -219,7 +219,7 @@ double ScColorScaleEntry::GetValue() const { if(mpCell) { - mpCell->Interpret(officecfg::Office::Common::Misc::UseOpenCL::get()); + mpCell->Interpret(); if(mpCell->IsValue()) return mpCell->GetValue(); diff --git a/sc/source/core/data/column.cxx b/sc/source/core/data/column.cxx index 7529043..9accde9 100644 --- a/sc/source/core/data/column.cxx +++ b/sc/source/core/data/column.cxx @@ -867,7 +867,6 @@ class CopyToClipHandler sc::ColumnBlockPosition maDestPos; sc::ColumnBlockPosition* mpDestPos; bool mbCopyNotes; - bool mbUseOpenCL; void setDefaultAttrsToDest(size_t nRow, size_t nSize) { @@ -883,11 +882,7 @@ class CopyToClipHandler public: CopyToClipHandler(const ScColumn& rSrcCol, ScColumn& rDestCol, sc::ColumnBlockPosition* pDestPos, bool bCopyNotes) : - mrSrcCol(rSrcCol), - mrDestCol(rDestCol), - mpDestPos(pDestPos), - mbCopyNotes(bCopyNotes), - mbUseOpenCL(officecfg::Office::Common::Misc::UseOpenCL::get()) + mrSrcCol(rSrcCol), mrDestCol(rDestCol), mpDestPos(pDestPos), mbCopyNotes(bCopyNotes) { if (mpDestPos) maDestPos = *mpDestPos; @@ -958,7 +953,7 @@ public: { const ScFormulaCell& rOld = **it; if (rOld.GetDirty() && mrSrcCol.GetDoc().GetAutoCalc()) - const_cast<ScFormulaCell&>(rOld).Interpret(mbUseOpenCL); + const_cast<ScFormulaCell&>(rOld).Interpret(); aCloned.push_back(new ScFormulaCell(rOld, mrDestCol.GetDoc(), aDestPos)); } @@ -1062,7 +1057,6 @@ void ScColumn::CopyStaticToDocument( size_t nOffset = aPos.second; size_t nDataSize = 0; size_t nCurRow = nRow1; - const bool bUseOpenCL(officecfg::Office::Common::Misc::UseOpenCL::get()); for (; it != maCells.end() && nCurRow <= static_cast<size_t>(nRow2); ++it, nOffset = 0, nCurRow += nDataSize) { @@ -1128,7 +1122,7 @@ void ScColumn::CopyStaticToDocument( ScFormulaCell& rFC = const_cast<ScFormulaCell&>(**itData); if (rFC.GetDirty() && pDocument->GetAutoCalc()) - rFC.Interpret(bUseOpenCL); + rFC.Interpret(); if (rFC.GetErrCode()) // Skip cells with error. @@ -1193,7 +1187,7 @@ void ScColumn::CopyCellToDocument( SCROW nSrcRow, SCROW nDestRow, ScColumn& rDes { ScFormulaCell* p = sc::formula_block::at(*it->data, aPos.second); if (p->GetDirty() && pDocument->GetAutoCalc()) - p->Interpret(officecfg::Office::Common::Misc::UseOpenCL::get()); + p->Interpret(); ScAddress aDestPos = p->aPos; aDestPos.SetRow(nDestRow); @@ -2783,13 +2777,6 @@ struct SetDirtyIfPostponedHandler struct CalcAllHandler { - bool mbUseOpenCL; - - CalcAllHandler() : - mbUseOpenCL(officecfg::Office::Common::Misc::UseOpenCL::get()) - { - } - void operator() (size_t /*nRow*/, ScFormulaCell* pCell) { #if OSL_DEBUG_LEVEL > 1 @@ -2797,7 +2784,7 @@ struct CalcAllHandler double nOldVal, nNewVal; nOldVal = pCell->GetValue(); #endif - pCell->Interpret(mbUseOpenCL); + pCell->Interpret(); #if OSL_DEBUG_LEVEL > 1 if (pCell->GetCode()->IsRecalcModeNormal()) nNewVal = pCell->GetValue(); diff --git a/sc/source/core/data/column3.cxx b/sc/source/core/data/column3.cxx index 9dc95c1..40ec240 100644 --- a/sc/source/core/data/column3.cxx +++ b/sc/source/core/data/column3.cxx @@ -92,17 +92,10 @@ void ScColumn::BroadcastCells( const std::vector<SCROW>& rRows, sal_uLong nHint struct DirtyCellInterpreter { - bool mbUseOpenCL; - - DirtyCellInterpreter() : - mbUseOpenCL(officecfg::Office::Common::Misc::UseOpenCL::get()) - { - } - void operator() (size_t, ScFormulaCell* p) { if (p->GetDirty()) - p->Interpret(mbUseOpenCL); + p->Interpret(); } }; diff --git a/sc/source/core/data/documen4.cxx b/sc/source/core/data/documen4.cxx index b0a2af8..6d0c89d 100644 --- a/sc/source/core/data/documen4.cxx +++ b/sc/source/core/data/documen4.cxx @@ -85,7 +85,6 @@ bool ScDocument::Solver(SCCOL nFCol, SCROW nFRow, SCTAB nFTab, ScFormulaCell* pFormula = NULL; double fTargetVal = 0.0; sal_uInt32 nFIndex = 0; - const bool bUseOpenCL(officecfg::Office::Common::Misc::UseOpenCL::get()); if ( eFType == CELLTYPE_FORMULA && eVType == CELLTYPE_VALUE && GetFormatTable()->IsNumberFormat( sValStr, nFIndex, fTargetVal ) ) { @@ -110,7 +109,7 @@ bool ScDocument::Solver(SCCOL nFCol, SCROW nFRow, SCTAB nFTab, double fBestF, fFPrev; fBestX = fXPrev = fSaveVal; - pFormula->Interpret( bUseOpenCL ); + pFormula->Interpret(); bool bError = ( pFormula->GetErrCode() != 0 ); // bError always corresponds with fF @@ -132,7 +131,7 @@ bool ScDocument::Solver(SCCOL nFCol, SCROW nFRow, SCTAB nFTab, { *pVCell = fX; SetDirty( aVRange, false ); - pFormula->Interpret( bUseOpenCL ); + pFormula->Interpret(); bError = ( pFormula->GetErrCode() != 0 ); fF = pFormula->GetValue() - fTargetVal; @@ -166,7 +165,7 @@ bool ScDocument::Solver(SCCOL nFCol, SCROW nFRow, SCTAB nFTab, *pVCell = fHorX; SetDirty( aVRange, false ); - pFormula->Interpret( bUseOpenCL ); + pFormula->Interpret(); bHorMoveError = ( pFormula->GetErrCode() != 0 ); if ( bHorMoveError ) break; @@ -230,7 +229,7 @@ bool ScDocument::Solver(SCCOL nFCol, SCROW nFRow, SCTAB nFTab, { *pVCell = nX; SetDirty( aVRange, false ); - pFormula->Interpret( bUseOpenCL ); + pFormula->Interpret(); if ( fabs( pFormula->GetValue() - fTargetVal ) > fabs( fF ) ) nX = fBestX; bRet = true; @@ -241,7 +240,7 @@ bool ScDocument::Solver(SCCOL nFCol, SCROW nFRow, SCTAB nFTab, } *pVCell = fSaveVal; SetDirty( aVRange, false ); - pFormula->Interpret( bUseOpenCL ); + pFormula->Interpret(); if ( !bDoneIteration ) { SetError( nVCol, nVRow, nVTab, NOTAVAILABLE ); diff --git a/sc/source/core/data/documen7.cxx b/sc/source/core/data/documen7.cxx index 3d89773..795e93c 100644 --- a/sc/source/core/data/documen7.cxx +++ b/sc/source/core/data/documen7.cxx @@ -460,7 +460,6 @@ void ScDocument::CalcFormulaTree( bool bOnlyForced, bool bProgressBar, bool bSet pCell = pFormulaTree; ScFormulaCell* pLastNoGood = 0; - const bool bUseOpenCL(officecfg::Office::Common::Misc::UseOpenCL::get()); while ( pCell ) { // Interpret resets bDirty and calls Remove, also the referenced! @@ -468,11 +467,11 @@ void ScDocument::CalcFormulaTree( bool bOnlyForced, bool bProgressBar, bool bSet if ( bOnlyForced ) { if ( pCell->GetCode()->IsRecalcModeForced() ) - pCell->Interpret( bUseOpenCL ); + pCell->Interpret(); } else { - pCell->Interpret( bUseOpenCL ); + pCell->Interpret(); } if ( pCell->GetPrevious() || pCell == pFormulaTree ) { // (IsInFormulaTree(pCell)) no Remove was called => next diff --git a/sc/source/core/data/formulacell.cxx b/sc/source/core/data/formulacell.cxx index 7f91492..f38e7da 100644 --- a/sc/source/core/data/formulacell.cxx +++ b/sc/source/core/data/formulacell.cxx @@ -1434,7 +1434,7 @@ bool ScFormulaCell::MarkUsedExternalReferences() return pCode && pDocument->MarkUsedExternalReferences(*pCode, aPos); } -void ScFormulaCell::Interpret(bool bUseOpenCL) +void ScFormulaCell::Interpret() { if (!IsDirtyOrInTableOpDirty() || pDocument->GetRecursionHelper().IsInReturn()) return; // no double/triple processing @@ -1479,7 +1479,7 @@ void ScFormulaCell::Interpret(bool bUseOpenCL) } else { - if ( !bUseOpenCL || !InterpretFormulaGroup() ) + if ( ! InterpretFormulaGroup() ) InterpretTail( SCITP_NORMAL); } @@ -2369,7 +2369,7 @@ bool ScFormulaCell::NeedsInterpret() const void ScFormulaCell::MaybeInterpret() { if (NeedsInterpret()) - Interpret(officecfg::Office::Common::Misc::UseOpenCL::get()); + Interpret(); } bool ScFormulaCell::IsHyperLinkCell() const @@ -2456,7 +2456,7 @@ const ScMatrix* ScFormulaCell::GetMatrix() if( IsDirtyOrInTableOpDirty() // Was stored !bDirty but an accompanying matrix cell was bDirty? || (!bDirty && cMatrixFlag == MM_FORMULA && !aResult.GetMatrix())) - Interpret(officecfg::Office::Common::Misc::UseOpenCL::get()); + Interpret(); } return aResult.GetMatrix().get(); } @@ -3829,6 +3829,9 @@ bool ScFormulaCell::InterpretFormulaGroup() return false; } + if (!officecfg::Office::Common::Misc::UseOpenCL::get()) + return false; + // TODO : Disable invariant formula group interpretation for now in order // to get implicit intersection to work. if (mxGroup->mbInvariant && false) diff --git a/sc/source/core/data/validat.cxx b/sc/source/core/data/validat.cxx index 25b7f94..bb19d02 100644 --- a/sc/source/core/data/validat.cxx +++ b/sc/source/core/data/validat.cxx @@ -634,7 +634,7 @@ bool ScValidationData::GetSelectionFromFormula( // Make sure the formula gets interpreted and a result is delivered, // regardless of the AutoCalc setting. - aValidationSrc.Interpret(officecfg::Office::Common::Misc::UseOpenCL::get()); + aValidationSrc.Interpret(); ScMatrixRef xMatRef; const ScMatrix *pValues = aValidationSrc.GetMatrix(); diff --git a/sc/source/core/tool/detfunc.cxx b/sc/source/core/tool/detfunc.cxx index 2958827..d21476f 100644 --- a/sc/source/core/tool/detfunc.cxx +++ b/sc/source/core/tool/detfunc.cxx @@ -811,7 +811,7 @@ sal_uInt16 ScDetectiveFunc::InsertPredLevel( SCCOL nCol, SCROW nRow, ScDetective return DET_INS_CIRCULAR; if (pFCell->GetDirty()) - pFCell->Interpret(officecfg::Office::Common::Misc::UseOpenCL::get()); // can't be called after SetRunning + pFCell->Interpret(); // can't be called after SetRunning pFCell->SetRunning(true); sal_uInt16 nResult = DET_INS_EMPTY; @@ -900,7 +900,7 @@ sal_uInt16 ScDetectiveFunc::FindPredLevel( SCCOL nCol, SCROW nRow, sal_uInt16 nL return nLevel; if (pFCell->GetDirty()) - pFCell->Interpret(officecfg::Office::Common::Misc::UseOpenCL::get()); // can't be called after SetRunning + pFCell->Interpret(); // can't be called after SetRunning pFCell->SetRunning(true); sal_uInt16 nResult = nLevel; @@ -958,7 +958,7 @@ sal_uInt16 ScDetectiveFunc::InsertErrorLevel( SCCOL nCol, SCROW nRow, ScDetectiv return DET_INS_CIRCULAR; if (pFCell->GetDirty()) - pFCell->Interpret(officecfg::Office::Common::Misc::UseOpenCL::get()); // can't be called after SetRunning + pFCell->Interpret(); // can't be called after SetRunning pFCell->SetRunning(true); sal_uInt16 nResult = DET_INS_EMPTY; @@ -1010,7 +1010,7 @@ sal_uInt16 ScDetectiveFunc::InsertSuccLevel( SCCOL nCol1, SCROW nRow1, SCCOL nCo bool bRunning = pFCell->IsRunning(); if (pFCell->GetDirty()) - pFCell->Interpret(officecfg::Office::Common::Misc::UseOpenCL::get()); // can't be called after SetRunning + pFCell->Interpret(); // can't be called after SetRunning pFCell->SetRunning(true); ScDetectiveRefIter aIter(pFCell); @@ -1098,7 +1098,7 @@ sal_uInt16 ScDetectiveFunc::FindSuccLevel( SCCOL nCol1, SCROW nRow1, SCCOL nCol2 bool bRunning = pFCell->IsRunning(); if (pFCell->GetDirty()) - pFCell->Interpret(officecfg::Office::Common::Misc::UseOpenCL::get()); // can't be called after SetRunning + pFCell->Interpret(); // can't be called after SetRunning pFCell->SetRunning(true); ScDetectiveRefIter aIter(pFCell); diff --git a/sc/source/ui/docshell/docfunc.cxx b/sc/source/ui/docshell/docfunc.cxx index a575f71..1245ef5 100644 --- a/sc/source/ui/docshell/docfunc.cxx +++ b/sc/source/ui/docshell/docfunc.cxx @@ -1014,7 +1014,7 @@ bool ScDocFunc::SetFormulaCell( const ScAddress& rPos, ScFormulaCell* pCell, boo if (bInteraction && !rDoc.GetAutoCalc() && pCell) { // calculate just the cell once and set Dirty again - pCell->Interpret(officecfg::Office::Common::Misc::UseOpenCL::get()); + pCell->Interpret(); pCell->SetDirtyVar(); rDoc.PutInFormulaTree( pCell); } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits