public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/64224] New: [ARM] -mapcs -marm uses deprecated forms (as of ARMv7-A) of LDM in epilogues
@ 2014-12-08 14:43 ktkachov at gcc dot gnu.org
  2014-12-08 14:44 ` [Bug target/64224] " ktkachov at gcc dot gnu.org
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: ktkachov at gcc dot gnu.org @ 2014-12-08 14:43 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64224

            Bug ID: 64224
           Summary: [ARM] -mapcs -marm uses deprecated forms (as of
                    ARMv7-A) of LDM in epilogues
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: ktkachov at gcc dot gnu.org
          Reporter: ktkachov at gcc dot gnu.org
            Target: arm*

The ARMv7-A specification says on the load-multiple (LDM) instruction:
"The SP can be in the list. However, ARM deprecates using these instructions
with SP in the list."

and

"ARM deprecates using these instructions with both the LR and the PC in the
list."

However GCC generates both forms in function epilogues when compiling with
-mapcs. gas doesn't have a warning for these (I'm working on a patch to add
those to gas) which is probably why this hasn't been noticed yet.

We should fix GCC so that it doesn't generate deprecated sequences for ARMv7-A
and later.


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

* [Bug target/64224] [ARM] -mapcs -marm uses deprecated forms (as of ARMv7-A) of LDM in epilogues
  2014-12-08 14:43 [Bug target/64224] New: [ARM] -mapcs -marm uses deprecated forms (as of ARMv7-A) of LDM in epilogues ktkachov at gcc dot gnu.org
@ 2014-12-08 14:44 ` ktkachov at gcc dot gnu.org
  2014-12-09  0:08 ` rearnsha at gcc dot gnu.org
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: ktkachov at gcc dot gnu.org @ 2014-12-08 14:44 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64224

ktkachov at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2014-12-08
     Ever confirmed|0                           |1

--- Comment #1 from ktkachov at gcc dot gnu.org ---
I'm working on it.


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

* [Bug target/64224] [ARM] -mapcs -marm uses deprecated forms (as of ARMv7-A) of LDM in epilogues
  2014-12-08 14:43 [Bug target/64224] New: [ARM] -mapcs -marm uses deprecated forms (as of ARMv7-A) of LDM in epilogues ktkachov at gcc dot gnu.org
  2014-12-08 14:44 ` [Bug target/64224] " ktkachov at gcc dot gnu.org
@ 2014-12-09  0:08 ` rearnsha at gcc dot gnu.org
  2014-12-09  8:08 ` ktkachov at gcc dot gnu.org
  2015-02-12 15:42 ` mshawcroft at gcc dot gnu.org
  3 siblings, 0 replies; 5+ messages in thread
From: rearnsha at gcc dot gnu.org @ 2014-12-09  0:08 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64224

--- Comment #2 from Richard Earnshaw <rearnsha at gcc dot gnu.org> ---
Might be better to just deprecate -mapcs; it's a feature of the old ABI anyway,
so there's not much point in trying to make it fully conform to the latest
specs.


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

* [Bug target/64224] [ARM] -mapcs -marm uses deprecated forms (as of ARMv7-A) of LDM in epilogues
  2014-12-08 14:43 [Bug target/64224] New: [ARM] -mapcs -marm uses deprecated forms (as of ARMv7-A) of LDM in epilogues ktkachov at gcc dot gnu.org
  2014-12-08 14:44 ` [Bug target/64224] " ktkachov at gcc dot gnu.org
  2014-12-09  0:08 ` rearnsha at gcc dot gnu.org
@ 2014-12-09  8:08 ` ktkachov at gcc dot gnu.org
  2015-02-12 15:42 ` mshawcroft at gcc dot gnu.org
  3 siblings, 0 replies; 5+ messages in thread
From: ktkachov at gcc dot gnu.org @ 2014-12-09  8:08 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64224

--- Comment #3 from ktkachov at gcc dot gnu.org ---
(In reply to Richard Earnshaw from comment #2)
> Might be better to just deprecate -mapcs; it's a feature of the old ABI
> anyway, so there's not much point in trying to make it fully conform to the
> latest specs.

-mapcs is used in the Linux kernel though.


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

* [Bug target/64224] [ARM] -mapcs -marm uses deprecated forms (as of ARMv7-A) of LDM in epilogues
  2014-12-08 14:43 [Bug target/64224] New: [ARM] -mapcs -marm uses deprecated forms (as of ARMv7-A) of LDM in epilogues ktkachov at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2014-12-09  8:08 ` ktkachov at gcc dot gnu.org
@ 2015-02-12 15:42 ` mshawcroft at gcc dot gnu.org
  3 siblings, 0 replies; 5+ messages in thread
From: mshawcroft at gcc dot gnu.org @ 2015-02-12 15:42 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64224

mshawcroft at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
                 CC|                            |mshawcroft at gcc dot gnu.org
         Resolution|---                         |WONTFIX

--- Comment #4 from mshawcroft at gcc dot gnu.org ---
-mapcs is now deprecated in gcc5


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

end of thread, other threads:[~2015-02-12 15:42 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-12-08 14:43 [Bug target/64224] New: [ARM] -mapcs -marm uses deprecated forms (as of ARMv7-A) of LDM in epilogues ktkachov at gcc dot gnu.org
2014-12-08 14:44 ` [Bug target/64224] " ktkachov at gcc dot gnu.org
2014-12-09  0:08 ` rearnsha at gcc dot gnu.org
2014-12-09  8:08 ` ktkachov at gcc dot gnu.org
2015-02-12 15:42 ` mshawcroft 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).