View Issue Details

IDProjectCategoryView StatusLast Update
0033296Open CASCADEOCCT:Codingpublic2024-01-19 17:33
ReporterddzamaAssigned Toddzama 
PrioritynormalSeverityminor 
Status closedResolutionwon't fix 
PlatformMingw64OSWindows 10 
Product Version7.7.0 
Target VersionUnscheduled 
Summary0033296: Coding - O3 level optimization leads to many failed tests on boolean operations
DescriptionOn Mingw 12.1.0 compiler
tests
***
fails

But if we reduce optimization level to O2 - these failed tests pass without regressions.

We may get difference between two options by executing commands (from gcc manual):
gcc -c -Q -O2 --help=optimizers >O2.opt.txt
gcc -c -Q -O3 --help=optimizers >O3.opt.txt
diff O2.opt.txt O3.opt.txt

The difference will be in enabling of these options:
-fgcse-after-reload
-fipa-cp-clone
-floop-interchange
-floop-unroll-and-jam
-fpeel-loops
-fpredictive-commoning
-fsplit-loops
-fsplit-paths
-ftree-loop-distribution
-ftree-partial-pre
-funroll-completely-grow-size
-funswitch-loops
-fvect-cost-model=dynamic
-fversion-loops-for-strides

We tried to pass these arguments with O2 with CMAKE parameters:
CMAKE_CXX_FLAGS_RELEASE & CMAKE_C_FLAGS_RELEASE
But it became not equivalent to O3.
So, we are not able to catch the option(s), which breaks some boolean operation tests.

At this moment to compile OCCT with Mingw you could not use default optimization option O3 - only O2.
This is the problem, which we should investigate.
TagsNo tags attached.
Test case number

Activities

vglukhik

2024-01-19 17:33

administrator   ~0114937

we don't use mingw64 platform more

Issue History

Date Modified Username Field Change
2022-12-21 09:01 ddzama New Issue
2022-12-21 09:01 ddzama Assigned To => ddzama
2022-12-21 09:01 ddzama OS => Windows 10
2022-12-21 09:01 ddzama Platform => Mingw64
2022-12-21 09:01 ddzama Summary O3 level optimization leads to many failed tests on boolean operations => Coding - O3 level optimization leads to many failed tests on boolean operations
2023-03-07 13:59 dpasukhi Target Version 7.7.0 => Unscheduled
2024-01-19 17:33 vglukhik Status new => closed
2024-01-19 17:33 vglukhik Resolution open => won't fix
2024-01-19 17:33 vglukhik Note Added: 0114937