dhewm3/neo/idlib
Daniel Gibson 2521c3dfdb (Hopefully) better workaround for miscompiled cross products, #147
according to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100839
the real compiler flag enabling this bullshit isn't
-fexpensive-optimizations but -ffp-contract=fast which for some(*)
reason is default in optimized builds.
I think it's best to disabled that optimization globally in case it
also breaks other code (I really don't want to spend several days to
hunt such an idiot bug again). I really doubt it makes any measurable
performance difference.
As https://twitter.com/stephentyrone/status/1399424911328874499 says
that clang might also enable this in the future (though to =on instead
of =fast which should be a bit saner but would still break our code),
just set this option for all GCC-ish compilers incl. clang.

(*) the reason of course is that GCC developers don't develop GCC for
    their users but to win idiotic SPEC benchmarks
2021-05-31 21:37:31 +02:00
..
bv Untangle the epic precompiled.h mess 2011-12-19 23:21:47 +01:00
containers List.h needs sys/platform.h for ID_INLINE 2012-11-13 23:28:21 +01:00
geometry Silence an uninitialized variable warning 2021-03-15 13:02:45 +02:00
hashing s/LittleLong/LittleInt/ to match the return type 2012-06-28 13:02:47 +02:00
math (Hopefully) better workaround for miscompiled cross products, #147 2021-05-31 21:37:31 +02:00
Base64.cpp Remove usage of long type from idlib/ 2012-06-28 13:02:45 +02:00
Base64.h Untangle the epic precompiled.h mess 2011-12-19 23:21:47 +01:00
BitMsg.cpp s/ReadDeltaLongCounter/ReadDeltaIntCounter/ 2012-06-28 13:52:24 +02:00
BitMsg.h s/ReadDeltaLong/ReadDeltaInt/ 2012-06-28 13:52:25 +02:00
CmdArgs.cpp Untangle the epic precompiled.h mess 2011-12-19 23:21:47 +01:00
CmdArgs.h Fix all whitespace errors 2011-12-10 15:35:54 +01:00
Dict.cpp s/LittleLong/LittleInt/ to match the return type 2012-06-28 13:02:47 +02:00
Dict.h Untangle the epic precompiled.h mess 2011-12-19 23:21:47 +01:00
Heap.cpp Untangle the epic precompiled.h mess 2011-12-19 23:21:47 +01:00
Heap.h Fix alignment issue with idBlockAlloc::Free() 2011-12-22 18:51:17 +01:00
LangDict.cpp idLangDict: Workaround for Doom3: Lost Mission stringtables #265 2020-01-05 02:34:53 +01:00
LangDict.h Untangle the epic precompiled.h mess 2011-12-19 23:21:47 +01:00
Lexer.cpp Fixing some spelling errors: s/unkown/unknown, s/seperate/separate. (#107) 2015-02-25 22:01:00 +01:00
Lexer.h Untangle the epic precompiled.h mess 2011-12-19 23:21:47 +01:00
Lib.cpp Unix: On failed assertion, break gracefully into debugger 2015-12-13 03:30:03 +01:00
Lib.h s/BigLong/BigInt/ to match the return type 2012-06-28 13:52:22 +02:00
MapFile.cpp Untangle the epic precompiled.h mess 2011-12-19 23:21:47 +01:00
MapFile.h Untangle the epic precompiled.h mess 2011-12-19 23:21:47 +01:00
Parser.cpp Fix some compiler warnings (wrong types, superfluous checks, printf-fuckup) 2015-09-27 18:12:16 +02:00
Parser.h Remove usage of long type from idlib/ 2012-06-28 13:02:45 +02:00
Str.cpp Fix handling of paths with dots in dir names, fix #299, #301 2020-07-21 05:58:44 +02:00
Str.h import AROS changes 2017-04-02 00:42:28 +01:00
Timer.cpp Use idSys::GetMilliseconds() for idTimer 2011-12-22 10:38:39 +01:00
Timer.h Use idSys::GetMilliseconds() for idTimer 2011-12-22 10:38:39 +01:00
Token.cpp Untangle the epic precompiled.h mess 2011-12-19 23:21:47 +01:00
Token.h Remove usage of long type from idlib/ 2012-06-28 13:02:45 +02:00