http://llvm.org/bugs/show_bug.cgi?id=21470
Reid Kleckner <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|FIXED |--- --- Comment #9 from Reid Kleckner <[email protected]> --- (In reply to comment #7) > Right. The function has to retain its non-returnedness, and it does. It > can't just replace it with nothing but a "ret undef". Sorry, I misunderstood > when Reid told me about this bug, I thought it was replacing it with a "ret > undef" and no infinite self-recursion. We do in fact do that, however: $ cat t.cpp extern "C" int foo() { return foo(); } $ clang -cc1 t.cpp -emit-llvm -O2 -o - | grep @foo -A3 define i32 @foo() #0 { entry: ret i32 undef } Probably because the call to foo has no users and foo is "readonly" so we do a later cleanup to delete it. -- You are receiving this mail because: You are on the CC list for the bug.
_______________________________________________ LLVMbugs mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs
