diff options
Diffstat (limited to 'bcc/codefrag.c')
-rw-r--r-- | bcc/codefrag.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/bcc/codefrag.c b/bcc/codefrag.c index 7783562..d796810 100644 --- a/bcc/codefrag.c +++ b/bcc/codefrag.c @@ -1619,6 +1619,18 @@ offset_T value; outstr(name); outset(); outshex(value); +#ifdef FRAMEPOINTER +#ifdef I8088 +#ifndef NO_DEL_PUSH + if (framep && optimise && !callersaves && value+sp-framep >= 0 + && !(regfuse & callee1mask)) { + outbyte('-'); + outstr(funcname); + outstr(".off"); + } +#endif +#endif +#endif outnl(); #ifdef FRAMEPOINTER if (framep) @@ -1629,6 +1641,16 @@ offset_T value; outstr(name); outset(); outshex(value+sp-framep); +#ifdef I8088 +#ifndef NO_DEL_PUSH + if (optimise && !callersaves && value+sp-framep < 0 + && !(regfuse & callee1mask)) { + outbyte('+'); + outstr(funcname); + outstr(".off"); + } +#endif +#endif outnl(); } #endif |