[cfe-dev] [PATCH] expand a symbolic pointer

Zhongxing Xu xuzhongxing at gmail.com
Tue Dec 9 05:14:12 PST 2008


Conditionally expand a symbolic pointer into a pointer to a real struct. In
the following code,

struct x {
        int partno;
};
int foo(struct x *pt)
{
        int found;
        if(pt->partno != 1) {
                found = 0;
        }
        if(pt->partno == 1 || !found) {
                return 1;
        }
        return 0;
}

when we visit pt->partno, an AnonPointeeRegion is created lazily for pt.
Moreover, only when pt is feasible not null, the region is created. This
fixes PR2304.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20081209/9dfbc773/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: expand.patch
Type: application/octet-stream
Size: 9273 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20081209/9dfbc773/attachment.obj>


More information about the cfe-dev mailing list