/[qemu]/qemu/op-i386.c
ViewVC logotype

Diff of /qemu/op-i386.c

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

revision 1.44 by bellard, Sun Jul 27 21:11:27 2003 UTC revision 1.45 by bellard, Sun Aug 10 21:47:00 2003 UTC
# Line 376  void OPPROTO op_andl_A0_ffff(void) Line 376  void OPPROTO op_andl_A0_ffff(void)
376    
377  /* memory access */  /* memory access */
378    
379  void OPPROTO op_ldub_T0_A0(void)  #define MEMSUFFIX
380  {  #include "ops_mem.h"
     T0 = ldub((uint8_t *)A0);  
 }  
   
 void OPPROTO op_ldsb_T0_A0(void)  
 {  
     T0 = ldsb((int8_t *)A0);  
 }  
   
 void OPPROTO op_lduw_T0_A0(void)  
 {  
     T0 = lduw((uint8_t *)A0);  
 }  
   
 void OPPROTO op_ldsw_T0_A0(void)  
 {  
     T0 = ldsw((int8_t *)A0);  
 }  
   
 void OPPROTO op_ldl_T0_A0(void)  
 {  
     T0 = ldl((uint8_t *)A0);  
 }  
381    
382  void OPPROTO op_ldub_T1_A0(void)  #define MEMSUFFIX _user
383  {  #include "ops_mem.h"
     T1 = ldub((uint8_t *)A0);  
 }  
   
 void OPPROTO op_ldsb_T1_A0(void)  
 {  
     T1 = ldsb((int8_t *)A0);  
 }  
   
 void OPPROTO op_lduw_T1_A0(void)  
 {  
     T1 = lduw((uint8_t *)A0);  
 }  
384    
385  void OPPROTO op_ldsw_T1_A0(void)  #define MEMSUFFIX _kernel
386  {  #include "ops_mem.h"
     T1 = ldsw((int8_t *)A0);  
 }  
   
 void OPPROTO op_ldl_T1_A0(void)  
 {  
     T1 = ldl((uint8_t *)A0);  
 }  
   
 void OPPROTO op_stb_T0_A0(void)  
 {  
     stb((uint8_t *)A0, T0);  
 }  
   
 void OPPROTO op_stw_T0_A0(void)  
 {  
     stw((uint8_t *)A0, T0);  
 }  
   
 void OPPROTO op_stl_T0_A0(void)  
 {  
     stl((uint8_t *)A0, T0);  
 }  
387    
388  /* used for bit operations */  /* used for bit operations */
389    
# Line 635  void OPPROTO op_movswl_DX_AX(void) Line 579  void OPPROTO op_movswl_DX_AX(void)
579      EDX = (EDX & 0xffff0000) | (((int16_t)EAX >> 15) & 0xffff);      EDX = (EDX & 0xffff0000) | (((int16_t)EAX >> 15) & 0xffff);
580  }  }
581    
582    /* string ops helpers */
583    
584    void OPPROTO op_addl_ESI_T0(void)
585    {
586        ESI += T0;
587    }
588    
589    void OPPROTO op_addw_ESI_T0(void)
590    {
591        ESI = (ESI & ~0xffff) | ((ESI + T0) & 0xffff);
592    }
593    
594    void OPPROTO op_addl_EDI_T0(void)
595    {
596        EDI += T0;
597    }
598    
599    void OPPROTO op_addw_EDI_T0(void)
600    {
601        EDI = (EDI & ~0xffff) | ((EDI + T0) & 0xffff);
602    }
603    
604    void OPPROTO op_decl_ECX(void)
605    {
606        ECX--;
607    }
608    
609    void OPPROTO op_decw_ECX(void)
610    {
611        ECX = (ECX & ~0xffff) | ((ECX - 1) & 0xffff);
612    }
613    
614  /* push/pop */  /* push/pop */
615    
616  void op_pushl_T0(void)  void op_pushl_T0(void)

Legend:
Removed from v.1.44  
changed lines
  Added in v.1.45

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