Commit 0499e4a02a5f7b53f48777de1e04b8440c740d85

Authored by bellard
1 parent 0dcece76

cwde and cdq fix in 64 bit mode


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2373 c046a42c-6fe2-441c-8c8c-71466251a162
Showing 1 changed file with 2 additions and 2 deletions
target-i386/op.c
... ... @@ -788,7 +788,7 @@ void OPPROTO op_movzwl_T0_T0(void)
788 788  
789 789 void OPPROTO op_movswl_EAX_AX(void)
790 790 {
791   - EAX = (int16_t)EAX;
  791 + EAX = (uint32_t)((int16_t)EAX);
792 792 }
793 793  
794 794 #ifdef TARGET_X86_64
... ... @@ -810,7 +810,7 @@ void OPPROTO op_movsbw_AX_AL(void)
810 810  
811 811 void OPPROTO op_movslq_EDX_EAX(void)
812 812 {
813   - EDX = (int32_t)EAX >> 31;
  813 + EDX = (uint32_t)((int32_t)EAX >> 31);
814 814 }
815 815  
816 816 void OPPROTO op_movswl_DX_AX(void)
... ...