[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v4 2/2] xen/arm32: implement VFP context switch
On 6 July 2013 21:45, Ian Campbell <ian.campbell@xxxxxxxxxx> wrote: > On Mon, 2013-06-17 at 14:47 +0100, Julien Grall wrote: >> Add support for VFP context switch on arm32 and a dummy support for arm64 >> >> Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx> > > This patch is causing failures for me with the gcc 4.6.3 cross compiler > which I use and with gcc-linaro-arm-linux-gnueabihf-4.7-2013.04-20130415 > > vfp.c: In function 'vfp_restore_state': > vfp.c:45:27: error: memory input 0 is not directly addressable > vfp.c:51:31: error: memory input 0 is not directly addressable > > For some reason this didn't happen during my pre-commit build tests (or > I somehow missed it), and the test system seems happy with it (no > regression reported). But it does seem to fail on the same system (with > the same compiler) I used for those pre-commit tests now. > > Which compiler do you use? I'm using gcc 4.8.1. > I notice that Linux does its VFP context switch in a .S file, I wonder > if this sort of issue is why? Except if I missed something in the documentation, the constraint 'Q'([1]) doesn't produce the same assembly code on gcc 4.8.1 and gcc 4.6.3. asm volatile("ldr r0, %0" : : "Q" (v)); - gcc 4.6.3 : ldr r0, [r1, #0] - gcc 4.8.1 : ldr r0, [r1] That's an issue for the VFP context switch, because I need to have [rd] otherwise gcc will complain because the assembly instruction has both pre-index and post-index. [1] http://gcc.gnu.org/onlinedocs/gcc-4.8.1/gcc/Machine-Constraints.html#Machine-Constraints -- Julien Grall _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |