VirtualBox

Changeset 1818 in vbox for trunk/src/recompiler/new


Ignore:
Timestamp:
Mar 30, 2007 5:43:05 AM (18 years ago)
Author:
vboxsync
Message:

vista 64 loads dlls above 4GB, so do indirect calls/jmps.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/recompiler/new/VBoxREMWrapperA.asm

    r1 r1818  
    3030
    3131BEGINPROC WrapGCC2MSC0Int
     32%ifdef USE_DIRECT_CALLS
    3233    jmp     $+5+0deadbeefh
     34%else
     35    mov     rax, 0xdeadf00df00ddead
     36    jmp     rax
     37%endif
    3338ENDPROC WrapGCC2MSC0Int
    3439
     
    4045
    4146    mov     rcx, rdi
    42     call    $+5+0deadbeefh
     47%ifdef USE_DIRECT_CALLS
     48    call    $+5+0deadbeefh
     49%else
     50    mov     rax, 0xdeadf00df00ddead
     51    call    rax
     52%endif
    4353
    4454    leave
     
    5464    mov     rdx, rsi
    5565    mov     rcx, rdi
    56     call    $+5+0deadbeefh
     66%ifdef USE_DIRECT_CALLS
     67    call    $+5+0deadbeefh
     68%else
     69    mov     rax, 0xdeadf00df00ddead
     70    call    rax
     71%endif
    5772
    5873    leave
     
    6984    mov     rdx, rsi
    7085    mov     rcx, rdi
    71     call    $+5+0deadbeefh
     86%ifdef USE_DIRECT_CALLS
     87    call    $+5+0deadbeefh
     88%else
     89    mov     rax, 0xdeadf00df00ddead
     90    call    rax
     91%endif
    7292
    7393    leave
     
    85105    mov     rdx, rsi
    86106    mov     rcx, rdi
    87     call    $+5+0deadbeefh
     107%ifdef USE_DIRECT_CALLS
     108    call    $+5+0deadbeefh
     109%else
     110    mov     rax, 0xdeadf00df00ddead
     111    call    rax
     112%endif
    88113
    89114    leave
     
    102127    mov     rdx, rsi
    103128    mov     rcx, rdi
    104     call    $+5+0deadbeefh
     129%ifdef USE_DIRECT_CALLS
     130    call    $+5+0deadbeefh
     131%else
     132    mov     rax, 0xdeadf00df00ddead
     133    call    rax
     134%endif
    105135
    106136    leave
     
    120150    mov     rdx, rsi
    121151    mov     rcx, rdi
    122     call    $+5+0deadbeefh
     152%ifdef USE_DIRECT_CALLS
     153    call    $+5+0deadbeefh
     154%else
     155    mov     rax, 0xdeadf00df00ddead
     156    call    rax
     157%endif
    123158
    124159    leave
     
    140175    mov     rdx, rsi
    141176    mov     rcx, rdi
    142     call    $+5+0deadbeefh
     177%ifdef USE_DIRECT_CALLS
     178    call    $+5+0deadbeefh
     179%else
     180    mov     rax, 0xdeadf00df00ddead
     181    call    rax
     182%endif
    143183
    144184    leave
     
    162202    mov     rdx, rsi
    163203    mov     rcx, rdi
    164     call    $+5+0deadbeefh
     204%ifdef USE_DIRECT_CALLS
     205    call    $+5+0deadbeefh
     206%else
     207    mov     rax, 0xdeadf00df00ddead
     208    call    rax
     209%endif
    165210
    166211    leave
     
    186231    mov     rdx, rsi
    187232    mov     rcx, rdi
    188     call    $+5+0deadbeefh
     233%ifdef USE_DIRECT_CALLS
     234    call    $+5+0deadbeefh
     235%else
     236    mov     rax, 0xdeadf00df00ddead
     237    call    rax
     238%endif
    189239
    190240    leave
     
    212262    mov     rdx, rsi
    213263    mov     rcx, rdi
    214     call    $+5+0deadbeefh
     264%ifdef USE_DIRECT_CALLS
     265    call    $+5+0deadbeefh
     266%else
     267    mov     rax, 0xdeadf00df00ddead
     268    call    rax
     269%endif
    215270
    216271    leave
     
    240295    mov     rdx, rsi
    241296    mov     rcx, rdi
    242     call    $+5+0deadbeefh
     297%ifdef USE_DIRECT_CALLS
     298    call    $+5+0deadbeefh
     299%else
     300    mov     rax, 0xdeadf00df00ddead
     301    call    rax
     302%endif
    243303
    244304    leave
     
    270330    mov     rdx, rsi
    271331    mov     rcx, rdi
    272     call    $+5+0deadbeefh
     332%ifdef USE_DIRECT_CALLS
     333    call    $+5+0deadbeefh
     334%else
     335    mov     rax, 0xdeadf00df00ddead
     336    call    rax
     337%endif
    273338
    274339    leave
     
    299364    mov     [rsp], rcx                  ; (*)
    300365    mov     rsi, r11                    ; rsi is preserved by the callee.
    301     call    $+5+0deadbeefh
     366%ifdef USE_DIRECT_CALLS
     367    call    $+5+0deadbeefh
     368%else
     369    mov     rax, 0xdeadf00df00ddead
     370    call    rax
     371%endif
     372
    302373    add     rsp, 30h
    303374    jmp     rsi
     
    319390    mov     [ebp - 18h], rdi
    320391
    321     call    $+5+0deadbeefh
     392%ifdef USE_DIRECT_CALLS
     393    call    $+5+0deadbeefh
     394%else
     395    mov     rax, 0xdeadf00df00ddead
     396    call    rax
     397%endif
    322398
    323399    mov     rdi, [ebp - 18h]
     
    336412
    337413    mov     rdi, rcx
    338     call    $+5+0deadbeefh
     414%ifdef USE_DIRECT_CALLS
     415    call    $+5+0deadbeefh
     416%else
     417    mov     rax, 0xdeadf00df00ddead
     418    call    rax
     419%endif
    339420
    340421    mov     rdi, [ebp - 18h]
     
    354435    mov     rdi, rcx
    355436    mov     rsi, rdx
    356     call    $+5+0deadbeefh
     437%ifdef USE_DIRECT_CALLS
     438    call    $+5+0deadbeefh
     439%else
     440    mov     rax, 0xdeadf00df00ddead
     441    call    rax
     442%endif
    357443
    358444    mov     rdi, [ebp - 18h]
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