libspe2  0.9a
Data Structures | Macros
handler_utils.h File Reference

Go to the source code of this file.

Data Structures

struct  spe_reg128
 

Macros

#define LS_SIZE   0x40000 /* 256K (in bytes) */
 
#define LS_ADDR_MASK   (LS_SIZE - 1)
 
#define __PRINTF(fmt, args...)   { fprintf(stderr,fmt , ## args); }
 
#define DEBUG_PRINTF(fmt, args...)
 
#define LS_ARG_ADDR(_index)   (&((struct spe_reg128 *) ((char *) ls + ls_args))[_index])
 
#define DECL_RET()   struct spe_reg128 *ret = LS_ARG_ADDR(0)
 
#define GET_LS_PTR(_off)   (void *) ((char *) ls + ((_off) & LS_ADDR_MASK))
 
#define GET_LS_PTR_NULL(_off)   ((_off) ? GET_LS_PTR(_off) : NULL)
 
#define DECL_0_ARGS()   unsigned int ls_args = (opdata & 0xffffff)
 
#define DECL_1_ARGS()
 
#define DECL_2_ARGS()
 
#define DECL_3_ARGS()
 
#define DECL_4_ARGS()
 
#define DECL_5_ARGS()
 
#define DECL_6_ARGS()
 
#define PUT_LS_RC(_a, _b, _c, _d)
 

Macro Definition Documentation

#define __PRINTF (   fmt,
  args... 
)    { fprintf(stderr,fmt , ## args); }

Definition at line 32 of file handler_utils.h.

#define DEBUG_PRINTF (   fmt,
  args... 
)

Definition at line 36 of file handler_utils.h.

#define DECL_0_ARGS ( )    unsigned int ls_args = (opdata & 0xffffff)

Definition at line 51 of file handler_utils.h.

#define DECL_1_ARGS ( )
Value:
struct spe_reg128 *arg0 = LS_ARG_ADDR(0)

Definition at line 54 of file handler_utils.h.

#define DECL_2_ARGS ( )
Value:
struct spe_reg128 *arg1 = LS_ARG_ADDR(1)

Definition at line 58 of file handler_utils.h.

#define DECL_3_ARGS ( )
Value:
struct spe_reg128 *arg2 = LS_ARG_ADDR(2)

Definition at line 62 of file handler_utils.h.

#define DECL_4_ARGS ( )
Value:
struct spe_reg128 *arg3 = LS_ARG_ADDR(3)

Definition at line 66 of file handler_utils.h.

#define DECL_5_ARGS ( )
Value:
struct spe_reg128 *arg4 = LS_ARG_ADDR(4)

Definition at line 70 of file handler_utils.h.

#define DECL_6_ARGS ( )
Value:
struct spe_reg128 *arg5 = LS_ARG_ADDR(5)

Definition at line 74 of file handler_utils.h.

#define DECL_RET ( )    struct spe_reg128 *ret = LS_ARG_ADDR(0)

Definition at line 42 of file handler_utils.h.

#define GET_LS_PTR (   _off)    (void *) ((char *) ls + ((_off) & LS_ADDR_MASK))

Definition at line 45 of file handler_utils.h.

#define GET_LS_PTR_NULL (   _off)    ((_off) ? GET_LS_PTR(_off) : NULL)

Definition at line 48 of file handler_utils.h.

#define LS_ADDR_MASK   (LS_SIZE - 1)

Definition at line 29 of file handler_utils.h.

#define LS_ARG_ADDR (   _index)    (&((struct spe_reg128 *) ((char *) ls + ls_args))[_index])

Definition at line 39 of file handler_utils.h.

#define LS_SIZE   0x40000 /* 256K (in bytes) */

Definition at line 28 of file handler_utils.h.

#define PUT_LS_RC (   _a,
  _b,
  _c,
  _d 
)
Value:
ret->slot[0] = (unsigned int) (_a); \
ret->slot[1] = (unsigned int) (_b); \
ret->slot[2] = (unsigned int) (_c); \
ret->slot[3] = (unsigned int) (_d); \
__asm__ __volatile__ ("sync" : : : "memory")

Definition at line 78 of file handler_utils.h.