public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug libgcc/60464] [arm] ARM -mthumb version of libgcc contains ARM (non-thumb) code; not safe for thumb-only architectures
       [not found] <bug-60464-4@http.gcc.gnu.org/bugzilla/>
@ 2014-03-08  2:28 ` jeremygccb at baymoo dot org
  2014-03-08  3:21 ` pinskia at gcc dot gnu.org
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 8+ messages in thread
From: jeremygccb at baymoo dot org @ 2014-03-08  2:28 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #1 from Jeremy Cooper <jeremygccb at baymoo dot org> ---
Seeing as this could be an assembler bug, my arm-none-eabi-as is:

$ arm-none-eabi-as -v
GNU assembler version 2.23.2 (arm-none-eabi) using BFD version (GNU Binutils)
2.23.2


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

* [Bug libgcc/60464] [arm] ARM -mthumb version of libgcc contains ARM (non-thumb) code; not safe for thumb-only architectures
       [not found] <bug-60464-4@http.gcc.gnu.org/bugzilla/>
  2014-03-08  2:28 ` [Bug libgcc/60464] [arm] ARM -mthumb version of libgcc contains ARM (non-thumb) code; not safe for thumb-only architectures jeremygccb at baymoo dot org
@ 2014-03-08  3:21 ` pinskia at gcc dot gnu.org
  2014-03-08  5:42 ` jeremygccb at baymoo dot org
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 8+ messages in thread
From: pinskia at gcc dot gnu.org @ 2014-03-08  3:21 UTC (permalink / raw)
  To: gcc-bugs

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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |INVALID
           Severity|critical                    |normal

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
>Configuring and building gcc 4.8.2 for the target 'arm-none-eabi' results in a thumb version of libgcc.a that is not entirely suitable for thumb-only processors

That is correct.  The default is to configure arm target to be armv5 processor.
 You need to configure for building for armv6m or an armv7m (or even armv7-a)
if you want to use -mthumb for a thumb (or thumb2 only) processor.


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

* [Bug libgcc/60464] [arm] ARM -mthumb version of libgcc contains ARM (non-thumb) code; not safe for thumb-only architectures
       [not found] <bug-60464-4@http.gcc.gnu.org/bugzilla/>
  2014-03-08  2:28 ` [Bug libgcc/60464] [arm] ARM -mthumb version of libgcc contains ARM (non-thumb) code; not safe for thumb-only architectures jeremygccb at baymoo dot org
  2014-03-08  3:21 ` pinskia at gcc dot gnu.org
@ 2014-03-08  5:42 ` jeremygccb at baymoo dot org
  2014-03-08  5:55 ` pinskia at gcc dot gnu.org
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 8+ messages in thread
From: jeremygccb at baymoo dot org @ 2014-03-08  5:42 UTC (permalink / raw)
  To: gcc-bugs

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

Jeremy Cooper <jeremygccb at baymoo dot org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |UNCONFIRMED
         Resolution|INVALID                     |---

--- Comment #3 from Jeremy Cooper <jeremygccb at baymoo dot org> ---
I have done as you suggested and built gcc for the target "armv7m-none-eabi"
and the "thumb" version of libgcc.a still has functions with ARM code. Shall I
re-open this bug or create a new one?


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

* [Bug libgcc/60464] [arm] ARM -mthumb version of libgcc contains ARM (non-thumb) code; not safe for thumb-only architectures
       [not found] <bug-60464-4@http.gcc.gnu.org/bugzilla/>
                   ` (2 preceding siblings ...)
  2014-03-08  5:42 ` jeremygccb at baymoo dot org
@ 2014-03-08  5:55 ` pinskia at gcc dot gnu.org
  2014-03-08  5:56 ` pinskia at gcc dot gnu.org
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 8+ messages in thread
From: pinskia at gcc dot gnu.org @ 2014-03-08  5:55 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Can you configure with --with-arch=armv7-m and try again?  You might need to
edit config/arm/t-arm-elf to enable only the multi-lib that you need.

>armv7m-none-eabi

Does nothing really to change the default target.


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

* [Bug libgcc/60464] [arm] ARM -mthumb version of libgcc contains ARM (non-thumb) code; not safe for thumb-only architectures
       [not found] <bug-60464-4@http.gcc.gnu.org/bugzilla/>
                   ` (3 preceding siblings ...)
  2014-03-08  5:55 ` pinskia at gcc dot gnu.org
@ 2014-03-08  5:56 ` pinskia at gcc dot gnu.org
  2014-03-08  7:37 ` jeremygccb at baymoo dot org
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 8+ messages in thread
From: pinskia at gcc dot gnu.org @ 2014-03-08  5:56 UTC (permalink / raw)
  To: gcc-bugs

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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |INVALID

--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Invalid as explained before.  arm*-eabi says it is for armv5 rather than armv6
with thumb and thumb2.


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

* [Bug libgcc/60464] [arm] ARM -mthumb version of libgcc contains ARM (non-thumb) code; not safe for thumb-only architectures
       [not found] <bug-60464-4@http.gcc.gnu.org/bugzilla/>
                   ` (4 preceding siblings ...)
  2014-03-08  5:56 ` pinskia at gcc dot gnu.org
@ 2014-03-08  7:37 ` jeremygccb at baymoo dot org
  2014-03-08  8:33 ` jeremygccb at baymoo dot org
  2014-03-10 15:12 ` rearnsha at gcc dot gnu.org
  7 siblings, 0 replies; 8+ messages in thread
From: jeremygccb at baymoo dot org @ 2014-03-08  7:37 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from Jeremy Cooper <jeremygccb at baymoo dot org> ---
(In reply to Andrew Pinski from comment #4)
> Can you configure with --with-arch=armv7-m and try again?  You might need to
> edit config/arm/t-arm-elf to enable only the multi-lib that you need.

I am sorry if I appear dense, but which multi-lib would I need? Recall that I'm
trying to target a cortex-m3, so what exactly do I need for the multi-lib
options in t-arm-elf? (And once this is done, how can I effect this change with
a configure option, rather than having to edit GCC source?)

MULTILIB_OPTIONS     = ?
MULTILIB_DIRNAMES    = ?
MULTILIB_EXCEPTIONS  = ?
MULTILIB_MATCHES     = ?


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

* [Bug libgcc/60464] [arm] ARM -mthumb version of libgcc contains ARM (non-thumb) code; not safe for thumb-only architectures
       [not found] <bug-60464-4@http.gcc.gnu.org/bugzilla/>
                   ` (5 preceding siblings ...)
  2014-03-08  7:37 ` jeremygccb at baymoo dot org
@ 2014-03-08  8:33 ` jeremygccb at baymoo dot org
  2014-03-10 15:12 ` rearnsha at gcc dot gnu.org
  7 siblings, 0 replies; 8+ messages in thread
From: jeremygccb at baymoo dot org @ 2014-03-08  8:33 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #7 from Jeremy Cooper <jeremygccb at baymoo dot org> ---
I have managed to resolve the problem by doing two things. However, one of them
is still distasteful (editing the GCC 4.8.2 source).

1. Edited gcc/config/arm/t-arm-elf, uncommenting the following lines:

MULTILIB_OPTIONS      += march=armv7
MULTILIB_DIRNAMES     += thumb2
MULTILIB_EXCEPTIONS   += march=armv7* marm/*march=armv7*
MULTILIB_MATCHES      += march?armv7=march?armv7-a
MULTILIB_MATCHES      += march?armv7=march?armv7-r
MULTILIB_MATCHES      += march?armv7=march?armv7-m
MULTILIB_MATCHES      += march?armv7=mcpu?cortex-a8
MULTILIB_MATCHES      += march?armv7=mcpu?cortex-r4
MULTILIB_MATCHES      += march?armv7=mcpu?cortex-m3

2. configure --target=arm-none-eabi --enable-languages=c --disable-libssp
--disable-libstdcxx

Is there a reason these were commented out? Is the armv7 multilib unstable?


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

* [Bug libgcc/60464] [arm] ARM -mthumb version of libgcc contains ARM (non-thumb) code; not safe for thumb-only architectures
       [not found] <bug-60464-4@http.gcc.gnu.org/bugzilla/>
                   ` (6 preceding siblings ...)
  2014-03-08  8:33 ` jeremygccb at baymoo dot org
@ 2014-03-10 15:12 ` rearnsha at gcc dot gnu.org
  7 siblings, 0 replies; 8+ messages in thread
From: rearnsha at gcc dot gnu.org @ 2014-03-10 15:12 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #8 from Richard Earnshaw <rearnsha at gcc dot gnu.org> ---
(In reply to Jeremy Cooper from comment #7)

> Is there a reason these were commented out? Is the armv7 multilib unstable?

Volume of variants that have to be compiled at build time.  Each enabled entry
practically doubles the build time for the libraries.


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

end of thread, other threads:[~2014-03-10 15:12 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-60464-4@http.gcc.gnu.org/bugzilla/>
2014-03-08  2:28 ` [Bug libgcc/60464] [arm] ARM -mthumb version of libgcc contains ARM (non-thumb) code; not safe for thumb-only architectures jeremygccb at baymoo dot org
2014-03-08  3:21 ` pinskia at gcc dot gnu.org
2014-03-08  5:42 ` jeremygccb at baymoo dot org
2014-03-08  5:55 ` pinskia at gcc dot gnu.org
2014-03-08  5:56 ` pinskia at gcc dot gnu.org
2014-03-08  7:37 ` jeremygccb at baymoo dot org
2014-03-08  8:33 ` jeremygccb at baymoo dot org
2014-03-10 15:12 ` rearnsha 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).