From: "Loïc Minier" <loic.minier@linaro.org>
To: u-boot@lists.denx.de
Subject: [U-Boot] [RFC PATCH 1/2] armv7: enable Thumb build for armv7
Date: Mon, 14 Mar 2011 17:11:52 +0100 [thread overview]
Message-ID: <20110314161152.GD18358@bee.dooz.org> (raw)
In-Reply-To: <1300109258-12496-1-git-send-email-aneesh@ti.com>
On Mon, Mar 14, 2011, Aneesh V wrote:
> +- ARM Options:
> + CONFIG_SYS_THUMB_BUILD
> +
> + Use this flag to build U-Boot using the Thumb instruction
> + set for ARM architectures. Thumb instruction set provides
> + better code density. For ARM architectures that support
> + Thumb2 this flag will result in Thumb2 code generated by
> + GCC.
> +
> - Linux Kernel Interface:
> CONFIG_CLOCKS_IN_MHZ
>
The above README changes suggest that "Thumb-1" would also be possible
but you patch an armv7 file:
> --- a/arch/arm/cpu/armv7/config.mk
> +++ b/arch/arm/cpu/armv7/config.mk
so I suspect only armv7 CPUs would be affected? Consider patching
arch/arm/config.mk instead which is where -marm is currently set:
# Explicitly specifiy 32-bit ARM ISA since toolchain default can be -mthumb:
PLATFORM_CPPFLAGS += $(call cc-option,-marm,)
In fact, I would find it less confusing if the flags were -mthumb or
-marm and never -marm -mthumb, so you probably want to patch the code
setting -marm above to be in your "else" clause.
> @@ -31,3 +31,8 @@ PLATFORM_CPPFLAGS += -march=armv5
This suggests that u-boot is actually built in ARMv5 mode, which means
we're missing out actual Thumb-2 instructions (v6+).
Perhaps arch/arm/cpu/armv7/config.mk should also $(call
cc-option,-march=armv7). (I've never used -march=armv7 but it seems to
exist and is probably more correct than -march=armv7-a).
> # =========================================================================
> PLATFORM_RELFLAGS +=$(call cc-option,-mshort-load-bytes,\
> $(call cc-option,-malignment-traps,))
> +
> +ifeq ($(CONFIG_SYS_THUMB_BUILD),y)
> +# Enable Thumb mode build if compiler supports it
> +PLATFORM_CPPFLAGS += $(call cc-option,-mthumb -mthumb-interwork)
> +endif
> --
> 1.7.0.4
>
--
Lo?c Minier
next prev parent reply other threads:[~2011-03-14 16:11 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-14 13:27 [U-Boot] [RFC PATCH 1/2] armv7: enable Thumb build for armv7 Aneesh V
2011-03-14 13:27 ` [U-Boot] [RFC PATCH 2/2] OMAP4: enable Thumb2 support for OMAP4 Aneesh V
2011-03-14 16:11 ` Loïc Minier [this message]
2011-03-15 4:01 ` [U-Boot] [RFC PATCH 1/2] armv7: enable Thumb build for armv7 Aneesh V
2011-03-15 11:54 ` Loïc Minier
2011-03-16 8:39 ` Aneesh V
2011-03-16 17:25 ` Albert ARIBAUD
2011-03-17 7:30 ` Aneesh V
2011-03-24 14:45 ` Albert ARIBAUD
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110314161152.GD18358@bee.dooz.org \
--to=loic.minier@linaro.org \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox