diff options
author | jfc <jfc@138bc75d-0d04-0410-961f-82ee72b054a4> | 1998-04-29 12:41:21 +0000 |
---|---|---|
committer | jfc <jfc@138bc75d-0d04-0410-961f-82ee72b054a4> | 1998-04-29 12:41:21 +0000 |
commit | 653b1824c16ef3d10b5741f5d50e7ccd18cbe024 (patch) | |
tree | dd1905278f46f2c7d59d423d9eab086e1c6e679b /gcc/alias.c | |
parent | f1a9771e6f9364e15863db4c19bcb364f4665eed (diff) | |
download | gcc-653b1824c16ef3d10b5741f5d50e7ccd18cbe024.tar.gz |
* calls.c (expand_call): Fix recognition of C++ operator new.
* alias.c (mode_alias_check): Disable type based alias detection.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@19492 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/alias.c')
-rw-r--r-- | gcc/alias.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/alias.c b/gcc/alias.c index a9024b8c98f..148b4527345 100644 --- a/gcc/alias.c +++ b/gcc/alias.c @@ -859,6 +859,11 @@ mode_alias_check (x, y, varies) register rtx x, y; int (*varies) PROTO ((rtx)); { +#if 1 + /* gcc rules: all type aliasing allowed */ + return 1; +#else + /* ANSI C rules: different types do not alias. */ enum machine_mode x_mode = GET_MODE (x), y_mode = GET_MODE (y); rtx x_addr = XEXP (x, 0), y_addr = XEXP (y, 0); int x_varies, y_varies, x_struct, y_struct; @@ -903,6 +908,7 @@ mode_alias_check (x, y, varies) /* Both are varying structs or fixed scalars. Check that they are not the same type. */ return (x_struct == y_struct); +#endif } /* Read dependence: X is read after read in MEM takes place. There can |