diff options
author | kenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-05-03 13:20:48 +0000 |
---|---|---|
committer | kenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-05-03 13:20:48 +0000 |
commit | 0ed529571960e09e8eaee0573fe25749dfd5aaac (patch) | |
tree | 879c3daef7db43b2e7148d743dbf149b4b800c6b | |
parent | 01bfa89eea4c8dd9db5e600d0c849c6700051172 (diff) | |
download | gcc-0ed529571960e09e8eaee0573fe25749dfd5aaac.tar.gz |
* expr.c (expand_expr, case COMPONENT_REF): Don't check for checking
memory usage if not in a function.
* varasm.c (initializer_constant_valid_p, case ADDR_EXPR): Only
return address if static.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@33629 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/expr.c | 3 | ||||
-rw-r--r-- | gcc/varasm.c | 2 |
3 files changed, 10 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a7ec6b80a2e..67994290774 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +Wed May 3 09:29:17 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> + + * expr.c (expand_expr, case COMPONENT_REF): Don't check for checking + memory usage if not in a function. + * varasm.c (initializer_constant_valid_p, case ADDR_EXPR): Only + return address if static. + Wed May 3 13:14:49 MET DST 2000 Jan Hubicka <jh@suse.cz> * ifcvt.c (noce_try_cmove_arith): Use may_trap_p to thest diff --git a/gcc/expr.c b/gcc/expr.c index bc1bbf4bfdd..ce4ecc7eaa9 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -6734,7 +6734,8 @@ expand_expr (exp, target, tmode, modifier) } /* Check the access. */ - if (current_function_check_memory_usage && GET_CODE (op0) == MEM) + if (cfun != 0 && current_function_check_memory_usage + && GET_CODE (op0) == MEM) { enum memory_use_mode memory_usage; memory_usage = get_memory_usage_from_modifier (modifier); diff --git a/gcc/varasm.c b/gcc/varasm.c index 0c682206aa6..898b17b6a99 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -4068,7 +4068,7 @@ initializer_constant_valid_p (value, endtype) return null_pointer_node; case ADDR_EXPR: - return TREE_OPERAND (value, 0); + return staticp (TREE_OPERAND (value, 0) ? TREE_OPERAND (value, 0) : 0); case NON_LVALUE_EXPR: return initializer_constant_valid_p (TREE_OPERAND (value, 0), endtype); |