Date: Wed, 16 May 2012 10:09:54 +0900 (JST) From: Maho NAKATA <chat95@mac.com> To: pfg@FreeBSD.org Cc: me@janh.de, freebsd-office@freebsd.org Subject: Re: editors/openoffice-3 fails on i386 while it builds on amd64 Message-ID: <20120516.100954.149607579557777889.chat95@mac.com> In-Reply-To: <4FAD3CD4.50503@FreeBSD.org> References: <4FAD3CD4.50503@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
sorry still tinderbox is not setup. just failed. I'll do it on this Sunday. thanks Nakata Maho From: Pedro Giffuni <pfg@FreeBSD.org> Subject: Re: editors/openoffice-3 fails on i386 while it builds on amd64 Date: Fri, 11 May 2012 11:22:44 -0500 > Index: bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx > =================================================================== > --- bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx (revision 1337224) > +++ bridges/source/cpp_uno/gcc3_freebsd_intel/cpp2uno.cxx (working copy) > @@ -355,7 +355,7 @@ > int const codeSnippetSize = 16; > > unsigned char * codeSnippet( > - unsigned char * code, sal_Int32 functionIndex, sal_Int32 vtableOffset, > + unsigned char * code, sal_PtrDiff writetoexecdiff, sal_Int32 functionIndex, sal_Int32 vtableOffset, > typelib_TypeClass returnTypeClass) > { > if (!bridges::cpp_uno::shared::isSimpleType(returnTypeClass)) { > @@ -401,7 +401,7 @@ > // jmp privateSnippetExecutor: > *p++ = 0xE9; > *reinterpret_cast< sal_Int32 * >(p) > - = ((unsigned char *) exec) - p - sizeof (sal_Int32); > + = ((unsigned char *) exec) - p - sizeof (sal_Int32) - writetoexecdiff; > p += sizeof (sal_Int32); > OSL_ASSERT(p - code <= codeSnippetSize); > return code + codeSnippetSize; > @@ -434,7 +434,7 @@ > } > > unsigned char * bridges::cpp_uno::shared::VtableFactory::addLocalFunctions( > - Slot ** slots, unsigned char * code, > + Slot ** slots, unsigned char * code, sal_PtrDiff writetoexecdiff, > typelib_InterfaceTypeDescription const * type, sal_Int32 functionOffset, > sal_Int32 functionCount, sal_Int32 vtableOffset) > { > @@ -447,9 +447,9 @@ > switch (member->eTypeClass) { > case typelib_TypeClass_INTERFACE_ATTRIBUTE: > // Getter: > - (s++)->fn = code; > + (s++)->fn = code + writetoexecdiff; > code = codeSnippet( > - code, functionOffset++, vtableOffset, > + code, writetoexecdiff, functionOffset++, vtableOffset, > reinterpret_cast< typelib_InterfaceAttributeTypeDescription * >( > member)->pAttributeTypeRef->eTypeClass); > // Setter: > @@ -457,17 +457,17 @@ > typelib_InterfaceAttributeTypeDescription * >( > member)->bReadOnly) > { > - (s++)->fn = code; > + (s++)->fn = code + writetoexecdiff; > code = codeSnippet( > - code, functionOffset++, vtableOffset, > + code, writetoexecdiff, functionOffset++, vtableOffset, > typelib_TypeClass_VOID); > } > break; > > case typelib_TypeClass_INTERFACE_METHOD: > - (s++)->fn = code; > + (s++)->fn = code + writetoexecdiff; > code = codeSnippet( > - code, functionOffset++, vtableOffset, > + code, writetoexecdiff, functionOffset++, vtableOffset, > reinterpret_cast< typelib_InterfaceMethodTypeDescription * >( > member)->pReturnTypeRef->eTypeClass); > break;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120516.100954.149607579557777889.chat95>