/[qemu]/qemu/target-arm/op.c
ViewVC logotype

Diff of /qemu/target-arm/op.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.11 by bellard, Sun Apr 17 19:16:13 2005 UTC revision 1.12 by bellard, Tue Apr 26 20:36:11 2005 UTC
# Line 251  void OPPROTO op_logic_T1_cc(void) Line 251  void OPPROTO op_logic_T1_cc(void)
251  void OPPROTO op_test_eq(void)  void OPPROTO op_test_eq(void)
252  {  {
253      if (env->NZF == 0)      if (env->NZF == 0)
254          JUMP_TB(op_test_eq, PARAM1, 0, PARAM2);          GOTO_LABEL_PARAM(1);;
255      FORCE_RET();      FORCE_RET();
256  }  }
257    
258  void OPPROTO op_test_ne(void)  void OPPROTO op_test_ne(void)
259  {  {
260      if (env->NZF != 0)      if (env->NZF != 0)
261          JUMP_TB(op_test_ne, PARAM1, 0, PARAM2);          GOTO_LABEL_PARAM(1);;
262      FORCE_RET();      FORCE_RET();
263  }  }
264    
265  void OPPROTO op_test_cs(void)  void OPPROTO op_test_cs(void)
266  {  {
267      if (env->CF != 0)      if (env->CF != 0)
268          JUMP_TB(op_test_cs, PARAM1, 0, PARAM2);          GOTO_LABEL_PARAM(1);
269      FORCE_RET();      FORCE_RET();
270  }  }
271    
272  void OPPROTO op_test_cc(void)  void OPPROTO op_test_cc(void)
273  {  {
274      if (env->CF == 0)      if (env->CF == 0)
275          JUMP_TB(op_test_cc, PARAM1, 0, PARAM2);          GOTO_LABEL_PARAM(1);
276      FORCE_RET();      FORCE_RET();
277  }  }
278    
279  void OPPROTO op_test_mi(void)  void OPPROTO op_test_mi(void)
280  {  {
281      if ((env->NZF & 0x80000000) != 0)      if ((env->NZF & 0x80000000) != 0)
282          JUMP_TB(op_test_mi, PARAM1, 0, PARAM2);          GOTO_LABEL_PARAM(1);
283      FORCE_RET();      FORCE_RET();
284  }  }
285    
286  void OPPROTO op_test_pl(void)  void OPPROTO op_test_pl(void)
287  {  {
288      if ((env->NZF & 0x80000000) == 0)      if ((env->NZF & 0x80000000) == 0)
289          JUMP_TB(op_test_pl, PARAM1, 0, PARAM2);          GOTO_LABEL_PARAM(1);
290      FORCE_RET();      FORCE_RET();
291  }  }
292    
293  void OPPROTO op_test_vs(void)  void OPPROTO op_test_vs(void)
294  {  {
295      if ((env->VF & 0x80000000) != 0)      if ((env->VF & 0x80000000) != 0)
296          JUMP_TB(op_test_vs, PARAM1, 0, PARAM2);          GOTO_LABEL_PARAM(1);
297      FORCE_RET();      FORCE_RET();
298  }  }
299    
300  void OPPROTO op_test_vc(void)  void OPPROTO op_test_vc(void)
301  {  {
302      if ((env->VF & 0x80000000) == 0)      if ((env->VF & 0x80000000) == 0)
303          JUMP_TB(op_test_vc, PARAM1, 0, PARAM2);          GOTO_LABEL_PARAM(1);
304      FORCE_RET();      FORCE_RET();
305  }  }
306    
307  void OPPROTO op_test_hi(void)  void OPPROTO op_test_hi(void)
308  {  {
309      if (env->CF != 0 && env->NZF != 0)      if (env->CF != 0 && env->NZF != 0)
310          JUMP_TB(op_test_hi, PARAM1, 0, PARAM2);          GOTO_LABEL_PARAM(1);
311      FORCE_RET();      FORCE_RET();
312  }  }
313    
314  void OPPROTO op_test_ls(void)  void OPPROTO op_test_ls(void)
315  {  {
316      if (env->CF == 0 || env->NZF == 0)      if (env->CF == 0 || env->NZF == 0)
317          JUMP_TB(op_test_ls, PARAM1, 0, PARAM2);          GOTO_LABEL_PARAM(1);
318      FORCE_RET();      FORCE_RET();
319  }  }
320    
321  void OPPROTO op_test_ge(void)  void OPPROTO op_test_ge(void)
322  {  {
323      if (((env->VF ^ env->NZF) & 0x80000000) == 0)      if (((env->VF ^ env->NZF) & 0x80000000) == 0)
324          JUMP_TB(op_test_ge, PARAM1, 0, PARAM2);          GOTO_LABEL_PARAM(1);
325      FORCE_RET();      FORCE_RET();
326  }  }
327    
328  void OPPROTO op_test_lt(void)  void OPPROTO op_test_lt(void)
329  {  {
330      if (((env->VF ^ env->NZF) & 0x80000000) != 0)      if (((env->VF ^ env->NZF) & 0x80000000) != 0)
331          JUMP_TB(op_test_lt, PARAM1, 0, PARAM2);          GOTO_LABEL_PARAM(1);
332      FORCE_RET();      FORCE_RET();
333  }  }
334    
335  void OPPROTO op_test_gt(void)  void OPPROTO op_test_gt(void)
336  {  {
337      if (env->NZF != 0 && ((env->VF ^ env->NZF) & 0x80000000) == 0)      if (env->NZF != 0 && ((env->VF ^ env->NZF) & 0x80000000) == 0)
338          JUMP_TB(op_test_gt, PARAM1, 0, PARAM2);          GOTO_LABEL_PARAM(1);
339      FORCE_RET();      FORCE_RET();
340  }  }
341    
342  void OPPROTO op_test_le(void)  void OPPROTO op_test_le(void)
343  {  {
344      if (env->NZF == 0 || ((env->VF ^ env->NZF) & 0x80000000) != 0)      if (env->NZF == 0 || ((env->VF ^ env->NZF) & 0x80000000) != 0)
345          JUMP_TB(op_test_le, PARAM1, 0, PARAM2);          GOTO_LABEL_PARAM(1);
346      FORCE_RET();      FORCE_RET();
347  }  }
348    
349  void OPPROTO op_jmp(void)  void OPPROTO op_jmp0(void)
350  {  {
351      JUMP_TB(op_jmp, PARAM1, 1, PARAM2);      JUMP_TB(op_jmp0, PARAM1, 0, PARAM2);
352    }
353    
354    void OPPROTO op_jmp1(void)
355    {
356        JUMP_TB(op_jmp1, PARAM1, 1, PARAM2);
357  }  }
358    
359  void OPPROTO op_exit_tb(void)  void OPPROTO op_exit_tb(void)

Legend:
Removed from v.1.11  
changed lines
  Added in v.1.12

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26