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] Fix gcc.c-torture/execute/20000706-3.c for the v850


:  >         if (TARGET_PROLOG_FUNCTION
:  > !         && (i == 2 || i >= 20 && (i < 30)))
: Where you trying to write
: A || (B && C)
: 
: or 
: 
: (A || B) && C
: 
: It seems to me this should be
: 
:   && (i == 2 || i >= 20)
:   && i < 30
: 
: Or am I mistaken?

 Jeff,

 Thanks for the close read.
 This was an editting error with a patch that didn't apply cleanly.

 This is the new (and I believe correct patch).

 Catherine

Index: v850.c
===================================================================
RCS file: /cvs/cvsfiles/devo/gcc/config/v850/v850.c,v
retrieving revision 1.136
diff -p -r1.136 v850.c
*** v850.c      2002/04/21 19:06:49     1.136
--- v850.c      2002/05/03 23:31:01
*************** compute_register_save_size (p_reg_saved)
*** 1560,1573 ****
         need to cover the possibility that such a helper function will
         be used, despite the fact that there might be gaps in the list of
         registers that need to be saved.  To detect this we note that the
!        helper functions always push at least register r29 if the link
!        register is not used, and at least registers r27 - r31 if the
!        link register is used (and provided that the function is not an
!        interrupt handler).  */
         
        if (TARGET_PROLOG_FUNCTION
!         && (i == 2 || i >= 20)
!         && regs_ever_live[LINK_POINTER_REGNUM] ? (i < 28) : (i < 30))
        {
          if (i == 2)
            {
--- 1560,1570 ----
         need to cover the possibility that such a helper function will
         be used, despite the fact that there might be gaps in the list of
         registers that need to be saved.  To detect this we note that the
!        helper functions always push at least register r29 (and provided
!        that the function is not an interrupt handler).  */
         
        if (TARGET_PROLOG_FUNCTION
!           && (i == 2 || ((i >= 20) && (i < 30))))
        {
          if (i == 2)
            {


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