2 ms·
This might be the first time in my career I have genuinely found a compiler bug. I've been operating under the axiom of "don't assume it's a compiler bug, assum
by xena 4mo ago
This might be the first time in my career I have genuinely found a compiler bug. I've been operating under the axiom of "don't assume it's a compiler bug, assume you're fucking it up somehow". When you get to the point that disabling ASLR makes it consistent intra-host I think I've won the right to at least suspect a compiler bug is at play.
I'll go file it upstream after work today.
- ammar2 4mo agoIf you feel like increasing your power as per your post, this is a somewhat decent first LLVM issue, take a look at WebAssemblyCFGStackify.cpp :) llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll and friends are existing tests that you can kinda mangle if you want to get a good reproducer. Also take a look at https://discourse.llvm.org/t/reverse-iteration-bots/72224 https://discourse.llvm.org/t/reverse-iteration-bots/72224 Otherwise, happy to put my reproducer/patch on the bug after you file it!
- xena 4mo agoI'm gonna have to file the bug without a minimal reproduction case. The issue seems to be those try_table blocks getting nondeterministically reordered at link time (is it using machine pointers for iteration order?). Sadly I'm observing this with a local checkout of binaryen, so it may take a while for you to find the minimal reproduction case.
- xena 4mo agoI filed the bug: https://github.com/llvm/llvm-project/issues/204883 https://github.com/llvm/llvm-project/issues/204883