On Wed, Feb 15, 2012 at 9:20 PM, Jeremy Huddleston <[email protected]> wrote:
> Can you give me a bit more specifics?  Do you have a reduced test case that 
> you can show me of the problems you are having?  Have you opened a bug report 
> on llvm's bugzilla?  Have you filed a radar with Apple's bug tracker?
>
> On Feb 15, 2012, at 3:13 PM, cu <[email protected]> wrote:
>
>> - The assembler code is not mine. It's a standard assembler set of
>> optimized instructions for NEON (arm v7 etc) that is included with pixman
>>
>> - It will not build on iOS because configure script is unable to test
>> NEON intrinsics (as they are not supported by iOS asm compiler)
>>
>> - So far, the only (somewhat) workable approach was to compile the
>> assembler code on Linux, then disassemble into basic instruction set
>> (i.e. not using any macros etc), and then use that "raw assembler" to
>> compile for iOS.  Doing so still requires somehow working around
>> configure script (i.e. editing it to forcibly enable ARM NEON
>> optimizations). It's a manual process and clearly not particularly
>> convenient, or maintainable.
>>
>>
>>
>> Jeremy Huddleston wrote:
>>> I haven't tested anything or even looked at your assembly.  I just fixed it 
>>> such that it would build out of the box. That's not to say that it builds 
>>> *correct* out of the box, but now it at least builds trivially, and you can 
>>> look into any other issues.
>>>
>>> What errors are you getting trying to compile the pixman arm assembly code 
>>> for iOS?
>>>
>>> On Feb 15, 2012, at 6:34 AM, cu <[email protected]> wrote:
>>>
>>>
>>>> I think the difficulty refers to the fact that pixman arm assembly code
>>>> can't be directly compiled for iOS.
>>>>
>>>> Does this patch still require the precompiled-disassembled version of
>>>> pixman_arm_neon.S?
>>>>
>>>>
>>>> Jeremy Huddleston wrote:
>>>>
>>>>> I noticed this message in the release notes for 0.24.4:
>>>>> """
>>>>> This release also contains some basic support for using the NEON
>>>>> acceleration on iOS, although actually building pixman on that platform
>>>>> remains difficult.
>>>>> """
>>>>>
>>>>> I was curious about what was so difficult about building pixman for iOS 
>>>>> and decided to lend a hand.  Attached are 2 patches for review and build 
>>>>> instructions for how I got it to build.
>>>>>
>>>>> The script will build pixman master for iOS (after the 2 patches are 
>>>>> applied).  The patches fix TLS detection and add support for 
>>>>> --disable-libpng (because I didn't feel like building libpng, too, and 
>>>>> pkg-config picked up my host libpng).
>>>>>
>>>>> Everything built just fine.  I haven't tested it, but this should make it 
>>>>> easier for people to use in iOS if they want.  You'll need to adjust the 
>>>>> path to the SDK and the minimum version of iOS that you want to support 
>>>>> as appropriate.
>>>>>
>>>>>
>>>>>
>>>>> ------------------------------------------------------------------------
>>>>>
>>>>>
>>>>>
>>>>> SDK="/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk"
>>>>> export CC=$(xcrun -sdk iphoneos -find clang)
>>>>> export AS=$(xcrun -sdk iphoneos -find as)
>>>>> export CPPFLAGS="-isysroot ${SDK}"
>>>>> export CFLAGS="-g3 -gdwarf-2 -Os -pipe -miphoneos-version-min=5.0 -arch 
>>>>> armv6 -arch armv7"
>>>>> export LDFLAGS="-isysroot ${SDK} -miphoneos-version-min=5.0 -arch armv6 
>>>>> -arch armv7"
>>>>> ./configure --host=arm-apple-darwin
>>>>> make
>>>>>
>>>>> --Jeremy

CC'ing Bobby Salazar, who has worked on this.
_______________________________________________
Pixman mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/pixman

Reply via email to