[Pixman] Pixman build for arm
Jason Rukman
JasonR at bsquare.com
Tue Jun 22 08:39:15 PDT 2010
Thank you for the pointer...
I think I'm ok on this front though as I'm not trying to replace the windows CE VFP. I'm just looking to use the arm-neon assembler for the implementation layer.
Jason.
-----Original Message-----
From: Siarhei Siamashka [mailto:siarhei.siamashka at gmail.com]
Sent: Tuesday, June 22, 2010 5:38 AM
To: pixman at lists.freedesktop.org
Cc: Jason Rukman
Subject: Re: [Pixman] Pixman build for arm
On Monday 21 June 2010 21:37:44 Jason Rukman wrote:
> I'm trying to build pixman for the ARM coretex-a8 neon fpu for windows CE
> without much luck so far.
I don't have a first hand information, but there are some concerns whether
windows CE OS supports NEON:
http://lists.cairographics.org/archives/cairo/2009-October/018435.html
Even linux had a few NEON/VFP bugs in the OS kernel which impacted pixman.
Additionally, getting properly working NEON requires some workarounds to be
applied in a bootloader for certain revisions of Cortex-A8. This stuff is kind
of a minefield. We may hope that windows CE did everything right. But if it is
not the case, you can encounter crashes or CPU deadlocks. I'm not trying to
scare you off, just be aware of that.
> I've found a version of the gcc tools for building for windows CE ARM:
>
> $ ./as --version
> GNU assembler (GNU Binutils) 2.19.51.20090204
>
> But when I try and compile the neon specific code it looks like it's not
> able to handle the assembler code (see below).
>
> Can someone point me at a toolchain that I can use for compiling this
> assembler so I can take advantage of the NEON specific code?
The version of GNU assembler seems to be ok.
> Here's my output when trying to compile pixman-arm-neon-asm.S:
>
> $ ./as -mfpu=neon
> /cygdrive/c/src/webkitce/Libraries/cairo-1.8.8/pixman/pixman/
> pixman-arm-neon-asm.S >> bld.out
You should not run 'as' directly on *.S files. They also require C
preprocessor, and should be compiled with 'gcc', which will invoke 'as' itself
automatically after passing it through preprocessor.
> /cygdrive/c/src/webkitce/Libraries/cairo-1.8.8/pixman/pixman/pixman-arm-ne
> on-asm .S:46: Error: unknown pseudo-op: `.eabi_attribute'
One more thing, these are ELF specific EABI attributes which are not needed
for you and cause build failure. They are not guarded by preprocessor
intentionally, because this code was only tested on linux with ARM EABI
calling conventions. If ABI in windows CE is compatible with ARM EABI, then
everything is fine. But somebody needs to verify it first and add ifdefs in
the code.
--
Best regards,
Siarhei Siamashka
More information about the Pixman
mailing list