public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/40277]  New: Spill failures for VFP_REGS with scalar-return_5.c in the testsuite.
@ 2009-05-27 23:18 ramana at gcc dot gnu dot org
  2009-05-27 23:19 ` [Bug target/40277] " ramana at gcc dot gnu dot org
  2009-06-03 18:15 ` pinskia at gcc dot gnu dot org
  0 siblings, 2 replies; 3+ messages in thread
From: ramana at gcc dot gnu dot org @ 2009-05-27 23:18 UTC (permalink / raw)
  To: gcc-bugs

A number of tests in today's trunk fail with -mcpu=cortex-a8 -mfloat-abi=softfp
-mfpu=neon with spill failures for the following form of instructions. 

/home/ramana/cos/combined-git-master-cloned/gcc/testsuite/gcc.c-torture/compile/20000804-1.c:20:
error: this is the insn:

(insn 53 29 30 2
/home/ramana/cos/combined-git-master-cloned/gcc/testsuite/gcc.c-torture/compile/20000804-1.c:16
(set (subreg:TI (reg:CDI 2 r2 [151]) 0)

        (subreg:TI (reg:CDI 2 r2 [154]) 0)) 715 {*neon_movti}
(expr_list:REG_DEAD (reg:CDI 2 r2 [154])

        (nil)))


/home/ramana/cos/combined-git-master-cloned/gcc/testsuite/gcc.dg/compat//scalar-return-3_x.c:
In function 'checkcll':

/home/ramana/cos/combined-git-master-cloned/gcc/testsuite/gcc.dg/compat//scalar-return-3_x.c:90:
error: unable to find a register to spill in class 'VFP_REGS'

/home/ramana/cos/combined-git-master-cloned/gcc/testsuite/gcc.dg/compat//scalar-return-3_x.c:90:
error: this is the insn:

(insn 4 3 5 2
/home/ramana/cos/combined-git-master-cloned/gcc/testsuite/gcc.dg/compat//scalar-return-3_x.c:90
(set (mem/s/c:TI (reg/f:SI 12 ip [141]) [0 x+0 S16 A64])

        (subreg:TI (reg:CDI 0 r0 [ x ]) 0)) 718 {*neon_movti}
(expr_list:REG_DEAD (reg/f:SI 12 ip [141])

        (nil)))



This occurs today on arm-none-eabi cross with r147930 and a related fix might
be http://gcc.gnu.org/ml/gcc-patches/2008-07/msg00703.html for one of the test
failures (20000804-1.c) . 

I am testing the following patch based on Paul Brook's comments later in that
thread which might fix the problem
(http://gcc.gnu.org/ml/gcc-patches/2008-07/msg01618.html)

--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -14746,7 +14746,7 @@ arm_hard_regno_mode_ok (unsigned int regno, enum
machine_mode mode)
      they would use too many.  */
   if (regno <= LAST_ARM_REGNUM)
     return !(TARGET_LDRD && GET_MODE_SIZE (mode) > 4 && (regno & 1) != 0)
-      && !VALID_NEON_STRUCT_MODE (mode);
+      && (ARM_NUM_REGS (mode) <= 4);

   if (regno == FRAME_POINTER_REGNUM
       || regno == ARG_POINTER_REGNUM)


-- 
           Summary: Spill failures for VFP_REGS with scalar-return_5.c in
                    the testsuite.
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: ramana at gcc dot gnu dot org
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: arm-none-eabi


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


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug target/40277] Spill failures for VFP_REGS with scalar-return_5.c in the testsuite.
  2009-05-27 23:18 [Bug target/40277] New: Spill failures for VFP_REGS with scalar-return_5.c in the testsuite ramana at gcc dot gnu dot org
@ 2009-05-27 23:19 ` ramana at gcc dot gnu dot org
  2009-06-03 18:15 ` pinskia at gcc dot gnu dot org
  1 sibling, 0 replies; 3+ messages in thread
From: ramana at gcc dot gnu dot org @ 2009-05-27 23:19 UTC (permalink / raw)
  To: gcc-bugs



-- 

ramana at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2009-05-27 23:19:14
               date|                            |


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


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Bug target/40277] Spill failures for VFP_REGS with scalar-return_5.c in the testsuite.
  2009-05-27 23:18 [Bug target/40277] New: Spill failures for VFP_REGS with scalar-return_5.c in the testsuite ramana at gcc dot gnu dot org
  2009-05-27 23:19 ` [Bug target/40277] " ramana at gcc dot gnu dot org
@ 2009-06-03 18:15 ` pinskia at gcc dot gnu dot org
  1 sibling, 0 replies; 3+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2009-06-03 18:15 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from pinskia at gcc dot gnu dot org  2009-06-03 18:15 -------
Fixed by:
2009-06-03  Julian Brown  <julian@codesourcery.com>

        * config/arm/arm.c (arm_hard_regno_mode_ok): Permit values of four
        words or less (including TImode) in core registers.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|---                         |4.5.0


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


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2009-06-03 18:15 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-05-27 23:18 [Bug target/40277] New: Spill failures for VFP_REGS with scalar-return_5.c in the testsuite ramana at gcc dot gnu dot org
2009-05-27 23:19 ` [Bug target/40277] " ramana at gcc dot gnu dot org
2009-06-03 18:15 ` pinskia at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).