Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

inliner doesn't properly update callgraph when performing partial inlining #1199

Closed
llvmbot opened this issue Jul 11, 2006 · 4 comments
Closed
Assignees
Labels
bugzilla Issues migrated from bugzilla compile-fail Use [accepts-invalid] and [rejects-valid] instead ipo Interprocedural optimizations

Comments

@llvmbot
Copy link
Collaborator

llvmbot commented Jul 11, 2006

Bugzilla Link 827
Resolution FIXED
Resolved on Feb 22, 2010 12:51
Version trunk
OS All
Attachments File that crashes opt
Reporter LLVM Bugzilla Contributor

Extended Description

opt bugpoint-reduced-simplified.bc -inline -prune-eh
WARNING: You're attempting to print out a bytecode file.
This is inadvisable as it may cause display problems. If
you REALLY want to taste LLVM bytecode first-hand, you
can force output with the `-f' option.

opt((anonymous namespace)::PrintStackTrace()+0x1f)[0x848a90f]
[0x85a1df4]
Segmentation fault

When reducing this testcase I also sometimes got this instead:
opt: /usr/local/llvm/src/llvm/include/llvm/ADT/ilist:120: typename
bidirectional_iterator<NodeTy, ptrdiff_t>::reference
llvm::ilist_iterator::operator*() const [with NodeTy =
llvm::BasicBlock]: Assertion `Traits::getNext(NodePtr) != 0 && "Dereferencing
end()!"' failed.
opt((anonymous namespace)::PrintStackTrace()+0x1f)[0x848a90f]
/lib/tls/i686/cmov/libc.so.6(abort+0x1dc)[0xb7dd67d8]
/lib/tls/i686/cmov/libc.so.6(__assert_fail+0x109)[0xb7dced5d]
opt((anonymous
namespace)::PruneEH::SimplifyFunction(llvm::Function*)+0x2c5)[0x8300f65]
Aborted

@llvmbot
Copy link
Collaborator Author

llvmbot commented Jul 11, 2006

assigned to @lattner

@lattner
Copy link
Collaborator

lattner commented Jul 12, 2006

This looks like the inliner isn't updating the callgraph correctly, which causes the prune-eh pass to crash.
I'm investigating.

-Chris

@lattner
Copy link
Collaborator

lattner commented Aug 3, 2006

*** Bug llvm/llvm-bugzilla-archive#846 has been marked as a duplicate of this bug. ***

@llvmbot llvmbot transferred this issue from llvm/llvm-bugzilla-archive Dec 3, 2021
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bugzilla Issues migrated from bugzilla compile-fail Use [accepts-invalid] and [rejects-valid] instead ipo Interprocedural optimizations
Projects
None yet
Development

No branches or pull requests

2 participants