commit
f1a9a0be059727fddf48058b0084c89ec00f1eb9 (HEAD -> master)
Author: Rene Engelhard <rene@rene-engelhard.de>
Date: Thu Aug 8 17:36:14 2024 +0200
fix build on armhf with gcc 14
/uno2cpp.cxx: In function ‘void {anonymous}::callVirtualMethod(void*, sal_Int32, void*, typelib_TypeDescriptionReference*, sal_uInt32*, sal_uInt32, sal_uInt32*, sal_uInt32, double*)’:
/<<PKGBUILDDIR>>/bridges/source/cpp_uno/gcc3_linux_arm/uno2cpp.cxx:278:5: error: ‘asm’ operand has impossible constraints or there are not enough registers
278 | __asm__ __volatile__ (
| ^~~~~~~
make[2]: *** [/<<PKGBUILDDIR>>/solenv/gbuild/LinkTarget.mk:338: /<<PKGBUILDDIR>>/workdir/CxxObject/bridges/source/cpp_uno/gcc3_linux_arm/uno2cpp.o] Error 1
Just removing them makes it work, they are mentioned before anyway, too
(thanks Caolan)
Change-Id: Ibb9118b268a587ebdcfce343e2ee2605ac979915
Gbp-Pq: Name gcc-14-armhf-registers.diff
"mov %[r1], r1\n\t"
: [r0]"=r" (r0), [r1]"=r" (r1)
: [pmethod]"m" (pMethod), [pgpr]"m" (pGPR), [pfpr]"m" (pFPR)
- : "r0", "r1", "r2", "r3", "r4", "r5");
+ : "r2", "r3", "r4", "r5");
MapReturn(r0, r1, pReturnType, static_cast<sal_uInt32*>(pRegisterReturn));
}