1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-09-13 14:27:08 +03:00

0024227: Enable SS2 instructions for OCCT building

Test for exceptions corrected to handle FPE when built with with SSE2 option on Windows (NumericError raised instead of specific exceptions)
New test for performance of bspline intersections added

sse2 added; build bitness hardlinked to compiler

"bitness" variable was hidden
This commit is contained in:
abv
2013-10-10 14:41:01 +04:00
committed by bugmaster
parent fcdbe2010e
commit 11fca7c177
4 changed files with 240 additions and 30 deletions

View File

@@ -2464,13 +2464,13 @@ static Standard_Integer OCC6143 (Draw_Interpretor& di, Standard_Integer argc, co
di << " 4.0 / 0.0 = " << res << " Does not Caught... KO"<< "\n";
Succes = Standard_False;
}
#if defined(SOLARIS) || defined(WNT)
catch(Standard_DivideByZero)
#else
catch(Standard_NumericError)
#endif
catch(Standard_DivideByZero) // Solaris, Windows w/o SSE2
{
di << " Ok"<< "\n";
di << " Ok" << "\n";
}
catch(Standard_NumericError) // Linux, Windows with SSE2
{
di << " Ok" << "\n";
}
catch(Standard_Failure) {
//cout << " Caught (" << Standard_Failure::Caught() << ")... KO" << endl;
@@ -2519,13 +2519,13 @@ static Standard_Integer OCC6143 (Draw_Interpretor& di, Standard_Integer argc, co
di << "-- "<<res<<"="<<r<<"*"<<r<<" Does not Caught... KO"<< "\n";
Succes = Standard_False;
}
#if defined(SOLARIS) || defined(WNT)
catch(Standard_Overflow)
#else
catch(Standard_NumericError)
#endif
catch(Standard_Overflow) // Solaris, Windows w/o SSE2
{
di << " Ok"<< "\n";
di << " Ok" << "\n";
}
catch(Standard_NumericError) // Linux, Windows with SSE2
{
di << " Ok" << "\n";
}
catch(Standard_Failure) {
//cout << " Caught (" << Standard_Failure::Caught() << ")... KO" << endl;
@@ -2549,13 +2549,13 @@ static Standard_Integer OCC6143 (Draw_Interpretor& di, Standard_Integer argc, co
//++++ Succes = Standard_False;
di<<" -- "<<res<<"="<<r<<"*"<<r<<" Does not Caught... (But) Ok"<<"\n";
}
#if defined(SOLARIS) || defined(WNT)
catch(Standard_Underflow)
#else
catch(Standard_NumericError)
#endif
catch(Standard_Underflow) // could be on Solaris, Windows w/o SSE2
{
di << " Ok"<< "\n";
di << " Ok" << "\n";
}
catch(Standard_NumericError) // could be on Linux, Windows with SSE2
{
di << " Ok" << "\n";
}
catch(Standard_Failure) {
//cout << " Caught (" << Standard_Failure::Caught() << ")... KO" << endl;