Given a simple testcase /* Two int arrays testcase for ipaa. */ #define N 11 void f (); void g (int* g1, int* g2); main () { f(); return; } void f () { int a[N]; int b[N]; g(a,b); return; } void g (int* g1, int* g2) { int i; for (i=0; i < N; i++) g1[i] = g2[i]; } may_alias_p is never called. However, Interprocedural Alias Analysis can tell us these formals never alias. We need to be able to take this kind of analysis into account in our representation.
By "These formals" i mean g1 and g2
> By "These formals" i mean g1 and g2 Thanks for the clarification: I clearly remember "someone" at GCCSummit puzzled by the spelling checker marking "formal" as error ;)
Ack.
Subject: Bug 22254 I actually came across a case recently where we do call it for PARM_DECL's. I'll try to find it again
The two pointers are assigned the same SMT. Is this still a problem? Dereferenced pointers D.1541, UID 1541, int *, symbol memory tag: SMT.5 D.1542, UID 1542, int *, symbol memory tag: SMT.5 Or do you need to analyze g1 and g2?