xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Tim Deegan <tim@xen.org>
To: Ian Campbell <Ian.Campbell@citrix.com>
Cc: Stefano Stabellini <Stefano.Stabellini@eu.citrix.com>,
	"xen-devel@lists.xen.org" <xen-devel@lists.xen.org>
Subject: Re: [PATCH 6 of 6] arm: Enable VFP at boot
Date: Fri, 1 Jun 2012 10:29:26 +0100	[thread overview]
Message-ID: <20120601092926.GC77921@ocelot.phlegethon.org> (raw)
In-Reply-To: <1338542410.17466.46.camel@zakaz.uk.xensource.com>

At 10:20 +0100 on 01 Jun (1338546010), Ian Campbell wrote:
> > -CFLAGS += -march=armv7-a -mcpu=cortex-a15
> > +CFLAGS += -march=armv7-a -mcpu=cortex-a15 -mfpu=vfpv3 -mfloat-abi=softfp
> 
> This might have been worthy of a comment...

Ah, yes it might.  Would you like me to add one and resubmit?

If I get time next week I'm going to look at VFP context switching; at
that point I might move all the VFP code into its own .c or .S file and
enable the fpu instructions just there, to be sure that gcc doesn't
start using the VFP registers in normal Xen code -- it will do that for
integer arithmetic with -mfpu=neon, for example.  OTOH it might be
OK to do that as long as there are no caller-save VFP registers; I'll
have a look at the calling conventions and see what can be done.

Tim.

> http://wiki.debian.org/ArmHardFloatPort has some discussion, including:
>         * soft: Full software floating point. 
>         * softfp: Use the FPU, but remain compatible with soft-float
>         code. 
>         * hard: Full hardware floating point. 
> 
> and "The combination of -mfpu=vfp and -mfloat-abi=hard is not available
> in FSF GCC 4.4". (there's a reference to a TODO section which seems to
> not exist anymore...). I think Debian's armhf does actually use hard
> (the page seems to imply it)
> 
> Anyway softfp does seem like the right option, at least until
> -mfloat-abi=hard. Since this is all internal to the hypervisor (guests
> can do whatever they want, I'm happily running armhf binaries) I don't
> think this is a big deal to change as and when the compiler will let us.
> 

  reply	other threads:[~2012-06-01  9:29 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-31 16:39 [PATCH 0 of 6] ARM: various boot-time tidying Tim Deegan
2012-05-31 16:39 ` [PATCH 1 of 6] arm: More interrupt setup at start-of-day for secondary CPUs Tim Deegan
2012-05-31 16:40 ` [PATCH 2 of 6] arm: Move hyp-mode entry code out of line Tim Deegan
2012-05-31 16:54   ` David Vrabel
2012-06-01  6:29     ` Ian Campbell
2012-05-31 16:40 ` [PATCH 3 of 6] arm: avoid memory write in switch to Hyp mode Tim Deegan
2012-06-01  9:07   ` Ian Campbell
2012-06-01  9:18     ` Tim Deegan
2012-05-31 16:40 ` [PATCH 4 of 6] arm: missing __init annotation Tim Deegan
2012-05-31 16:40 ` [PATCH 5 of 6] arm: allow ourselves access to all coprocessors in non-secure mode Tim Deegan
2012-05-31 16:40 ` [PATCH 6 of 6] arm: Enable VFP at boot Tim Deegan
2012-06-01  9:20   ` Ian Campbell
2012-06-01  9:29     ` Tim Deegan [this message]
2012-06-01  9:37       ` Ian Campbell
2012-06-01  9:31 ` [PATCH 0 of 6] ARM: various boot-time tidying Ian Campbell

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=20120601092926.GC77921@ocelot.phlegethon.org \
    --to=tim@xen.org \
    --cc=Ian.Campbell@citrix.com \
    --cc=Stefano.Stabellini@eu.citrix.com \
    --cc=xen-devel@lists.xen.org \
    /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;
as well as URLs for NNTP newsgroup(s).