HomePhabricator

BasicAA: fix bug where we would return partialalias instead of noalias

Description

BasicAA: fix bug where we would return partialalias instead of noalias
My fix is conservative and will make us return may-alias instead.

The test case is:
check(gep(x, 0), n, gep(x, n), -1) with n == sizeof(x)

Here, the first value accesses the whole object, but the second access
doesn't access anything. The semantics of -1 is read until the end of the
object, which in this case means read nothing.

No test case, since isn't trivial to exploit this one, but I've proved it correct.

Details

Committed
nlopesNov 8 2017, 2:59 AM
Parents
rL317679: Log: delimit thread name in log message
Branches
Unknown
Tags
Unknown