Lines Matching +full:0 +full:- +full:9
4 * Copyright (c) 2003-2008 Fabrice Bellard
22 #include "user-internals.h"
24 #include "signal-common.h"
29 env->pc = env->sregs[EPC1]; in xtensa_rfw()
34 env->sregs[WINDOW_START] |= (1 << env->sregs[WINDOW_BASE]); in xtensa_rfwu()
40 env->sregs[WINDOW_START] &= ~(1 << env->sregs[WINDOW_BASE]); in xtensa_rfwo()
46 put_user_ual(env->regs[0], env->regs[5] - 16); in xtensa_overflow4()
47 put_user_ual(env->regs[1], env->regs[5] - 12); in xtensa_overflow4()
48 put_user_ual(env->regs[2], env->regs[5] - 8); in xtensa_overflow4()
49 put_user_ual(env->regs[3], env->regs[5] - 4); in xtensa_overflow4()
55 get_user_ual(env->regs[0], env->regs[5] - 16); in xtensa_underflow4()
56 get_user_ual(env->regs[1], env->regs[5] - 12); in xtensa_underflow4()
57 get_user_ual(env->regs[2], env->regs[5] - 8); in xtensa_underflow4()
58 get_user_ual(env->regs[3], env->regs[5] - 4); in xtensa_underflow4()
64 put_user_ual(env->regs[0], env->regs[9] - 16); in xtensa_overflow8()
65 get_user_ual(env->regs[0], env->regs[1] - 12); in xtensa_overflow8()
66 put_user_ual(env->regs[1], env->regs[9] - 12); in xtensa_overflow8()
67 put_user_ual(env->regs[2], env->regs[9] - 8); in xtensa_overflow8()
68 put_user_ual(env->regs[3], env->regs[9] - 4); in xtensa_overflow8()
69 put_user_ual(env->regs[4], env->regs[0] - 32); in xtensa_overflow8()
70 put_user_ual(env->regs[5], env->regs[0] - 28); in xtensa_overflow8()
71 put_user_ual(env->regs[6], env->regs[0] - 24); in xtensa_overflow8()
72 put_user_ual(env->regs[7], env->regs[0] - 20); in xtensa_overflow8()
78 get_user_ual(env->regs[0], env->regs[9] - 16); in xtensa_underflow8()
79 get_user_ual(env->regs[1], env->regs[9] - 12); in xtensa_underflow8()
80 get_user_ual(env->regs[2], env->regs[9] - 8); in xtensa_underflow8()
81 get_user_ual(env->regs[7], env->regs[1] - 12); in xtensa_underflow8()
82 get_user_ual(env->regs[3], env->regs[9] - 4); in xtensa_underflow8()
83 get_user_ual(env->regs[4], env->regs[7] - 32); in xtensa_underflow8()
84 get_user_ual(env->regs[5], env->regs[7] - 28); in xtensa_underflow8()
85 get_user_ual(env->regs[6], env->regs[7] - 24); in xtensa_underflow8()
86 get_user_ual(env->regs[7], env->regs[7] - 20); in xtensa_underflow8()
92 put_user_ual(env->regs[0], env->regs[13] - 16); in xtensa_overflow12()
93 get_user_ual(env->regs[0], env->regs[1] - 12); in xtensa_overflow12()
94 put_user_ual(env->regs[1], env->regs[13] - 12); in xtensa_overflow12()
95 put_user_ual(env->regs[2], env->regs[13] - 8); in xtensa_overflow12()
96 put_user_ual(env->regs[3], env->regs[13] - 4); in xtensa_overflow12()
97 put_user_ual(env->regs[4], env->regs[0] - 48); in xtensa_overflow12()
98 put_user_ual(env->regs[5], env->regs[0] - 44); in xtensa_overflow12()
99 put_user_ual(env->regs[6], env->regs[0] - 40); in xtensa_overflow12()
100 put_user_ual(env->regs[7], env->regs[0] - 36); in xtensa_overflow12()
101 put_user_ual(env->regs[8], env->regs[0] - 32); in xtensa_overflow12()
102 put_user_ual(env->regs[9], env->regs[0] - 28); in xtensa_overflow12()
103 put_user_ual(env->regs[10], env->regs[0] - 24); in xtensa_overflow12()
104 put_user_ual(env->regs[11], env->regs[0] - 20); in xtensa_overflow12()
110 get_user_ual(env->regs[0], env->regs[13] - 16); in xtensa_underflow12()
111 get_user_ual(env->regs[1], env->regs[13] - 12); in xtensa_underflow12()
112 get_user_ual(env->regs[2], env->regs[13] - 8); in xtensa_underflow12()
113 get_user_ual(env->regs[11], env->regs[1] - 12); in xtensa_underflow12()
114 get_user_ual(env->regs[3], env->regs[13] - 4); in xtensa_underflow12()
115 get_user_ual(env->regs[4], env->regs[11] - 48); in xtensa_underflow12()
116 get_user_ual(env->regs[5], env->regs[11] - 44); in xtensa_underflow12()
117 get_user_ual(env->regs[6], env->regs[11] - 40); in xtensa_underflow12()
118 get_user_ual(env->regs[7], env->regs[11] - 36); in xtensa_underflow12()
119 get_user_ual(env->regs[8], env->regs[11] - 32); in xtensa_underflow12()
120 get_user_ual(env->regs[9], env->regs[11] - 28); in xtensa_underflow12()
121 get_user_ual(env->regs[10], env->regs[11] - 24); in xtensa_underflow12()
122 get_user_ual(env->regs[11], env->regs[11] - 20); in xtensa_underflow12()
138 env->sregs[PS] &= ~PS_EXCM; in cpu_loop()
163 switch (env->sregs[EXCCAUSE]) { in cpu_loop()
166 env->sregs[EPC1]); in cpu_loop()
170 env->sregs[EPC1]); in cpu_loop()
174 env->pc += 3; in cpu_loop()
175 ret = do_syscall(env, env->regs[2], in cpu_loop()
176 env->regs[6], env->regs[3], in cpu_loop()
177 env->regs[4], env->regs[5], in cpu_loop()
178 env->regs[8], env->regs[9], 0, 0); in cpu_loop()
181 env->regs[2] = ret; in cpu_loop()
184 case -QEMU_ERESTARTSYS: in cpu_loop()
185 env->pc -= 3; in cpu_loop()
188 case -QEMU_ESIGRETURN: in cpu_loop()
194 env->sregs[PS] = deposit32(env->sregs[PS], in cpu_loop()
197 env->sregs[WINDOW_BASE]); in cpu_loop()
199 switch (env->regs[0] & 0xc0000000) { in cpu_loop()
200 case 0x00000000: in cpu_loop()
201 case 0x40000000: in cpu_loop()
202 xtensa_rotate_window(env, -1); in cpu_loop()
206 case 0x80000000: in cpu_loop()
207 xtensa_rotate_window(env, -2); in cpu_loop()
211 case 0xc0000000: in cpu_loop()
212 xtensa_rotate_window(env, -3); in cpu_loop()
220 env->sregs[EPC1]); in cpu_loop()
224 fprintf(stderr, "exccause = %d\n", env->sregs[EXCCAUSE]); in cpu_loop()
230 env->sregs[EPC1]); in cpu_loop()
244 for (i = 0; i < 16; ++i) { in target_cpu_copy_regs()
245 env->regs[i] = regs->areg[i]; in target_cpu_copy_regs()
247 env->sregs[WINDOW_START] = regs->windowstart; in target_cpu_copy_regs()
248 env->pc = regs->pc; in target_cpu_copy_regs()