Commit 96e6e05372837a00d26284a8ba25ecb533a2e410
1 parent
e2222c39
fixed invalid code gen
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@361 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
3 additions
and
0 deletions
ops_template.h
| @@ -556,12 +556,14 @@ void OPPROTO glue(op_string_jz_sub, SUFFIX)(void) | @@ -556,12 +556,14 @@ void OPPROTO glue(op_string_jz_sub, SUFFIX)(void) | ||
| 556 | { | 556 | { |
| 557 | if ((DATA_TYPE)CC_DST == 0) | 557 | if ((DATA_TYPE)CC_DST == 0) |
| 558 | JUMP_TB(PARAM1, 1, PARAM2); | 558 | JUMP_TB(PARAM1, 1, PARAM2); |
| 559 | + FORCE_RET(); | ||
| 559 | } | 560 | } |
| 560 | 561 | ||
| 561 | void OPPROTO glue(op_string_jnz_sub, SUFFIX)(void) | 562 | void OPPROTO glue(op_string_jnz_sub, SUFFIX)(void) |
| 562 | { | 563 | { |
| 563 | if ((DATA_TYPE)CC_DST != 0) | 564 | if ((DATA_TYPE)CC_DST != 0) |
| 564 | JUMP_TB(PARAM1, 1, PARAM2); | 565 | JUMP_TB(PARAM1, 1, PARAM2); |
| 566 | + FORCE_RET(); | ||
| 565 | } | 567 | } |
| 566 | 568 | ||
| 567 | #if DATA_BITS >= 16 | 569 | #if DATA_BITS >= 16 |
| @@ -569,6 +571,7 @@ void OPPROTO glue(op_jz_ecx, SUFFIX)(void) | @@ -569,6 +571,7 @@ void OPPROTO glue(op_jz_ecx, SUFFIX)(void) | ||
| 569 | { | 571 | { |
| 570 | if ((DATA_TYPE)ECX == 0) | 572 | if ((DATA_TYPE)ECX == 0) |
| 571 | JUMP_TB(PARAM1, 1, PARAM2); | 573 | JUMP_TB(PARAM1, 1, PARAM2); |
| 574 | + FORCE_RET(); | ||
| 572 | } | 575 | } |
| 573 | #endif | 576 | #endif |
| 574 | 577 |