This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [tree-ssa] New g++/libstdc++ regressions with checkingdisabled.


On Tue, 2003-12-09 at 17:16, Jan Hubicka wrote:
> > 
> > Incidentally, please do not commit any patches that do not fix these
> > regressions.
> 
> I've been looking into it with Jason and it seems to be that culprint is
> misscopmilation in cp/class.o (at least replacing it by unoptimized
> version makes the bug to go away).
> The symptom is that method table contains bogus duplicated overload
> entries, so it seems to be somewhere in add_method.
> 
Thanks.

I have reverted the patch that introduced these regressions.  The branch
is open again.


Diego.


        * 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.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]