I reported a bug at GCC: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100839
Which was closed because apparently the relevant flag for this is -ffp-contract which defaults to "=fast" which can apparently violate the language standard.
I'm really shocked that GCC thinks it's ok to violate the language standard in "normal" optimization levels - this is what -Ofast and -ffast-math etc are for!
Unfortunately fmsub uses a "infinite precision intermediate result" for the multiplication, so in the end you get the difference between the multiplications in double(?) precision and in single precision, which often is not 0.
This already happens with relatively small values in the hundreds. Clang only does this with -ffast-math (which is OK).
Godbolt link: https://gcc.godbolt.org/z/8K3vKh7b3
More elaborate writeup at https://github.com/RobertBeckebans/RBDOOM-3-BFG/issues/436#issuecomment-851061826
TIL that GCC miscompiles cross product calculations if the x86 FMA extension is enabled and -O2 or higher is used (*without* -ffast-math or similar).
float z = v1.x * v2.y - v1.y * v2.x should be 0.0 if both multiplications have the same result (like when v1==v2), but it isn't, because GCC tries to be clever and does a normal multiplication for v1.y*v2.x (stored as 32bit float), but then uses vfmsub132ss for v1.x * v2.y and subtracting the other result.
If you run Exim connected to the Internet or local with untrusted users, you should either patch now or shut it down.
Read this awesome article and be sure to watch the clip.
dhewm3 1.5.1 is finally released: https://dhewm3.org/#dhewm3-1.5.1
Major changes since 1.5.0:
- Brought back Win32 editing tools
- Doom3 Demo data supported
- Sound timing a lot more precise
- Better fullscreen support (incl. DSR/VSR)
- Many bugfixes
- See link for more details :-)
bumping this for the weekend - play some Doom3 with the dhewm3 source port!
I finally released dhewm3 1.5.1 RC3, the hopefully last release candidate for 1.5.1: https://dhewm3.org/#dhewm3-1.5.1-release-candidate-3
Some changes since RC2:
- Fullscreen improvements, support nvidia DSR/AMD VSR
- Updated Mod DLLs incl. the newly added LibreCoop and D3: Lost Mission
- Several Bugfixes
Please test - thanks in advance! :-)
#Cinnamon screen lock bypass. This time triggered by the reporter's kids 😂
Question to all my non German friends. Here, we watch a comedy show called "dinner for one" every new year's eve. I think every German knows that show, even the little ones.
If you are living outside Germany, do you know that show? Have you seen it before? If not, would you watch it again?
Happy new year and let's how that 2021 will be a better year!
Dear web developers and admins,
please stop embedding Google's hideous #ReCaptcha into your websites. Its algorithm is faulty, forcing regular users to click dozens or even hundreds of fire hydrants, bicycles, or traffic lights each day. It puts a 'suspicious activity' flag on users who won't obey to Google's business model - such as people who don't sign into Chrome, use anonymity VPNs, or use browser extensions to suppress common tracking mechanisms. Enough is enough. Stop it.
My long-term plan for #FreeNukum is to allow custom data for graphics, sound and level data. Now that is fully written in #Rust, it was easy to hack together a quick prototype that allows loading of custom graphics tiles as a drop-in replacement that I prepared a few years ago. This allows to experiment with mixed original and custom tiles, as shown in the screenshots.
This Mastodon instance is for people interested in technology. Discussions aren't limited to technology, because tech folks shouldn't be limited to technology either!