gcc/gcc ChangeLog.tree-ssa c-common.c c-common ...
rth@gcc.gnu.org
rth@gcc.gnu.org
Mon Dec 8 10:03:00 GMT 2003
CVSROOT: /cvs/gcc
Module name: gcc
Branch: tree-ssa-20020619-branch
Changes by: rth@gcc.gnu.org 2003-12-08 10:03:40
Modified files:
gcc : ChangeLog.tree-ssa c-common.c c-common.h
c-typeck.c expr.c gimplify.c tree-simple.c
tree-ssa-ccp.c varasm.c
Log message:
* c-common.c (c_address_looks_like_offsetof): New.
* c-common.h (c_address_looks_like_offsetof): Declare.
* c-typeck.c (build_unary_op) <ADDR_EXPR>: Use it. Don't lower
address references not destined for offsetof.
(c_expand_return): Only look inside ARRAY_REF and COMPONENT_REF
when looking for returning address of local variable.
* expr.c (expand_expr_1): Don't dereference size of unbounded arrays.
* gimplify.c (gimplify_addr_expr): Only fold address of variable size
array elements.
* tree-simple.c (is_gimple_min_invariant): Also check
is_gimple_variable before disallowing offset address for type.
* tree-ssa-ccp.c (maybe_fold_offset_to_aggregate_ref): New.
(maybe_fold_offset_to_component_ref): Use it.
(maybe_fold_stmt_indirect, maybe_fold_stmt_plus): Likewise.
(maybe_fold_offset_to_array_ref): Likewise. Don't fail for division
remainder non-zero.
* varasm.c (initializer_constant_valid_p) <ADDR_EXPR>: Use
handled_component_p and look inside references.
<MINUS_EXPR>: Always look past widening casts.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.tree-ssa.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.2.978&r2=1.1.2.979
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-common.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.344.2.53&r2=1.344.2.54
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-common.h.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.141.2.39&r2=1.141.2.40
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-typeck.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.196.2.33&r2=1.196.2.34
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/expr.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.467.2.67&r2=1.467.2.68
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/gimplify.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.2.125&r2=1.1.2.126
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-simple.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.4.63&r2=1.1.4.64
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa-ccp.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.1.2.121&r2=1.1.2.122
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/varasm.c.diff?cvsroot=gcc&only_with_tag=tree-ssa-20020619-branch&r1=1.295.2.38&r2=1.295.2.39
More information about the Gcc-cvs
mailing list