Without this patch, Cpp bridgetest on a Clang-compiled UNO runtime will
not complete successfully.
regards,
-kris.
>From b9c8ff8b0ac2e1bfe91c62fc0483ca134295ca9c Mon Sep 17 00:00:00 2001
From: Kristian Rietveld <k...@lanedo.com>
Date: Sat, 15 Oct 2011 01:15:21 +0200
Subject: [PATCH] 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.
---
.../source/cpp_uno/gcc3_macosx_intel/uno2cpp.cxx | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
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:
--
1.7.4.4
_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice