On Fri, Jul 12, 2019 at 1:41 PM Arnd Bergmann <a...@arndb.de> wrote: > > On Fri, Jul 12, 2019 at 6:59 PM 'Nick Desaulniers' via Clang Built > Linux <clang-built-li...@googlegroups.com> wrote: > > > The issue still needs to get fixed in clang regardless. There are other > > > noreturn functions in the kernel and this problem could easily pop back > > > up. > > > > Sure, thanks for the report. Arnd, can you help us get a more minimal > > test case to understand the issue better? > > I reduced it to this testcase: > > int a, b; > void __reiserfs_panic(int, ...) __attribute__((noreturn)); > void balance_internal() { > if (a) > __reiserfs_panic(0, "", __func__, "", 2, __func__, a); > if (b) > __reiserfs_panic(0, "", __func__, "", 5, __func__, a, 0); > } > > https://godbolt.org/z/Byfvmx
Is this the same issue as Josh pointed out? IIUC, Josh pointed to a jump destination that was past a `push %rbp`, and I don't see it in your link. (Or, did I miss it?) -- Thanks, ~Nick Desaulniers