CACAO
Macros
md-abi.hpp File Reference

Go to the source code of this file.

Macros

#define REG_RESULT   EAX /* to deliver method results */
 
#define REG_RESULT2   EDX /* to deliver long method results */
 
#define REG_ITMP1   EAX /* temporary register */
 
#define REG_ITMP2   ECX /* temporary register */
 
#define REG_ITMP3   EDX /* temporary register */
 
#define REG_METHODPTR   REG_ITMP2/* pointer to the place from where the */
 
#define REG_NULL   -1 /* used for reg_of_var where d is not needed */
 
#define REG_ITMP1_XPTR   EAX /* exception pointer = temporary register 1 */
 
#define REG_ITMP2_XPC   ECX /* exception pc = temporary register 2 */
 
#define REG_SP   ESP /* stack pointer */
 
#define REG_FRESULT   0 /* to deliver floating point method results */
 
#define REG_FTMP1   6 /* temporary floating point register */
 
#define REG_FTMP2   7 /* temporary floating point register */
 
#define REG_FTMP3   7 /* temporary floating point register */
 
#define INT_REG_CNT   8 /* number of integer registers */
 
#define INT_SAV_CNT   3 /* number of integer callee saved registers */
 
#define INT_ARG_CNT   0 /* number of integer argument registers */
 
#define INT_TMP_CNT   1 /* number of integer temporary registers */
 
#define INT_RES_CNT   3 /* numebr of integer reserved registers */
 
#define FLT_REG_CNT   8 /* number of float registers */
 
#define FLT_SAV_CNT   0 /* number of float callee saved registers */
 
#define FLT_ARG_CNT   0 /* number of float argument registers */
 
#define FLT_TMP_CNT   0 /* number of float temporary registers */
 
#define FLT_RES_CNT   8 /* numebr of float reserved registers */
 
#define REG_RES_CNT   3 /* number of reserved registers */
 
#define REG_ITMP12_PACKED   PACK_REGS(REG_ITMP1, REG_ITMP2)
 
#define REG_ITMP13_PACKED   PACK_REGS(REG_ITMP1, REG_ITMP3)
 
#define REG_ITMP23_PACKED   PACK_REGS(REG_ITMP2, REG_ITMP3)
 
#define REG_RESULT_PACKED   PACK_REGS(REG_RESULT, REG_RESULT2)
 
#define EAX_EDX_PACKED   PACK_REGS(EAX, EDX)
 

Macro Definition Documentation

#define EAX_EDX_PACKED   PACK_REGS(EAX, EDX)

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

#define FLT_ARG_CNT   0 /* number of float argument registers */

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

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

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

#define FLT_RES_CNT   8 /* numebr of float reserved registers */

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

#define FLT_SAV_CNT   0 /* number of float callee saved registers */

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

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

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

#define INT_ARG_CNT   0 /* number of integer argument registers */

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

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

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

#define INT_RES_CNT   3 /* numebr of integer reserved registers */

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

#define INT_SAV_CNT   3 /* number of integer callee saved registers */

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

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

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

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

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

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

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

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

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

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

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

#define REG_ITMP1   EAX /* temporary register */

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

#define REG_ITMP12_PACKED   PACK_REGS(REG_ITMP1, REG_ITMP2)

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

#define REG_ITMP13_PACKED   PACK_REGS(REG_ITMP1, REG_ITMP3)

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

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

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

#define REG_ITMP2   ECX /* temporary register */

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

#define REG_ITMP23_PACKED   PACK_REGS(REG_ITMP2, REG_ITMP3)

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

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

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

#define REG_ITMP3   EDX /* temporary register */

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

#define REG_METHODPTR   REG_ITMP2/* pointer to the place from where the */

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

#define REG_NULL   -1 /* used for reg_of_var where d is not needed */

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

#define REG_RES_CNT   3 /* number of reserved registers */

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

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

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

#define REG_RESULT2   EDX /* to deliver long method results */

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

#define REG_RESULT_PACKED   PACK_REGS(REG_RESULT, REG_RESULT2)

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

#define REG_SP   ESP /* stack pointer */

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