* Removed all Id tags.
[cacao.git] / src / vm / jit / powerpc / linux / md-abi.h
index 6b059c6bbdc9259396b8cc7e8aa005807fb11342..a3ae17f9239757a13b3862e4e37ee51cd0204551 100644 (file)
@@ -1,6 +1,6 @@
 /* src/vm/jit/powerpc/linux/md-abi.h - defines for PowerPC Linux ABI
 
-   Copyright (C) 1996-2005, 2006 R. Grafl, A. Krall, C. Kruegel,
+   Copyright (C) 1996-2005, 2006, 2007 R. Grafl, A. Krall, C. Kruegel,
    C. Oates, R. Obermaisser, M. Platter, M. Probst, S. Ring,
    E. Steiner, C. Thalinger, D. Thuernbeck, P. Tomsich, C. Ullrich,
    J. Wenninger, Institut f. Computersprachen - TU Wien
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   Contact: cacao@cacaojvm.org
-
-   Authors: Christian Thalinger
-
-   Changes:
-
-   $Id: md-abi.h 5231 2006-08-11 10:13:28Z twisti $
-
 */
 
 
 #define REG_SP           1   /* stack pointer                                 */
 #define REG_ZERO         0   /* almost always zero: only in address calc.     */
 
+#define REG_A0           3   /* define some argument registers                */
+#define REG_A1           4
+#define REG_A2           5
+#define REG_A3           6
+
 /* floating point registers */
 
 #define REG_FRESULT      1   /* to deliver floating point method results      */
@@ -65,6 +62,9 @@
 
 #define REG_IFTMP       16   /* temporary integer and floating point register */
 
+#define REG_FA0          1   /* define some argument registers                */
+#define REG_FA1          2
+
 
 #define INT_REG_CNT     32   /* number of integer registers                   */
 #define INT_SAV_CNT     10   /* number of int callee saved registers          */
 #define FLT_TMP_CNT     11   /* number of float temporary registers           */
 #define FLT_RES_CNT      3   /* number of float reserved registers            */
 
-#define TRACE_ARGS_NUM   8
+#define TRACE_ARGS_NUM   4
 
 
 /* packed register defines ****************************************************/
 
+#define REG_RESULT_PACKED    PACK_REGS(REG_RESULT2, REG_RESULT)
+
+#define REG_A0_A1_PACKED     PACK_REGS(REG_A1, REG_A0)
+#define REG_A2_A3_PACKED     PACK_REGS(REG_A3, REG_A2)
+
 #define REG_ITMP12_PACKED    PACK_REGS(REG_ITMP2, REG_ITMP1)
 #define REG_ITMP23_PACKED    PACK_REGS(REG_ITMP3, REG_ITMP2)
-#define REG_RESULT_PACKED    PACK_REGS(REG_RESULT2, REG_RESULT)
 
 
 /* ABI defines ****************************************************************/