VirtualBox

Changeset 2293 in kBuild for trunk/src/kash/shforkA-win.asm


Ignore:
Timestamp:
Feb 28, 2009 7:25:12 AM (16 years ago)
Author:
bird
Message:

kash: forking on windows (almost there).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/kash/shforkA-win.asm

    r2292 r2293  
    3232 %define NAME(name) _ %+ name
    3333%endif
     34
     35;; The stack size. This is also defined in shfork-win.c.
     36%define SHFORK_STACK_SIZE (1*1024*1024)
    3437
    3538
     
    108111        mov     [gs:08h], rax
    109112.below:
    110         lea     r9, [rax - 1*1024*1024]
     113        lea     r9, [rax - SHFORK_STACK_SIZE]
    111114        cmp     r9, r11
    112115        ja      .above
     
    132135        mov     [fs:04h], rax
    133136.below:
    134         lea     edx, [eax - 1*1024*1024]
     137        lea     edx, [eax - SHFORK_STACK_SIZE]
    135138        cmp     edx, ecx
    136139        ja      .above
     
    175178;;
    176179; sh_fork() worker
     180;
     181; @returns      See fork().
     182; @param        psh
    177183;
    178184NAME(shfork_do_it):
     
    230236        ;
    231237%ifdef KBUILD_ARCH_AMD64
    232         mov     rcx, rsp
    233 %else
    234         mov     ecx, esp
     238        ;mov     rcx, rcx               ; psh
     239        mov     rdx, rsp                ; stack_ptr
     240        sub     rsp, 20h
     241        call    NAME(shfork_body)
     242        lea     rsp, [rsp + 20h]
     243%else
     244        mov     edx, esp
     245        mov     ecx, [ebp + 8h]         ; psh
    235246        sub     esp, 20h
    236         mov     [esp], ecx
    237 %endif
     247        mov     [esp    ], edx
     248        mov     [esp + 4], ecx          ; stack_ptr
    238249        call    NAME(shfork_body)
    239 %ifdef KBUILD_ARCH_AMD64
    240250        lea     esp, [esp + 20h]
    241251%endif
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette