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]
Other format: [Raw text]

Re: patch: move2add_note_store: handle subregs


> as they have a scalar integer mode.  I.e. the new test should be:
> 
>           && SCALAR_INT_MODE_P (GET_MODE (dst))

Ah, ok.  The patch below fixes the problem, and has been tested on
powerpc-linux.

OK for mainline?

	* postreload.c (move2add_note_store): Only call
	trunc_int_for_mode on scalar integers.

Index: postreload.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/postreload.c,v
retrieving revision 2.25
diff -c -p -r2.25 postreload.c
*** postreload.c	5 Jan 2005 23:19:20 -0000	2.25
--- postreload.c	14 Jan 2005 18:04:16 -0000
*************** move2add_note_store (rtx dst, rtx set, v
*** 1457,1463 ****
  
    regno += REGNO (dst);
  
!   if (SCALAR_INT_MODE_P (mode)
        && hard_regno_nregs[regno][mode] == 1 && GET_CODE (set) == SET
        && GET_CODE (SET_DEST (set)) != ZERO_EXTRACT
        && GET_CODE (SET_DEST (set)) != STRICT_LOW_PART)
--- 1457,1463 ----
  
    regno += REGNO (dst);
  
!   if (SCALAR_INT_MODE_P (GET_MODE (dst))
        && hard_regno_nregs[regno][mode] == 1 && GET_CODE (set) == SET
        && GET_CODE (SET_DEST (set)) != ZERO_EXTRACT
        && GET_CODE (SET_DEST (set)) != STRICT_LOW_PART)


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