freebsd-ports/editors/openoffice-3-devel/files/patch-bridges
Maho Nakata 1ee5d93376 Update to m136
o cosmetic changes, fix typos
o use libart instead of GPC[1]
o remove BROKEN for old FreeBSDs, IMHO this is too strict.
o build crashreport

Implicitly suggested by: "Mikhail T." <mi@aldan.algebra.com>[1]
2005-10-31 08:01:25 +00:00

173 lines
6 KiB
Text

Issuetracker : #i56947#
CWS : N/A
Author : <maho@openoffice.org> (JCA)
Description : FreeBSD porting : update files at bridges project
catch up version up of bridge project of GNU/Linux
--- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Thu Sep 8 07:20:08 2005
+++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx Wed Oct 26 15:10:05 2005
@@ -57,7 +57,7 @@
typelib_TypeDescriptionReference * pReturnTypeRef, // 0 indicates void return
sal_Int32 nParams, typelib_MethodParameter * pParams,
void ** pCallStack,
- sal_Int64 * pRegisterReturn /* space for register return */ )
+ void * pReturnValue )
{
// pCallStack: ret, [return ptr], this, params
char * pCppStack = (char *)(pCallStack +1);
@@ -74,7 +74,7 @@
{
if (bridges::cpp_uno::shared::isSimpleType( pReturnTypeDescr ))
{
- pUnoReturn = pRegisterReturn; // direct way for simple types
+ pUnoReturn = pReturnValue; // direct way for simple types
}
else // complex return via ptr (pCppReturn)
{
@@ -215,7 +215,7 @@
uno_destructData( pUnoReturn, pReturnTypeDescr, 0 );
}
// complex return ptr is set to eax
- *(void **)pRegisterReturn = pCppReturn;
+ *static_cast< void ** >(pReturnValue) = pCppReturn;
}
if (pReturnTypeDescr)
{
@@ -228,7 +228,7 @@
//==================================================================================================
extern "C" void cpp_vtable_call(
int nFunctionIndex, int nVtableOffset, void** pCallStack,
- sal_Int64 nRegReturn )
+ void * pReturnValue )
{
OSL_ENSURE( sizeof(sal_Int32)==sizeof(void *), "### unexpected!" );
@@ -275,7 +275,7 @@
pCppI, aMemberDescr.get(),
((typelib_InterfaceAttributeTypeDescription *)aMemberDescr.get())->pAttributeTypeRef,
0, 0, // no params
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
else
{
@@ -290,7 +290,7 @@
pCppI, aMemberDescr.get(),
0, // indicates void return
1, &aParam,
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
break;
}
@@ -324,7 +324,7 @@
&pInterface, pTD, cpp_acquire );
pInterface->release();
TYPELIB_DANGER_RELEASE( pTD );
- *(void **)&nRegReturn = pCallStack[1];
+ *static_cast< void ** >(pReturnValue) = pCallStack[1];
break;
}
TYPELIB_DANGER_RELEASE( pTD );
@@ -336,7 +336,7 @@
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pReturnTypeRef,
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->nParams,
((typelib_InterfaceMethodTypeDescription *)aMemberDescr.get())->pParams,
- pCallStack, &nRegReturn );
+ pCallStack, pReturnValue );
}
break;
}
--- bridges/source/cpp_uno/gcc3_freebsd_intel/call.s Wed Jun 1 01:32:41 2005
+++ bridges/source/cpp_uno/gcc3_freebsd_intel/call.s Wed Oct 26 15:10:04 2005
@@ -9,12 +9,13 @@
.LCFIg0:
movl %esp,%ebp
.LCFIg1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
+ movl 16(%esp),%eax # 32bit returnValue
leave
ret
.LFEg:
@@ -29,7 +30,7 @@
.LCFIv0:
movl %esp,%ebp
.LCFIv1:
- subl $0x8,%esp # 64bit nRegReturn
+ pushl $0 # 32bit null pointer (returnValue not used)
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
@@ -48,13 +49,14 @@
.LCFIh0:
movl %esp,%ebp
.LCFIh1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x8,%esp # 64bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
- movl 16(%esp),%edx # 64 bit nRegReturn, upper half
+ movl 16(%esp),%eax # 64bit returnValue, lower half
+ movl 20(%esp),%edx # 64bit returnValue, upper half
leave
ret
.LFEh:
@@ -69,12 +71,13 @@
.LCFIf0:
movl %esp,%ebp
.LCFIf1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- flds 12(%esp) # 64 bit nRegReturn, lower half
+ flds 16(%esp) # 32bit returnValue
leave
ret
.LFEf:
@@ -89,12 +92,13 @@
.LCFId0:
movl %esp,%ebp
.LCFId1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x8,%esp # 64bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- fldl 12(%esp) # 64 bit nRegReturn
+ fldl 16(%esp) # 64bit returnValue
leave
ret
.LFEd:
@@ -109,12 +113,13 @@
.LCFIc0:
movl %esp,%ebp
.LCFIc1:
- subl $0x8,%esp # 64bit nRegReturn
+ subl $0x4,%esp # 32bit returnValue
+ pushl %esp # 32bit &returnValue
pushl %ecx # 32bit pCallStack
pushl %edx # 32bit nVtableOffset
pushl %eax # 32bit nFunctionIndex
call cpp_vtable_call
- movl 12(%esp),%eax # 64 bit nRegReturn, lower half
+ movl 16(%esp),%eax # 32bit returnValue
leave
ret $4
.LFEc: