http://llvm.org/bugs/show_bug.cgi?id=5275
Summary: "opt -inline" sometimes fails silently in 2.6 and
current trunk
Product: tools
Version: 2.6
Platform: PC
OS/Version: Linux
Status: NEW
Keywords: miscompilation
Severity: major
Priority: P2
Component: opt
AssignedTo: [email protected]
ReportedBy: [email protected]
CC: [email protected]
Created an attachment (id=3687)
--> (http://llvm.org/bugs/attachment.cgi?id=3687)
Compiling this code produces the bug, one function argument will be "undef" in
LLVM IR
In the (not yet officially released) 2.6 source of LLVM and today's SVN trunk
opt seems to be bugged for the inline function.
When inlining, a function argument becomes "undef" in the LLVM IR. This IR
passes verification and is happily passed on to later passes. The code compiles
"correctly" but the binary will cause segmentation faults when executed.
I've attached a piece of c source code that produces this bug.
My steps are:
$ llvm-gcc -c -emit-llvm code.c -o correct.bc
$ opt -inline -verify-each correct.bc -o broken.bc
$ llvm-dis broken.bc -o broken.ll
$ llc broken.bc -o broken.s
$ llvm-gcc broken.s -o segfaultprogram
$ ./segfaultprogram => causes segmentation fault
code.c is added as an attachment and opt used to inline this perfectly in 2.5,
but not anymore for me. The reason I marked the severity as major is because it
fails silently.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- 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