Remix.run Logo
▲ Two ARM64-specific compiler optimization bugs, in GCC 15/16 and Rust, hit curl(mastodon.social)
46 points by torutofu 7 hours ago | 6 comments
▲vlovich123 5 hours ago | parent | next [-]

Not actually confirmed as compiler bugs yet.

Here’s a similar bug where OpenSSL’s inline asm was wrong and probably only GCC was smart enough to try to exploit the bug:

https://github.com/openssl/openssl/pull/23233

Same for rust - could be UB in quiche that is getting exposed.

▲account42 4 hours ago | parent [-]

Can't even find an upstream compiler bug report not to mention a confirmation/patch. Doesn't look like the compiler output was analyzed at all either, they are just going by "-O3 results in valgrind warnings, -O2 doesn't".

It's not like compiler bugs are unheard of but they are rare enough that the base assumption should be that the bug is in your own code.

▲tialaramex 16 minutes ago | parent [-]

And not only is this blaming a compiler bug, which like sure, those do happen, it blames two compiler bugs in different programming languages. That's a red flag to me.

▲edoceo 6 hours ago | parent | prev | next [-]

The social post links to this bug https://github.com/curl/curl/issues/23237

▲cloudie78 5 hours ago | parent [-]

Thank you

▲rurban 4 hours ago | parent | prev [-]

Looks like a valid new optimization to me, which only fails on valgrind, which is a bit too strict with uninitialized values. In openssl's strlcpy. They'll deal with that.