summaryrefslogtreecommitdiff
path: root/gcc/stmt.c
diff options
context:
space:
mode:
authorpinskia <pinskia@138bc75d-0d04-0410-961f-82ee72b054a4>2007-08-20 00:48:09 +0000
committerpinskia <pinskia@138bc75d-0d04-0410-961f-82ee72b054a4>2007-08-20 00:48:09 +0000
commit9961142a9dee15a3aedf5638fe31b094654fd111 (patch)
tree5fa3a5c401371070f18b2927b4c82bb90ba076d2 /gcc/stmt.c
parent81bdcc38178e0d7ecdbf486ad604f5f539e75521 (diff)
downloadgcc-9961142a9dee15a3aedf5638fe31b094654fd111.tar.gz
2007-08-19 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/32940 * cfgexpand.c (expand_one_register_var): Mark pointer DECL_ARTIFICIAL as REG_POINTER also. * stmt.c (expand_decl): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127634 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/stmt.c')
-rw-r--r--gcc/stmt.c14
1 files changed, 3 insertions, 11 deletions
diff --git a/gcc/stmt.c b/gcc/stmt.c
index cb4b1bd19e3..7192dcaf291 100644
--- a/gcc/stmt.c
+++ b/gcc/stmt.c
@@ -1898,19 +1898,11 @@ expand_decl (tree decl)
/* Note if the object is a user variable. */
if (!DECL_ARTIFICIAL (decl))
- {
mark_user_reg (DECL_RTL (decl));
- /* Trust user variables which have a pointer type to really
- be pointers. Do not trust compiler generated temporaries
- as our type system is totally busted as it relates to
- pointer arithmetic which translates into lots of compiler
- generated objects with pointer types, but which are not really
- pointers. */
- if (POINTER_TYPE_P (type))
- mark_reg_pointer (DECL_RTL (decl),
- TYPE_ALIGN (TREE_TYPE (TREE_TYPE (decl))));
- }
+ if (POINTER_TYPE_P (type))
+ mark_reg_pointer (DECL_RTL (decl),
+ TYPE_ALIGN (TREE_TYPE (TREE_TYPE (decl))));
}
else if (TREE_CODE (DECL_SIZE_UNIT (decl)) == INTEGER_CST