This is the mail archive of the gcc-patches@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]

Re: Fix to bug involving clearing of storage


Am Mon, 20 Dec 1999 schrieb Richard Kenner:
>--- 3656,3670 ----
>     TARGET is either a REG or a MEM.
>     ALIGN is the maximum known alignment for TARGET, in bits.
>!    CLEARED is true if TARGET is known to have been zero'd.
>!    SIZE is the number of bytes of TARGET we are allowed to modify: this
>!    may not be the same as the size of EXP if we are assigning to a field
>!    which has been packed to exclude padding bits.  */
>  
>  static void
>! store_constructor (exp, target, align, cleared, size)
>       tree exp;
>       rtx target;
>       int cleared;
>+      int size;

align was missing before and is still missing with your patch

>*************** store_constructor (exp, target, align, c
>*** 3674,3678 ****
>      {
>        rtx temp = gen_reg_rtx (GET_MODE (target));
>!       store_constructor (exp, temp, 0);
>        emit_move_insn (target, temp);
>        return;
>--- 3678,3682 ----
>      {
>        rtx temp = gen_reg_rtx (GET_MODE (target));
>!       store_constructor (exp, temp, 0, size);

store_constructor now takes 5 args, or?

Franz.


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