Sent from my iPhone
On Jan 27, 2009, at 3:15 AM, "bonzini at gnu dot org" <gcc-bugzi...@gcc.gnu.org
> wrote:
This testcase fails:
/* { dg-do compile } */
/* { dg-options "-O2 -fdump-tree-optimized" } */
int f(int *p)
{
int a = *p;
int *q = (int *)0xDEADBEE0;
*q = 5;
return *p == a;
}
/* { dg-final { scan-tree-dump-times " = \\\*p" 2 "optimized" } } */
/* { dg-final { scan-tree-dump-not "return 1" "optimized" } } */
/* { dg-final { cleanup-tree-dump "optimized" } } */
Unlike PR38984 it does not require -fno-delete-null-pointer-checks.
Volatile addresses also don't have vops on them. As I mentioned in
the other bug. So this is also a bug for volatiles.
--
Summary: [4.2/4.3/4.4 Regression] missing constraints for
pointers accessed directly via their address
Product: gcc
Version: 4.4.0
Status: UNCONFIRMED
Keywords: wrong-code
Severity: normal
Priority: P3
Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: bonzini at gnu dot org
OtherBugsDependingO 38984
nThis:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38985