LibreOffice Module bridges (master) 1
Namespaces | Macros | Functions
gcc3_linux_arm/uno2cpp.cxx File Reference
#include <malloc.h>
#include <rtl/alloc.h>
#include <com/sun/star/uno/genfunc.hxx>
#include <com/sun/star/uno/Exception.hpp>
#include <com/sun/star/uno/RuntimeException.hpp>
#include <o3tl/runtimetooustring.hxx>
#include <uno/data.h>
#include <bridge.hxx>
#include <types.hxx>
#include <unointerfaceproxy.hxx>
#include <vtables.hxx>
#include "share.hxx"
#include <exception>
#include <stdio.h>
#include <string.h>
#include <typeinfo>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <elf.h>
Include dependency graph for gcc3_linux_arm/uno2cpp.cxx:

Go to the source code of this file.

Namespaces

namespace  arm
 
namespace  bridges
 
namespace  bridges::cpp_uno
 
namespace  bridges::cpp_uno::shared
 

Macros

#define HWCAP_ARM_VFP   64
 
#define INSERT_INT32(pSV, nr, pGPR, pDS)
 
#define INSERT_INT64(pSV, nr, pGPR, pDS, pStart)
 
#define INSERT_FLOAT(pSV, nr, pFPR, pDS)    INSERT_INT32( pSV, nr, pGPR, pDS )
 
#define INSERT_DOUBLE(pSV, nr, pFPR, pDS, pStart)    INSERT_INT64( pSV, nr, pGPR, pDS, pStart )
 
#define INSERT_INT16(pSV, nr, pGPR, pDS)
 
#define INSERT_INT8(pSV, nr, pGPR, pDS)
 

Functions

int hasVFP ()
 
static bool arm::is_complex_struct (const typelib_TypeDescription *type)
 
bool arm::return_in_hidden_param (typelib_TypeDescriptionReference *pTypeRef)
 
static void MapReturn (sal_uInt32 r0, sal_uInt32 r1, typelib_TypeDescriptionReference *pReturnType, sal_uInt32 *pRegisterReturn)
 
void bridges::cpp_uno::shared::unoInterfaceProxyDispatch (uno_Interface *pUnoI, const typelib_TypeDescription *pMemberDescr, void *pReturn, void *pArgs[], uno_Any **ppException)
 

Macro Definition Documentation

◆ HWCAP_ARM_VFP

#define HWCAP_ARM_VFP   64

Definition at line 64 of file gcc3_linux_arm/uno2cpp.cxx.

◆ INSERT_DOUBLE

#define INSERT_DOUBLE (   pSV,
  nr,
  pFPR,
  pDS,
  pStart 
)     INSERT_INT64( pSV, nr, pGPR, pDS, pStart )

Definition at line 380 of file gcc3_linux_arm/uno2cpp.cxx.

◆ INSERT_FLOAT

#define INSERT_FLOAT (   pSV,
  nr,
  pFPR,
  pDS 
)     INSERT_INT32( pSV, nr, pGPR, pDS )

Definition at line 377 of file gcc3_linux_arm/uno2cpp.cxx.

◆ INSERT_INT16

#define INSERT_INT16 (   pSV,
  nr,
  pGPR,
  pDS 
)
Value:
if ( nr < arm::MAX_GPR_REGS ) \
pGPR[nr++] = *static_cast<sal_uInt16 const *>( pSV ); \
else \
*pDS++ = *static_cast<sal_uInt16 const *>( pSV );
@ MAX_GPR_REGS

Definition at line 384 of file gcc3_linux_arm/uno2cpp.cxx.

◆ INSERT_INT32

#define INSERT_INT32 (   pSV,
  nr,
  pGPR,
  pDS 
)
Value:
if ( nr < arm::MAX_GPR_REGS ) \
pGPR[nr++] = *reinterpret_cast<const sal_uInt32*>( pSV ); \
else \
*pDS++ = *reinterpret_cast<const sal_uInt32*>( pSV );

Definition at line 307 of file gcc3_linux_arm/uno2cpp.cxx.

◆ INSERT_INT64

#define INSERT_INT64 (   pSV,
  nr,
  pGPR,
  pDS,
  pStart 
)
Value:
INSERT_INT32( pSV, nr, pGPR, pDS ) \
INSERT_INT32( ((sal_uInt32*)pSV)+1, nr, pGPR, pDS )
#define INSERT_INT32(pSV, nr, pGPR, pDS)

Definition at line 334 of file gcc3_linux_arm/uno2cpp.cxx.

◆ INSERT_INT8

#define INSERT_INT8 (   pSV,
  nr,
  pGPR,
  pDS 
)
Value:
if ( nr < arm::MAX_GPR_REGS ) \
pGPR[nr++] = *static_cast<sal_uInt8 const *>( pSV ); \
else \
*pDS++ = *static_cast<sal_uInt8 const *>( pSV );
unsigned char sal_uInt8

Definition at line 390 of file gcc3_linux_arm/uno2cpp.cxx.

Function Documentation

◆ hasVFP()

int hasVFP ( )

Definition at line 66 of file gcc3_linux_arm/uno2cpp.cxx.

References close, HWCAP_ARM_VFP, i, and n.

◆ MapReturn()

static void MapReturn ( sal_uInt32  r0,
sal_uInt32  r1,
typelib_TypeDescriptionReference *  pReturnType,
sal_uInt32 *  pRegisterReturn 
)
static

Definition at line 168 of file gcc3_linux_arm/uno2cpp.cxx.

References arm::return_in_hidden_param().