diff options
Diffstat (limited to 'bcc/softop.c')
-rw-r--r-- | bcc/softop.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/bcc/softop.c b/bcc/softop.c index acb7b27..dcfa8ae 100644 --- a/bcc/softop.c +++ b/bcc/softop.c @@ -219,7 +219,16 @@ struct symstruct *target; { case DIVOP: #ifdef I8088 - call("idiv_"); + if (uflag) + call("idiv_"); + else { + if (i386_32) + outnop1str("cdq"); + else + outnop1str("cwd"); + outop2str("idiv\t"); + outregname(INDREG0); + } #else call("idiv"); #endif |