public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/47246] New: [4.6 Regression] Invalid immediate offset for Thumb VFP store
@ 2011-01-10 16:17 ibolton at gcc dot gnu.org
  2011-01-10 16:33 ` [Bug rtl-optimization/47246] " ibolton at gcc dot gnu.org
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: ibolton at gcc dot gnu.org @ 2011-01-10 16:17 UTC (permalink / raw)
  To: gcc-bugs

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

           Summary: [4.6 Regression] Invalid immediate offset for Thumb
                    VFP store
           Product: gcc
           Version: 4.6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: rtl-optimization
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: ibolton@gcc.gnu.org
              Host: arm-linux-gnueabi
            Target: arm-linux-gnueabi
             Build: arm-linux-gnueabi


Created attachment 22939
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=22939
This is the preprocessed source that shows the issue

The following patch, which went into trunk as revision 168045, has made it
possible for gcc to generate invalid offsets for some VFP stores:

  http://gcc.gnu.org/ml/gcc-patches/2010-12/msg01349.html

The range -1024 to +1024 is ok for 's' co-processor registers, but not for
generic 'r' registers.

The attached preprocessed source can be made to show the issue by compiling as
follows:

  gcc -O3 -mthumb mcpu=cortex-a9 -mfloat-abi=softfp -mfpu=vfpv3-d16 besttry.i
--save-temps

The error caused is this:

  /tmp/ccxviNhV.s: Assembler messages:
  /tmp/ccxviNhV.s:37: Error: offset out of range

I have attached the produced besttry.s.

In the short-term, I suggest that we limit the negative offset, to be able to
cover the case where VFP store ends up using general registers.  I do not know
how we could allow a larger negative offset for the 's' registers, when it is
not known until later what type of register will get allocated.


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

* [Bug rtl-optimization/47246] [4.6 Regression] Invalid immediate offset for Thumb VFP store
  2011-01-10 16:17 [Bug rtl-optimization/47246] New: [4.6 Regression] Invalid immediate offset for Thumb VFP store ibolton at gcc dot gnu.org
@ 2011-01-10 16:33 ` ibolton at gcc dot gnu.org
  2011-01-11 12:49 ` rguenth at gcc dot gnu.org
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: ibolton at gcc dot gnu.org @ 2011-01-10 16:33 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #1 from Ian Bolton <ibolton at gcc dot gnu.org> 2011-01-10 16:17:37 UTC ---
Created attachment 22940
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=22940
Demonstrates the problem instruction, on line 37


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

* [Bug rtl-optimization/47246] [4.6 Regression] Invalid immediate offset for Thumb VFP store
  2011-01-10 16:17 [Bug rtl-optimization/47246] New: [4.6 Regression] Invalid immediate offset for Thumb VFP store ibolton at gcc dot gnu.org
  2011-01-10 16:33 ` [Bug rtl-optimization/47246] " ibolton at gcc dot gnu.org
@ 2011-01-11 12:49 ` rguenth at gcc dot gnu.org
  2011-01-12 12:05 ` [Bug target/47246] " ebotcazou at gcc dot gnu.org
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: rguenth at gcc dot gnu.org @ 2011-01-11 12:49 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Guenther <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.6.0


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

* [Bug target/47246] [4.6 Regression] Invalid immediate offset for Thumb VFP store
  2011-01-10 16:17 [Bug rtl-optimization/47246] New: [4.6 Regression] Invalid immediate offset for Thumb VFP store ibolton at gcc dot gnu.org
  2011-01-10 16:33 ` [Bug rtl-optimization/47246] " ibolton at gcc dot gnu.org
  2011-01-11 12:49 ` rguenth at gcc dot gnu.org
@ 2011-01-12 12:05 ` ebotcazou at gcc dot gnu.org
  2011-01-14 18:23 ` rearnsha at gcc dot gnu.org
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2011-01-12 12:05 UTC (permalink / raw)
  To: gcc-bugs

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

Eric Botcazou <ebotcazou at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|rtl-optimization            |target

--- Comment #2 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2011-01-12 11:59:57 UTC ---
More of a target problem I think.


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

* [Bug target/47246] [4.6 Regression] Invalid immediate offset for Thumb VFP store
  2011-01-10 16:17 [Bug rtl-optimization/47246] New: [4.6 Regression] Invalid immediate offset for Thumb VFP store ibolton at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2011-01-12 12:05 ` [Bug target/47246] " ebotcazou at gcc dot gnu.org
@ 2011-01-14 18:23 ` rearnsha at gcc dot gnu.org
  2011-01-15 16:06 ` ramana at gcc dot gnu.org
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: rearnsha at gcc dot gnu.org @ 2011-01-14 18:23 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from Richard Earnshaw <rearnsha at gcc dot gnu.org> 2011-01-14 17:37:14 UTC ---
*** Bug 47245 has been marked as a duplicate of this bug. ***


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

* [Bug target/47246] [4.6 Regression] Invalid immediate offset for Thumb VFP store
  2011-01-10 16:17 [Bug rtl-optimization/47246] New: [4.6 Regression] Invalid immediate offset for Thumb VFP store ibolton at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2011-01-14 18:23 ` rearnsha at gcc dot gnu.org
@ 2011-01-15 16:06 ` ramana at gcc dot gnu.org
  2011-01-27 16:52 ` [Bug target/47246] [4.6 Regression] Invalid immediate offset for Thumb VFP store regression jakub at gcc dot gnu.org
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: ramana at gcc dot gnu.org @ 2011-01-15 16:06 UTC (permalink / raw)
  To: gcc-bugs

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

Ramana Radhakrishnan <ramana at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2011.01.15 15:50:48
                 CC|                            |ramana at gcc dot gnu.org
     Ever Confirmed|0                           |1

--- Comment #4 from Ramana Radhakrishnan <ramana at gcc dot gnu.org> 2011-01-15 15:50:48 UTC ---
Confirmed : For the record the command line options are :

-mcpu=cortex-a9 -mfpu=vfpv3-d16 -mfloat-abi=softfp -O3 -mthumb


cheers
Ramana


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

* [Bug target/47246] [4.6 Regression] Invalid immediate offset for Thumb VFP store regression
  2011-01-10 16:17 [Bug rtl-optimization/47246] New: [4.6 Regression] Invalid immediate offset for Thumb VFP store ibolton at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2011-01-15 16:06 ` ramana at gcc dot gnu.org
@ 2011-01-27 16:52 ` jakub at gcc dot gnu.org
  2011-01-27 17:05 ` ibolton at gcc dot gnu.org
  2011-02-02 17:59 ` dnovillo at gcc dot gnu.org
  7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu.org @ 2011-01-27 16:52 UTC (permalink / raw)
  To: gcc-bugs

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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |jakub at gcc dot gnu.org
         Resolution|                            |FIXED

--- Comment #5 from Chung-Lin Tang <cltang at gcc dot gnu.org> 2011-01-26 03:01:49 UTC ---
Author: cltang
Date: Wed Jan 26 03:01:44 2011
New Revision: 169271

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169271
Log:
2011-01-26  Chung-Lin Tang  <cltang@codesourcery.com>

    PR target/47246
    * config/arm/arm.c (thumb2_legitimate_index_p): Change the
    lower bound of the allowed Thumb-2 coprocessor load/store
    index range to -256. Add explaining comment.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/arm/arm.c

--- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-01-27 16:39:41 UTC ---
Assuming this is fixed now.


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

* [Bug target/47246] [4.6 Regression] Invalid immediate offset for Thumb VFP store regression
  2011-01-10 16:17 [Bug rtl-optimization/47246] New: [4.6 Regression] Invalid immediate offset for Thumb VFP store ibolton at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2011-01-27 16:52 ` [Bug target/47246] [4.6 Regression] Invalid immediate offset for Thumb VFP store regression jakub at gcc dot gnu.org
@ 2011-01-27 17:05 ` ibolton at gcc dot gnu.org
  2011-02-02 17:59 ` dnovillo at gcc dot gnu.org
  7 siblings, 0 replies; 9+ messages in thread
From: ibolton at gcc dot gnu.org @ 2011-01-27 17:05 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #7 from Ian Bolton <ibolton at gcc dot gnu.org> 2011-01-27 16:51:41 UTC ---
(In reply to comment #6)
> Assuming this is fixed now.

Yes, I can use trunk to run the whole of Spec2K for -O3 -mthumb without errors.


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

* [Bug target/47246] [4.6 Regression] Invalid immediate offset for Thumb VFP store regression
  2011-01-10 16:17 [Bug rtl-optimization/47246] New: [4.6 Regression] Invalid immediate offset for Thumb VFP store ibolton at gcc dot gnu.org
                   ` (6 preceding siblings ...)
  2011-01-27 17:05 ` ibolton at gcc dot gnu.org
@ 2011-02-02 17:59 ` dnovillo at gcc dot gnu.org
  7 siblings, 0 replies; 9+ messages in thread
From: dnovillo at gcc dot gnu.org @ 2011-02-02 17:59 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #8 from Diego Novillo <dnovillo at gcc dot gnu.org> 2011-02-02 17:51:01 UTC ---
Author: dnovillo
Date: Wed Feb  2 17:50:47 2011
New Revision: 169605

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=169605
Log:
2011-01-26  Chung-Lin Tang  <cltang@codesourcery.com>

    PR target/47246
    * config/arm/arm.c (thumb2_legitimate_index_p): Change the
    lower bound of the allowed Thumb-2 coprocessor load/store
    index range to -256. Add explaining comment.

Modified:
    branches/google/integration/gcc/ChangeLog
    branches/google/integration/gcc/config/arm/arm.c


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

end of thread, other threads:[~2011-02-02 17:59 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-01-10 16:17 [Bug rtl-optimization/47246] New: [4.6 Regression] Invalid immediate offset for Thumb VFP store ibolton at gcc dot gnu.org
2011-01-10 16:33 ` [Bug rtl-optimization/47246] " ibolton at gcc dot gnu.org
2011-01-11 12:49 ` rguenth at gcc dot gnu.org
2011-01-12 12:05 ` [Bug target/47246] " ebotcazou at gcc dot gnu.org
2011-01-14 18:23 ` rearnsha at gcc dot gnu.org
2011-01-15 16:06 ` ramana at gcc dot gnu.org
2011-01-27 16:52 ` [Bug target/47246] [4.6 Regression] Invalid immediate offset for Thumb VFP store regression jakub at gcc dot gnu.org
2011-01-27 17:05 ` ibolton at gcc dot gnu.org
2011-02-02 17:59 ` dnovillo at gcc dot gnu.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).