[v3] oleaut32: Add ARM support to DispCallFunc().

Martin Storsjö martin at martin.st
Tue Oct 31 05:02:37 CDT 2017


On Tue, 31 Oct 2017, Alexandre Julliard wrote:

> Donna Whisnant <dewhisna at dewtronics.com> writes:
>
>> Adds ARM ABI support to DispCallFunc() to allow IDispatch invoke calls
>> to succeed on ARM platforms.  This change specifically targets only
>> 32-bit little-endian (ARMEL) platform CPUs.  It's believed to likely be
>> compatible with big-endian (ARMEB) platforms, but testing for that
>> platform should be completed before enabling.
>>
>> Tested on Raspbian Stretch 2017-09-07 RPi image using a Qemu systemd
>> container to compile and run it on an x86-64 Host..  When running on
>> Raspberry Pi hardware, a 3G/1G split kernel needs to be used for Wine
>> to function.
>
> It breaks the Android build:
>
> arm-linux-androideabi-gcc -c -o typelib.o ../../../wine/dlls/oleaut32/typelib.c -I. -I../../../wine/dlls/oleaut32 \
>  -I../../include -I../../../wine/include -D__WINESRC__ -D_OLEAUT32_ -D_REENTRANT -fPIC -Wall -pipe \
>  -fno-strict-aliasing -Wdeclaration-after-statement -Wempty-body -Wignored-qualifiers \
>  -Wstrict-prototypes -Wtype-limits -Wunused-but-set-parameter -Wvla -Wwrite-strings -Wpointer-arith \
>  -Wlogical-op -gdwarf-2 -gstrict-dwarf -g -O2 -fno-diagnostics-show-caret -D__ANDROID_API__=26 -marm
> {standard input}: Assembler messages:
> {standard input}:32: Error: selected processor does not support ARM mode `vldm r3!,{s0-s15}'
> Makefile:516: recipe for target 'typelib.o' failed
> make: *** [typelib.o] Error 1

FWIW, this is the same issue as was discussed before here: 
https://www.winehq.org/pipermail/wine-devel/2017-September/118872.html

// Martin



More information about the wine-devel mailing list