<Mateon1>
...if I had a dollar for each time I saw abs() break a compiler...
<Mateon1>
Just reduced a JIT crashing testcase for the issue I submitted, took absolutely forever, required so much manual babysitting, but eventually got a deterministic crash
<Mateon1>
To complete the previous thought: ...I'd have like 8-9 dollars, which is frankly bonkers, the usual saying is like 2 or 3
_whitelogger has joined #pypy
<LarstiQ>
that is quite a bit
jerith has quit [Quit: Connection closed for inactivity]
<nikolar>
How did abs() break a compiler
MiguelX413 has quit [Ping timeout: 260 seconds]
MiguelX413 has joined #pypy
MiguelX413 has quit [Client Quit]
<Mateon1>
nikolar: Bad peephole optimizations, usually, unchecked subexpression/subgraph sharing, fairly often a mishandling of the INT_MIN edge case... I've seen issues in several compilers based on (old) gcc code, hit one in an llvm-based project, multiple Javascript engines, msvc, and some hobby compilers
<Mateon1>
And now Pypy I guess
<nikolar>
That's surprising honestly, doesn't seem like a particularly bad function
<Mateon1>
The GCC issues were specifically because it was matching code and lowering it to a primitive... If it just kept it as a simple conditional none of the bugs would happen
<Mateon1>
Also damnit, pypy build attempt failed again, and this time didn't oom, but looks like the nixpkgs package is broken. An import test, post-build is failing on _sqlite3_cffi (via dbapi2)
<Mateon1>
I've done all this reduction on an old version of pypy since I can't update to a newer version
<Mateon1>
This is on pypy27, but pypy27 is a build dependency for building pypy3 in nixpkgs