http://llvm.org/bugs/show_bug.cgi?id=2854
Summary: SimplifyCFG outputs an incorrect IR
Product: libraries
Version: trunk
Platform: All
OS/Version: All
Status: NEW
Severity: normal
Priority: P2
Component: Common Code Generator Code
AssignedTo: [EMAIL PROTECTED]
ReportedBy: [EMAIL PROTECTED]
CC: [email protected]
Created an attachment (id=2052)
--> (http://llvm.org/bugs/attachment.cgi?id=2052)
Test-case for the bug
The attached test-case, after being opt'ed with -simplifycfg, makes llc
unhappy:
llc: SelectionDAGISel.cpp:331: virtual bool
llvm::SelectionDAGISel::runOnFunction(llvm::Function&): Assertion
`FuncInfo->CatchInfoFound.size() == FuncInfo->CatchInfoLost.size() && "Not all
catch info was assigned to a landing pad!"' failed.
If the test-case is not cfg simplified, llc is happy.
Steps to reproduce the bug:
llvm-as testcase.ll
opt -simplifycfg testcase.bc | llc
The testcase is an output from a Java function translated to LLVM IR with
vmkit. FYI, here's the (meaningless) Java function.
public static void main(String[] args) throws Exception {
try {
synchronized(args) {
while (true)
abort();
}
}
}
Apparently, it's the smallest testcase i could get in Java, even so the
generated IR is quite complex :/
--
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