9314c95e215a4cb1b28a1c608d8abe9986a71253
[qemu] / target-mips / op_template.c
1 /*
2  *  MIPS emulation micro-operations templates for reg load & store for qemu.
3  * 
4  *  Copyright (c) 2004-2005 Jocelyn Mayer
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19  */
20
21 #if defined(REG)
22 void glue(op_load_gpr_T0_gpr, REG) (void)
23 {
24     T0 = env->gpr[REG];
25     RETURN();
26 }
27
28 void glue(op_store_T0_gpr_gpr, REG) (void)
29 {
30     env->gpr[REG] = T0;
31     RETURN();
32 }
33
34 void glue(op_load_gpr_T1_gpr, REG) (void)
35 {
36     T1 = env->gpr[REG];
37     RETURN();
38 }
39
40 void glue(op_store_T1_gpr_gpr, REG) (void)
41 {
42     env->gpr[REG] = T1;
43     RETURN();
44 }
45
46 void glue(op_load_gpr_T2_gpr, REG) (void)
47 {
48     T2 = env->gpr[REG];
49     RETURN();
50 }
51 #endif
52
53 #if defined (TN)
54 void glue(op_set_, TN) (void)
55 {
56     TN = PARAM1;
57     RETURN();
58 }
59
60 void glue (op_reset_, TN) (void)
61 {
62     TN = 0;
63     RETURN();
64 }
65 #endif