From Lucho: no need to preserve ebx

git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@964 6ac86273-5f31-0410-b378-82cca8765d1b
This commit is contained in:
Bart Oldeman 2004-05-28 11:58:18 +00:00
parent 57bac85ae3
commit 0168037d73
3 changed files with 5 additions and 8 deletions

View File

@ -117,8 +117,9 @@ irp_hi equ 26
; later
;
; assumption:
; we have never seen MSVC to use anything but eax,ecx, edx
; so we only protect eax, ebx, ecx, edx to conserve stack space
; we have never seen MSVC to use anything but eax, ecx, edx,
; nor have we seen Borland C to use anything but eax, edx,
; so we only protect eax, ecx, edx to conserve stack space
;
; to save even more stack space, we save only HIGH part of regs
; at some expense of slower execution. it's easier anyway :-)
@ -148,8 +149,6 @@ irp_hi equ 26
%else
push eax
pop ax
push ebx
pop bx
push ecx
pop cx
push edx
@ -168,8 +167,6 @@ irp_hi equ 26
pop edx
push cx
pop ecx
push bx
pop ebx
push ax
pop eax
%endif

View File

@ -352,7 +352,7 @@ int21_exit_nodec:
%ifdef WATCOM
sub bp, 4 ; for fs and gs only
%else
sub bp, 8 ; high parts of eax, ebx, ecx, edx
sub bp, 6 ; high parts of eax, ecx, edx
%endif
%endif

View File

@ -1635,7 +1635,7 @@ struct int2f12regs {
#ifdef __WATCOMC__
/* UWORD gs, fs; ** GS/FS are protected through SI/DI */
#else
UWORD high_edx, high_ecx, high_ebx, high_eax;
UWORD high_edx, high_ecx, high_eax;
#endif
#endif
UWORD es, ds;