Mingw SEH Error-Handling unter Windows 7?
-
Hi!
Ich benutze mingw64 gcc-4.6.1 zum Kompilieren meiner Ansi C-Source. Ich habe für ein ausführbares Programm den Gnuprofiler gprof gestartet und das Ergebnis zeigt mir an, dass das Programm 66 % der Zeit fürs SEH Structured Error Handling und 17 % für matherr braucht. Ich habe gelesen, dass Windows 7 SEH unterstützt, aber gcc nicht. Wird dann ständig während der Laufzeit der Stack manipuliert? Kann man das Errorhandling irgendwie loswerden und das Programm schneller kriegen? Ich bin dankbar für jede Idee.
Gruss
Jesse
-
Weiss nicht ob was dran ist, aber als ich SEH im Zusammenhang mit matherr() gelesen habe musste ich sofort an Denormals denken.
Du könntest probieren mal die "flush to zero" und "denormals are zero" Flag zu setzen. Dann behandelt er Denormals einfach als Null, und muss nimmer die Software-Emulation anwerfen um mit denen zu rechnen.
Vielleicht bringt es auch was wenn du dem Compiler explizit erlaubst SSE/SSE2/... zu verwenden.