Subversion Repositories Open64

[/] [trunk/] [osprey/] [common/] [com/] [SL/] [targ_sim.h] - Blame information for rev 2694

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2694 shenruifen
/********************************************************************\
2
|*                                                                  *|
3
|*  Copyright (c) 2006 by SimpLight Nanoelectronics.                *|
4
|*  All rights reserved                                             *|
5
|*                                                                  *|
6
|*  This program is free software; you can redistribute it and/or   *|
7
|*  modify it under the terms of the GNU General Public License as  *|
8
|*  published by the Free Software Foundation; either version 2,    *|
9
|*  or (at your option) any later version.                          *|
10
|*                                                                  *|
11
\********************************************************************/
12 1950 laijx
 
13
#ifndef targ_sim_INCLUDED
14
#define targ_sim_INCLUDED
15
#ifdef __cplusplus
16
extern "C" {
17
#endif
18
 
19
/* some definitions for the dedicated hardware pregs: */
20
 
21
#define Int_Preg_Min_Offset             1
22
#define Int_Preg_Max_Offset             31
23
#define Float_Preg_Min_Offset           32
24
#define Float_Preg_Max_Offset           63
25
#define Fcc_Preg_Min_Offset             64
26
#define Fcc_Preg_Max_Offset             71
27
#define Last_Dedicated_Preg_Offset      Fcc_Preg_Max_Offset
28
 
29
/* The offsets for return registers are fixed: */
30
#define First_Int_Preg_Return_Offset  2 /* register v0 */
31
#define Last_Int_Preg_Return_Offset 3 /* register v1 */
32
#define First_Float_Preg_Return_Offset  32  /* register f0 */
33
#define Last_Float_Preg_Return_Offset 34  /* register f2 */
34
#define Stack_Pointer_Preg_Offset 29  /* register sp */
35
#define Frame_Pointer_Preg_Offset 30  /* register fp */
36
#define First_Int_Preg_Param_Offset 4 /* register a0 */
37
#define First_Float_Preg_Param_Offset 44  /* register f12 */
38
#define Static_Link_Preg_Offset   2
39
 
40
#define MAX_NUMBER_OF_REGISTERS_FOR_RETURN 2
41
#define MAX_NUMBER_OF_REGISTER_PARAMETERS 8
42
 
43
/* most of the interface is shared between targets */
44
#include "targ_sim_core.h"
45
 
46
#ifdef __cplusplus
47
}
48
#endif
49
#endif /* targ_sim_INCLUDED */
50