[LLVMbugs] [Bug 4835] New: Callgraph should use ValueHandle APIs

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Sun Aug 30 19:16:01 PDT 2009


http://llvm.org/bugs/show_bug.cgi?id=4835

           Summary: Callgraph should use ValueHandle APIs
           Product: libraries
           Version: 1.0
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Interprocedural Analyses
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: clattner at apple.com
                CC: llvmbugs at cs.uiuc.edu
            Blocks: 3601


Created an attachment (id=3395)
 --> (http://llvm.org/bugs/attachment.cgi?id=3395)
patch that uses AssertingVH

Here's a patch that converts the callgraph to using AssertingVH.  It works
great except (and caught a bunch of bugs in (e.g.) argpromotion), except that
scalar and loop passes aren't (and shouldn't be) callgraph aware.  Instead, the
callgraph should use CallbackVH's in each CallGraphNode to keep a smart
reference to a call site.  When (e.g.) simplifycfg deletes a dead block that
has a call site in it, it would automatically cause the entry from the
callgraph node to be removed.

I don't have time to work on this right now, so I'm posting this patch in case
anyone else is interested.  This may help fix Bug 3601.

-Chris


-- 
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.



More information about the llvm-bugs mailing list