CACAO
Macros
md-abi.hpp File Reference

Go to the source code of this file.

Macros

#define REG_ZERO   0 /* always zero */
 
#define REG_RESULT   2 /* to deliver method results */
 
#define REG_ITMP1   1 /* temporary register */
 
#define REG_ITMP2   3 /* temporary register and method pointer */
 
#define REG_ITMP3   25 /* temporary register */
 
#define REG_RA   31 /* return address */
 
#define REG_SP   29 /* stack pointer */
 
#define REG_GP   28 /* global pointer */
 
#define REG_PV   30 /* procedure vector, must be provided by caller */
 
#define REG_METHODPTR   25 /* pointer to the place from where the procedure */
 
#define REG_ITMP1_XPTR   REG_ITMP1 /* exception pointer = temporary register 1 */
 
#define REG_ITMP2_XPC   REG_ITMP2 /* exception pc = temporary register 2 */
 
#define REG_A0   4 /* define some argument registers */
 
#define REG_A1   5
 
#define REG_A2   6
 
#define REG_A3   7
 
#define REG_A4   8
 
#define REG_FRESULT   0 /* to deliver floating point method results */
 
#define REG_IFTMP   1 /* temporary integer and floating point register */
 
#define REG_FTMP1   1 /* temporary floating point register */
 
#define REG_FTMP2   2 /* temporary floating point register */
 
#define REG_FTMP3   3 /* temporary floating point register */
 
#define REG_FA0   12 /* define some argument registers */
 
#define REG_FA1   13
 
#define REG_FA2   14
 
#define INT_REG_CNT   32 /* number of integer registers */
 
#define INT_SAV_CNT   8 /* number of int callee saved registers */
 
#define INT_ARG_CNT   8 /* number of int argument registers */
 
#define INT_TMP_CNT   5 /* number of integer temporary registers */
 
#define INT_RES_CNT   10 /* number of integer reserved registers */
 
#define FLT_REG_CNT   32 /* number of float registers */
 
#define FLT_SAV_CNT   4 /* number of flt callee saved registers */
 
#define FLT_ARG_CNT   8 /* number of flt argument registers */
 
#define FLT_TMP_CNT   16 /* number of float temporary registers */
 
#define FLT_RES_CNT   3 /* number of float reserved registers */
 
#define TRACE_ARGS_NUM   8
 
#define PA_SIZE   0 /* we don't have a parameter area */
 

Macro Definition Documentation

#define FLT_ARG_CNT   8 /* number of flt argument registers */

Definition at line 99 of file md-abi.hpp.

#define FLT_REG_CNT   32 /* number of float registers */

Definition at line 97 of file md-abi.hpp.

#define FLT_RES_CNT   3 /* number of float reserved registers */

Definition at line 101 of file md-abi.hpp.

#define FLT_SAV_CNT   4 /* number of flt callee saved registers */

Definition at line 98 of file md-abi.hpp.

#define FLT_TMP_CNT   16 /* number of float temporary registers */

Definition at line 100 of file md-abi.hpp.

#define INT_ARG_CNT   8 /* number of int argument registers */

Definition at line 92 of file md-abi.hpp.

#define INT_REG_CNT   32 /* number of integer registers */

Definition at line 90 of file md-abi.hpp.

#define INT_RES_CNT   10 /* number of integer reserved registers */

Definition at line 94 of file md-abi.hpp.

#define INT_SAV_CNT   8 /* number of int callee saved registers */

Definition at line 91 of file md-abi.hpp.

#define INT_TMP_CNT   5 /* number of integer temporary registers */

Definition at line 93 of file md-abi.hpp.

#define PA_SIZE   0 /* we don't have a parameter area */

Definition at line 147 of file md-abi.hpp.

#define REG_A0   4 /* define some argument registers */

Definition at line 62 of file md-abi.hpp.

#define REG_A1   5

Definition at line 63 of file md-abi.hpp.

#define REG_A2   6

Definition at line 64 of file md-abi.hpp.

#define REG_A3   7

Definition at line 65 of file md-abi.hpp.

#define REG_A4   8

Definition at line 68 of file md-abi.hpp.

#define REG_FA0   12 /* define some argument registers */

Definition at line 86 of file md-abi.hpp.

#define REG_FA1   13

Definition at line 87 of file md-abi.hpp.

#define REG_FA2   14

Definition at line 88 of file md-abi.hpp.

#define REG_FRESULT   0 /* to deliver floating point method results */

Definition at line 73 of file md-abi.hpp.

#define REG_FTMP1   1 /* temporary floating point register */

Definition at line 82 of file md-abi.hpp.

#define REG_FTMP2   2 /* temporary floating point register */

Definition at line 83 of file md-abi.hpp.

#define REG_FTMP3   3 /* temporary floating point register */

Definition at line 84 of file md-abi.hpp.

#define REG_GP   28 /* global pointer */

Definition at line 54 of file md-abi.hpp.

#define REG_IFTMP   1 /* temporary integer and floating point register */

Definition at line 75 of file md-abi.hpp.

#define REG_ITMP1   1 /* temporary register */

Definition at line 44 of file md-abi.hpp.

#define REG_ITMP1_XPTR   REG_ITMP1 /* exception pointer = temporary register 1 */

Definition at line 59 of file md-abi.hpp.

#define REG_ITMP2   3 /* temporary register and method pointer */

Definition at line 46 of file md-abi.hpp.

#define REG_ITMP2_XPC   REG_ITMP2 /* exception pc = temporary register 2 */

Definition at line 60 of file md-abi.hpp.

#define REG_ITMP3   25 /* temporary register */

Definition at line 50 of file md-abi.hpp.

#define REG_METHODPTR   25 /* pointer to the place from where the procedure */

Definition at line 57 of file md-abi.hpp.

#define REG_PV   30 /* procedure vector, must be provided by caller */

Definition at line 56 of file md-abi.hpp.

#define REG_RA   31 /* return address */

Definition at line 52 of file md-abi.hpp.

#define REG_RESULT   2 /* to deliver method results */

Definition at line 38 of file md-abi.hpp.

#define REG_SP   29 /* stack pointer */

Definition at line 53 of file md-abi.hpp.

#define REG_ZERO   0 /* always zero */

Definition at line 36 of file md-abi.hpp.

#define TRACE_ARGS_NUM   8

Definition at line 104 of file md-abi.hpp.