http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44194



--- Comment #50 from eraman at gcc dot gnu.org 2012-11-02 00:28:45 UTC ---

Author: eraman

Date: Fri Nov  2 00:28:40 2012

New Revision: 193085



URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=193085

Log:

    Backport 191302 and 192651 from trunk:



    2012-09-14  Eric Botcazou  <ebotca...@adacore.com>



        PR rtl-optimization/44194

        * calls.c (expand_call): In the PARALLEL case, copy the return value

        into pseudos instead of spilling it onto the stack.

        * emit-rtl.c (adjust_address_1): Rename ADJUST into ADJUST_ADDRESS and

        add new ADJUST_OBJECT parameter.

        If ADJUST_OBJECT is set, drop the underlying object if it cannot be

        proved that the adjusted memory access is still within its bounds.

        (adjust_automodify_address_1): Adjust call to adjust_address_1.

        (widen_memory_access): Likewise.

        * expmed.c (store_bit_field_1): Call adjust_bitfield_address instead

        of adjust_address.  Do not drop the underlying object of a MEM.

        (store_fixed_bit_field): Likewise.

        (extract_bit_field_1): Likewise.  Fix oversight in recursion.

        (extract_fixed_bit_field): Likewise.

        * expr.h (adjust_address_1): Adjust prototype.

        (adjust_address): Adjust call to adjust_address_1.

        (adjust_address_nv): Likewise.

        (adjust_bitfield_address): New macro.

        (adjust_bitfield_address_nv): Likewise.

        * expr.c (expand_assignment): Handle a PARALLEL in more cases.

        (store_expr): Likewise.

        (store_field): Likewise.



        * dse.c: Fix typos in the head comment.

    2012-10-21  Eric Botcazou  <ebotca...@adacore.com>



        PR rtl-optimization/44194

        * calls.c (expand_call): Allow sibling calls in the PARALLEL case.



gcc/testsuite/ChangeLog:

    2012-09-14  Eric Botcazou  <ebotca...@adacore.com>

        * gcc.dg/pr44194-1.c: Check that there are no memory accesses left.





Modified:

    branches/google/gcc-4_7/gcc/ChangeLog.google-4_7

    branches/google/gcc-4_7/gcc/calls.c

    branches/google/gcc-4_7/gcc/dse.c

    branches/google/gcc-4_7/gcc/emit-rtl.c

    branches/google/gcc-4_7/gcc/expmed.c

    branches/google/gcc-4_7/gcc/expr.c

    branches/google/gcc-4_7/gcc/expr.h

    branches/google/gcc-4_7/gcc/testsuite/ChangeLog.google-4_7

    branches/google/gcc-4_7/gcc/testsuite/gcc.dg/pr44194-1.c

Reply via email to