[LLVMdev] problem with using DSA for a side-effect analysis
Zvonimir Rakamaric
zrakamar at gmail.com
Fri Apr 4 08:04:06 PDT 2008
On Fri, Apr 4, 2008 at 2:38 AM, Andrew Lenharth <andrewl at lenharth.org> wrote:
> On Thu, Apr 3, 2008 at 4:53 PM, Zvonimir Rakamaric <zrakamar at gmail.com> wrote:
> > Thanks guys!
> >
> > I was looking into ModRef before, but I don't think that's exactly
> > what I need. ModRef API call getModRefInfo requires a Value to be
> > passed to it. However, some memory location M (which is a <DSNode,
> > offset> pair) visible to the caller can be modified in the callee
> > without any Value in the caller actually pointing to that location. I
> > also need to capture those...
> >
> > I would need a call similar to getModRefInfo, just where second
> > parameter is not a Value, but a DSNodeHandle pointing to the memory
> > location in the caller whose ModRef status I would like to find out.
> > Do you maybe have anything similar to that?
>
> I haven't looked at the dsaaa implementation for quite a while, but
> that would be the place to start. If the DSNodeHandle corrosponds to
> anything in the current function, you could just use that as a value,
> but it won't always. Eitherway, seeing how DSAaa does this would be
> the best code to start from.
Thanks!
I already had most of the code for it already written, staring at the
DSAaa helped me to fix a couple of problems. It seems to be working
perfectly now...
Btw, apart from the difference I already mentioned, DSAaa modref is
also not so good fit for me because it is not field-sensitive...
-- Zvonimir
More information about the llvm-dev
mailing list