[Libreoffice-commits] .: bridges/source
Stephan Bergmann
sbergmann at kemper.freedesktop.org
Sun Oct 16 23:14:30 PDT 2011
bridges/source/cpp_uno/gcc3_linux_intel/uno2cpp.cxx | 2 +-
bridges/source/cpp_uno/gcc3_macosx_intel/uno2cpp.cxx | 2 +-
bridges/source/cpp_uno/mingw_intel/uno2cpp.cxx | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
New commits:
commit e748b096633c5ef747f0630d13708d8dd7308a86
Author: Kristian Rietveld <kris at lanedo.com>
Date: Sat Oct 15 01:15:21 2011 +0200
Mark ecx register as clobbered
The inline assembly code executes a function call and functions are
free to use eax, ecx and edx without preservation. We must thus mark
ecx as a clobber register.
diff --git a/bridges/source/cpp_uno/gcc3_linux_intel/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_linux_intel/uno2cpp.cxx
index 21febef..4443190 100644
--- a/bridges/source/cpp_uno/gcc3_linux_intel/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_linux_intel/uno2cpp.cxx
@@ -123,7 +123,7 @@ void callVirtualMethod(
:
: "m"(nStackLongs), "m"(pStackLongs), "m"(pAdjustedThisPtr),
"m"(nVtableIndex), "m"(eax), "m"(edx), "m"(stackptr)
- : "eax", "edx" );
+ : "eax", "ecx", "edx" );
switch( pReturnTypeDescr->eTypeClass )
{
case typelib_TypeClass_VOID:
diff --git a/bridges/source/cpp_uno/gcc3_macosx_intel/uno2cpp.cxx b/bridges/source/cpp_uno/gcc3_macosx_intel/uno2cpp.cxx
index 9f00005..89f5381 100644
--- a/bridges/source/cpp_uno/gcc3_macosx_intel/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/gcc3_macosx_intel/uno2cpp.cxx
@@ -119,7 +119,7 @@ void callVirtualMethod(
:
: "m"(nStackLongs), "m"(pStackLongs), "m"(pAdjustedThisPtr),
"m"(nVtableIndex), "m"(eax), "m"(edx), "m"(stackptr)
- : "eax", "edx" );
+ : "eax", "ecx", "edx" );
switch( pReturnTypeDescr->eTypeClass )
{
case typelib_TypeClass_VOID:
diff --git a/bridges/source/cpp_uno/mingw_intel/uno2cpp.cxx b/bridges/source/cpp_uno/mingw_intel/uno2cpp.cxx
index 4dd6cde..45d20b3 100644
--- a/bridges/source/cpp_uno/mingw_intel/uno2cpp.cxx
+++ b/bridges/source/cpp_uno/mingw_intel/uno2cpp.cxx
@@ -112,7 +112,7 @@ void callVirtualMethod(
:
: "m"(nStackLongs), "m"(pStackLongs), "m"(pAdjustedThisPtr),
"m"(nVtableIndex), "m"(eax), "m"(edx), "m"(stackptr)
- : "eax", "edx" );
+ : "eax", "ecx", "edx" );
switch( returnType->eTypeClass )
{
case typelib_TypeClass_VOID:
More information about the Libreoffice-commits
mailing list