VirtualBox

Changeset 42699 in vbox for trunk/src/VBox/VMM


Ignore:
Timestamp:
Aug 8, 2012 11:38:11 PM (13 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
79903
Message:

IEMAllAImpl.asm: Fixed the wrong 'RET X' stuff in 32-bit mode once and for all.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMAll/IEMAllAImpl.asm

    r42660 r42699  
    8686 %macro PROLOGUE_1_ARGS 0
    8787 %endmacro
    88  %macro EPILOGUE_1_ARGS 1
     88 %macro EPILOGUE_1_ARGS 0
    8989        ret
    9090 %endmacro
     91 %macro EPILOGUE_1_ARGS_EX 0
     92        ret
     93 %endmacro
    9194
    9295 %macro PROLOGUE_2_ARGS 0
    9396 %endmacro
    94  %macro EPILOGUE_2_ARGS 1
     97 %macro EPILOGUE_2_ARGS 0
    9598        ret
    9699 %endmacro
     100 %macro EPILOGUE_2_ARGS_EX 1
     101        ret
     102 %endmacro
    97103
    98104 %macro PROLOGUE_3_ARGS 0
    99105 %endmacro
    100  %macro EPILOGUE_3_ARGS 1
     106 %macro EPILOGUE_3_ARGS 0
    101107        ret
    102108 %endmacro
     109 %macro EPILOGUE_3_ARGS_EX 1
     110        ret
     111 %endmacro
    103112
    104113 %macro PROLOGUE_4_ARGS 0
    105114 %endmacro
    106  %macro EPILOGUE_4_ARGS 1
     115 %macro EPILOGUE_4_ARGS 0
     116        ret
     117 %endmacro
     118 %macro EPILOGUE_4_ARGS_EX 1
    107119        ret
    108120 %endmacro
     
    165177        push    edi
    166178 %endmacro
    167  %macro EPILOGUE_1_ARGS 1
     179 %macro EPILOGUE_1_ARGS 0
     180        pop     edi
     181        ret     0
     182 %endmacro
     183 %macro EPILOGUE_1_ARGS_EX 1
    168184        pop     edi
    169185        ret     %1
     
    173189        push    edi
    174190 %endmacro
    175  %macro EPILOGUE_2_ARGS 1
     191 %macro EPILOGUE_2_ARGS 0
     192        pop     edi
     193        ret     0
     194 %endmacro
     195 %macro EPILOGUE_2_ARGS_EX 1
    176196        pop     edi
    177197        ret     %1
     
    183203        push    edi
    184204 %endmacro
    185  %macro EPILOGUE_3_ARGS 1
     205 %macro EPILOGUE_3_ARGS_EX 1
     206  %if (%1) < 4
     207   %error "With three args, at least 4 bytes must be remove from the stack upon return (32-bit)."
     208  %endif
    186209        pop     edi
    187210        pop     ebx
    188211        ret     %1
     212 %endmacro
     213 %macro EPILOGUE_3_ARGS 0
     214        EPILOGUE_3_ARGS_EX 4
    189215 %endmacro
    190216
     
    196222        mov     esi, [esp + 12 + 4 + 4]
    197223 %endmacro
    198  %macro EPILOGUE_4_ARGS 1
     224 %macro EPILOGUE_4_ARGS_EX 1
     225  %if (%1) < 8
     226   %error "With four args, at least 8 bytes must be remove from the stack upon return (32-bit)."
     227  %endif
    199228        pop     esi
    200229        pop     edi
    201230        pop     ebx
    202231        ret     %1
     232 %endmacro
     233 %macro EPILOGUE_4_ARGS 0
     234        EPILOGUE_4_ARGS_EX 8
    203235 %endmacro
    204236
     
    296328        %1      byte [A0], A1_8
    297329        IEM_SAVE_FLAGS                 A2, %3, %4
    298         EPILOGUE_3_ARGS 4
     330        EPILOGUE_3_ARGS
    299331ENDPROC iemAImpl_ %+ %1 %+ _u8
    300332
     
    304336        %1      word [A0], A1_16
    305337        IEM_SAVE_FLAGS                 A2, %3, %4
    306         EPILOGUE_3_ARGS 4
     338        EPILOGUE_3_ARGS
    307339ENDPROC iemAImpl_ %+ %1 %+ _u16
    308340
     
    312344        %1      dword [A0], A1_32
    313345        IEM_SAVE_FLAGS                 A2, %3, %4
    314         EPILOGUE_3_ARGS 4
     346        EPILOGUE_3_ARGS
    315347ENDPROC iemAImpl_ %+ %1 %+ _u32
    316348
     
    321353        %1      qword [A0], A1
    322354        IEM_SAVE_FLAGS                 A2, %3, %4
    323         EPILOGUE_3_ARGS 8
     355        EPILOGUE_3_ARGS_EX 8
    324356ENDPROC iemAImpl_ %+ %1 %+ _u64
    325357 %else ; stub it for now - later, replace with hand coded stuff.
     
    337369        lock %1 byte [A0], A1_8
    338370        IEM_SAVE_FLAGS                 A2, %3, %4
    339         EPILOGUE_3_ARGS 4
     371        EPILOGUE_3_ARGS
    340372ENDPROC iemAImpl_ %+ %1 %+ _u8_locked
    341373
     
    345377        lock %1 word [A0], A1_16
    346378        IEM_SAVE_FLAGS                 A2, %3, %4
    347         EPILOGUE_3_ARGS 4
     379        EPILOGUE_3_ARGS
    348380ENDPROC iemAImpl_ %+ %1 %+ _u16_locked
    349381
     
    353385        lock %1 dword [A0], A1_32
    354386        IEM_SAVE_FLAGS                 A2, %3, %4
    355         EPILOGUE_3_ARGS  4
     387        EPILOGUE_3_ARGS
    356388ENDPROC iemAImpl_ %+ %1 %+ _u32_locked
    357389
     
    362394        lock %1 qword [A0], A1
    363395        IEM_SAVE_FLAGS                 A2, %3, %4
    364         EPILOGUE_3_ARGS 8
     396        EPILOGUE_3_ARGS_EX 8
    365397ENDPROC iemAImpl_ %+ %1 %+ _u64_locked
    366398  %else ; stub it for now - later, replace with hand coded stuff.
     
    407439        %1      word [A0], A1_16
    408440        IEM_SAVE_FLAGS                 A2, %3, %4
    409         EPILOGUE_3_ARGS 4
     441        EPILOGUE_3_ARGS
    410442ENDPROC iemAImpl_ %+ %1 %+ _u16
    411443
     
    415447        %1      dword [A0], A1_32
    416448        IEM_SAVE_FLAGS                 A2, %3, %4
    417         EPILOGUE_3_ARGS 4
     449        EPILOGUE_3_ARGS
    418450ENDPROC iemAImpl_ %+ %1 %+ _u32
    419451
     
    424456        %1      qword [A0], A1
    425457        IEM_SAVE_FLAGS                 A2, %3, %4
    426         EPILOGUE_3_ARGS 8
     458        EPILOGUE_3_ARGS_EX 8
    427459ENDPROC iemAImpl_ %+ %1 %+ _u64
    428460 %else ; stub it for now - later, replace with hand coded stuff.
     
    440472        lock %1 word [A0], A1_16
    441473        IEM_SAVE_FLAGS                 A2, %3, %4
    442         EPILOGUE_3_ARGS 4
     474        EPILOGUE_3_ARGS
    443475ENDPROC iemAImpl_ %+ %1 %+ _u16_locked
    444476
     
    448480        lock %1 dword [A0], A1_32
    449481        IEM_SAVE_FLAGS                 A2, %3, %4
    450         EPILOGUE_3_ARGS 4
     482        EPILOGUE_3_ARGS
    451483ENDPROC iemAImpl_ %+ %1 %+ _u32_locked
    452484
     
    457489        lock %1 qword [A0], A1
    458490        IEM_SAVE_FLAGS                 A2, %3, %4
    459         EPILOGUE_3_ARGS 8
     491        EPILOGUE_3_ARGS_EX 8
    460492ENDPROC iemAImpl_ %+ %1 %+ _u64_locked
    461493  %else ; stub it for now - later, replace with hand coded stuff.
     
    493525        mov     [A0], T0_16
    494526        IEM_SAVE_FLAGS                 A2, %2, %3
    495         EPILOGUE_3_ARGS 4
     527        EPILOGUE_3_ARGS
    496528ENDPROC iemAImpl_ %+ %1 %+ _u16
    497529
     
    502534        mov     [A0], T0_32
    503535        IEM_SAVE_FLAGS                 A2, %2, %3
    504         EPILOGUE_3_ARGS 4
     536        EPILOGUE_3_ARGS
    505537ENDPROC iemAImpl_ %+ %1 %+ _u32
    506538
     
    512544        mov     [A0], T0
    513545        IEM_SAVE_FLAGS                 A2, %2, %3
    514         EPILOGUE_3_ARGS 8
     546        EPILOGUE_3_ARGS_EX 8
    515547ENDPROC iemAImpl_ %+ %1 %+ _u64
    516548 %else ; stub it for now - later, replace with hand coded stuff.
     
    536568        mov     [A0], A1_16
    537569        IEM_SAVE_FLAGS       A2, (X86_EFL_OF | X86_EFL_CF), (X86_EFL_SF | X86_EFL_ZF | X86_EFL_AF | X86_EFL_PF)
    538         EPILOGUE_3_ARGS 4
     570        EPILOGUE_3_ARGS
    539571ENDPROC iemAImpl_imul_two_u16
    540572
     
    545577        mov     [A0], A1_32
    546578        IEM_SAVE_FLAGS       A2, (X86_EFL_OF | X86_EFL_CF), (X86_EFL_SF | X86_EFL_ZF | X86_EFL_AF | X86_EFL_PF)
    547         EPILOGUE_3_ARGS 4
     579        EPILOGUE_3_ARGS
    548580ENDPROC iemAImpl_imul_two_u32
    549581
     
    558590        int3 ;; @todo implement me
    559591%endif
    560         EPILOGUE_3_ARGS 8
     592        EPILOGUE_3_ARGS_EX 8
    561593ENDPROC iemAImpl_imul_two_u64
    562594
     
    574606        xchg    [A0], T0_8
    575607        mov     [A1], T0_8
    576         EPILOGUE_2_ARGS 0
     608        EPILOGUE_2_ARGS
    577609ENDPROC iemAImpl_xchg_u8
    578610
     
    582614        xchg    [A0], T0_16
    583615        mov     [A1], T0_16
    584         EPILOGUE_2_ARGS 0
     616        EPILOGUE_2_ARGS
    585617ENDPROC iemAImpl_xchg_u16
    586618
     
    590622        xchg    [A0], T0_32
    591623        mov     [A1], T0_32
    592         EPILOGUE_2_ARGS 0
     624        EPILOGUE_2_ARGS
    593625ENDPROC iemAImpl_xchg_u32
    594626
     
    599631        xchg    [A0], T0
    600632        mov     [A1], T0
    601         EPILOGUE_2_ARGS 0
     633        EPILOGUE_2_ARGS
    602634%else
    603635        int3
     
    622654        mov     [A1], T0_8
    623655        IEM_SAVE_FLAGS       A2, (X86_EFL_OF | X86_EFL_SF | X86_EFL_ZF | X86_EFL_AF | X86_EFL_PF | X86_EFL_CF), 0
    624         EPILOGUE_3_ARGS 4
     656        EPILOGUE_3_ARGS
    625657ENDPROC iemAImpl_xadd_u8
    626658
     
    632664        mov     [A1], T0_16
    633665        IEM_SAVE_FLAGS       A2, (X86_EFL_OF | X86_EFL_SF | X86_EFL_ZF | X86_EFL_AF | X86_EFL_PF | X86_EFL_CF), 0
    634         EPILOGUE_3_ARGS 4
     666        EPILOGUE_3_ARGS
    635667ENDPROC iemAImpl_xadd_u16
    636668
     
    642674        mov     [A1], T0_32
    643675        IEM_SAVE_FLAGS       A2, (X86_EFL_OF | X86_EFL_SF | X86_EFL_ZF | X86_EFL_AF | X86_EFL_PF | X86_EFL_CF), 0
    644         EPILOGUE_3_ARGS 4
     676        EPILOGUE_3_ARGS
    645677ENDPROC iemAImpl_xadd_u32
    646678
     
    653685        mov     [A1], T0
    654686        IEM_SAVE_FLAGS       A2, (X86_EFL_OF | X86_EFL_SF | X86_EFL_ZF | X86_EFL_AF | X86_EFL_PF | X86_EFL_CF), 0
    655         EPILOGUE_3_ARGS 4
     687        EPILOGUE_3_ARGS
    656688%else
    657689        int3
     
    667699        mov     [A1], T0_8
    668700        IEM_SAVE_FLAGS       A2, (X86_EFL_OF | X86_EFL_SF | X86_EFL_ZF | X86_EFL_AF | X86_EFL_PF | X86_EFL_CF), 0
    669         EPILOGUE_3_ARGS 4
     701        EPILOGUE_3_ARGS
    670702ENDPROC iemAImpl_xadd_u8_locked
    671703
     
    677709        mov     [A1], T0_16
    678710        IEM_SAVE_FLAGS       A2, (X86_EFL_OF | X86_EFL_SF | X86_EFL_ZF | X86_EFL_AF | X86_EFL_PF | X86_EFL_CF), 0
    679         EPILOGUE_3_ARGS 4
     711        EPILOGUE_3_ARGS
    680712ENDPROC iemAImpl_xadd_u16_locked
    681713
     
    687719        mov     [A1], T0_32
    688720        IEM_SAVE_FLAGS       A2, (X86_EFL_OF | X86_EFL_SF | X86_EFL_ZF | X86_EFL_AF | X86_EFL_PF | X86_EFL_CF), 0
    689         EPILOGUE_3_ARGS 4
     721        EPILOGUE_3_ARGS
    690722ENDPROC iemAImpl_xadd_u32_locked
    691723
     
    698730        mov     [A1], T0
    699731        IEM_SAVE_FLAGS       A2, (X86_EFL_OF | X86_EFL_SF | X86_EFL_ZF | X86_EFL_AF | X86_EFL_PF | X86_EFL_CF), 0
    700         EPILOGUE_3_ARGS 4
     732        EPILOGUE_3_ARGS
    701733%else
    702734        int3
     
    818850        mov     [A1], al
    819851        IEM_SAVE_FLAGS       A3, (X86_EFL_ZF | X86_EFL_CF | X86_EFL_PF | X86_EFL_AF | X86_EFL_SF | X86_EFL_OF), 0 ; clobbers T0+T1 (eax, r11/edi)
    820         EPILOGUE_4_ARGS 0
     852        EPILOGUE_4_ARGS
    821853ENDPROC iemAImpl_cmpxchg_u8 %+ %2
    822854
     
    828860        mov     [A1], ax
    829861        IEM_SAVE_FLAGS       A3, (X86_EFL_ZF | X86_EFL_CF | X86_EFL_PF | X86_EFL_AF | X86_EFL_SF | X86_EFL_OF), 0 ; clobbers T0+T1 (eax, r11/edi)
    830         EPILOGUE_4_ARGS 0
     862        EPILOGUE_4_ARGS
    831863ENDPROC iemAImpl_cmpxchg_u16 %+ %2
    832864
     
    838870        mov     [A1], eax
    839871        IEM_SAVE_FLAGS       A3, (X86_EFL_ZF | X86_EFL_CF | X86_EFL_PF | X86_EFL_AF | X86_EFL_SF | X86_EFL_OF), 0 ; clobbers T0+T1 (eax, r11/edi)
    840         EPILOGUE_4_ARGS 0
     872        EPILOGUE_4_ARGS
    841873ENDPROC iemAImpl_cmpxchg_u32 %+ %2
    842874
     
    849881        mov     [A1], ax
    850882        IEM_SAVE_FLAGS       A3, (X86_EFL_ZF | X86_EFL_CF | X86_EFL_PF | X86_EFL_AF | X86_EFL_SF | X86_EFL_OF), 0 ; clobbers T0+T1 (eax, r11/edi)
    851         EPILOGUE_4_ARGS 0
     883        EPILOGUE_4_ARGS
    852884%else
    853885        ;
     
    920952        %1      byte [A0]
    921953        IEM_SAVE_FLAGS       A1, %2, %3
    922         EPILOGUE_2_ARGS 0
     954        EPILOGUE_2_ARGS
    923955ENDPROC iemAImpl_ %+ %1 %+ _u8
    924956
     
    928960        lock %1 byte [A0]
    929961        IEM_SAVE_FLAGS       A1, %2, %3
    930         EPILOGUE_2_ARGS 0
     962        EPILOGUE_2_ARGS
    931963ENDPROC iemAImpl_ %+ %1 %+ _u8_locked
    932964
     
    936968        %1      word [A0]
    937969        IEM_SAVE_FLAGS       A1, %2, %3
    938         EPILOGUE_2_ARGS 0
     970        EPILOGUE_2_ARGS
    939971ENDPROC iemAImpl_ %+ %1 %+ _u16
    940972
     
    944976        lock %1 word [A0]
    945977        IEM_SAVE_FLAGS       A1, %2, %3
    946         EPILOGUE_2_ARGS 0
     978        EPILOGUE_2_ARGS
    947979ENDPROC iemAImpl_ %+ %1 %+ _u16_locked
    948980
     
    952984        %1      dword [A0]
    953985        IEM_SAVE_FLAGS       A1, %2, %3
    954         EPILOGUE_2_ARGS 0
     986        EPILOGUE_2_ARGS
    955987ENDPROC iemAImpl_ %+ %1 %+ _u32
    956988
     
    960992        lock %1 dword [A0]
    961993        IEM_SAVE_FLAGS       A1, %2, %3
    962         EPILOGUE_2_ARGS 0
     994        EPILOGUE_2_ARGS
    963995ENDPROC iemAImpl_ %+ %1 %+ _u32_locked
    964996
     
    9691001        %1      qword [A0]
    9701002        IEM_SAVE_FLAGS       A1, %2, %3
    971         EPILOGUE_2_ARGS 0
     1003        EPILOGUE_2_ARGS
    9721004ENDPROC iemAImpl_ %+ %1 %+ _u64
    9731005
     
    9771009        lock %1 qword [A0]
    9781010        IEM_SAVE_FLAGS       A1, %2, %3
    979         EPILOGUE_2_ARGS 0
     1011        EPILOGUE_2_ARGS
    9801012ENDPROC iemAImpl_ %+ %1 %+ _u64_locked
    9811013 %else
     
    10281060 %endif
    10291061        IEM_SAVE_FLAGS       A2, %2, %3
    1030         EPILOGUE_3_ARGS 4
     1062        EPILOGUE_3_ARGS
    10311063ENDPROC iemAImpl_ %+ %1 %+ _u8
    10321064
     
    10421074 %endif
    10431075        IEM_SAVE_FLAGS       A2, %2, %3
    1044         EPILOGUE_3_ARGS 4
     1076        EPILOGUE_3_ARGS
    10451077ENDPROC iemAImpl_ %+ %1 %+ _u16
    10461078
     
    10561088 %endif
    10571089        IEM_SAVE_FLAGS       A2, %2, %3
    1058         EPILOGUE_3_ARGS 4
     1090        EPILOGUE_3_ARGS
    10591091ENDPROC iemAImpl_ %+ %1 %+ _u32
    10601092
     
    10711103 %endif
    10721104        IEM_SAVE_FLAGS       A2, %2, %3
    1073         EPILOGUE_3_ARGS 4
     1105        EPILOGUE_3_ARGS
    10741106ENDPROC iemAImpl_ %+ %1 %+ _u64
    10751107 %else ; stub it for now - later, replace with hand coded stuff.
     
    11201152 %endif
    11211153        IEM_SAVE_FLAGS       A3, %2, %3
    1122         EPILOGUE_4_ARGS 8
     1154        EPILOGUE_4_ARGS
    11231155ENDPROC iemAImpl_ %+ %1 %+ _u16
    11241156
     
    11351167 %endif
    11361168        IEM_SAVE_FLAGS       A3, %2, %3
    1137         EPILOGUE_4_ARGS 8
     1169        EPILOGUE_4_ARGS
    11381170ENDPROC iemAImpl_ %+ %1 %+ _u32
    11391171
     
    11511183 %endif
    11521184        IEM_SAVE_FLAGS       A3, %2, %3
    1153         EPILOGUE_4_ARGS 12
     1185        EPILOGUE_4_ARGS_EX 12
    11541186ENDPROC iemAImpl_ %+ %1 %+ _u64
    11551187 %else ; stub it for now - later, replace with hand coded stuff.
     
    11951227        IEM_SAVE_FLAGS       A2, %2, %3
    11961228        xor     eax, eax
    1197         EPILOGUE_3_ARGS 4
     1229        EPILOGUE_3_ARGS
    11981230ENDPROC iemAImpl_ %+ %1 %+ _u8
    11991231
     
    12141246        IEM_SAVE_FLAGS       A3, %2, %3
    12151247        xor     eax, eax
    1216         EPILOGUE_4_ARGS 8
     1248        EPILOGUE_4_ARGS
    12171249ENDPROC iemAImpl_ %+ %1 %+ _u16
    12181250
     
    12331265        IEM_SAVE_FLAGS       A3, %2, %3
    12341266        xor     eax, eax
    1235         EPILOGUE_4_ARGS 8
     1267        EPILOGUE_4_ARGS
    12361268ENDPROC iemAImpl_ %+ %1 %+ _u32
    12371269
     
    12531285        IEM_SAVE_FLAGS       A3, %2, %3
    12541286        xor     eax, eax
    1255         EPILOGUE_4_ARGS 12
     1287        EPILOGUE_4_ARGS_EX 12
    12561288ENDPROC iemAImpl_ %+ %1 %+ _u64
    12571289 %else ; stub it for now - later, replace with hand coded stuff.
     
    13041336
    13051337.return:
    1306         EPILOGUE_3_ARGS 4
     1338        EPILOGUE_3_ARGS
    13071339
    13081340.div_zero:
     
    13381370
    13391371.return:
    1340         EPILOGUE_4_ARGS 8
     1372        EPILOGUE_4_ARGS
    13411373
    13421374.div_zero:
     
    13731405
    13741406.return:
    1375         EPILOGUE_4_ARGS 8
     1407        EPILOGUE_4_ARGS
    13761408
    13771409.div_zero:
     
    14091441
    14101442.return:
    1411         EPILOGUE_4_ARGS 12
     1443        EPILOGUE_4_ARGS_EX 12
    14121444
    14131445.div_zero:
     
    14401472        bswap   T0_32
    14411473        mov     [A0], T0_32
    1442         EPILOGUE_1_ARGS 0
     1474        EPILOGUE_1_ARGS
    14431475ENDPROC iemAImpl_bswap_u16
    14441476
     
    14481480        bswap   T0_32
    14491481        mov     [A0], T0_32
    1450         EPILOGUE_1_ARGS 0
     1482        EPILOGUE_1_ARGS
    14511483ENDPROC iemAImpl_bswap_u32
    14521484
     
    14571489        bswap   T0
    14581490        mov     [A0], T0
    1459         EPILOGUE_1_ARGS 0
     1491        EPILOGUE_1_ARGS
    14601492%else
    14611493        PROLOGUE_1_ARGS
     
    14661498        mov     [A0 + 4], T0
    14671499        mov     [A0], T1
    1468         EPILOGUE_1_ARGS 0
     1500        EPILOGUE_1_ARGS
    14691501%endif
    14701502ENDPROC iemAImpl_bswap_u64
     
    15431575        fninit
    15441576        add     xSP, 20h
    1545         EPILOGUE_3_ARGS 0
     1577        EPILOGUE_3_ARGS
    15461578ENDPROC iemAImpl_fild_i16_to_r80
    15471579
     
    15681600        fninit
    15691601        add     xSP, 20h
    1570         EPILOGUE_4_ARGS 0
     1602        EPILOGUE_4_ARGS
    15711603ENDPROC iemAImpl_fist_r80_to_i16
    15721604
     
    15941626        fninit
    15951627        add     xSP, 20h
    1596         EPILOGUE_4_ARGS 0
     1628        EPILOGUE_4_ARGS
    15971629ENDPROC iemAImpl_fistt_r80_to_i16
    15981630
     
    16241656        fninit
    16251657        add     xSP, 20h
    1626         EPILOGUE_4_ARGS 8
     1658        EPILOGUE_4_ARGS
    16271659ENDPROC iemAImpl_ %+ %1 %+ _r80_by_i16
    16281660%endmacro
     
    16611693        fninit
    16621694        add     xSP, 20h
    1663         EPILOGUE_4_ARGS 8
     1695        EPILOGUE_4_ARGS
    16641696ENDPROC iemAImpl_ %+ %1 %+ _r80_by_i16
    16651697%endmacro
     
    16951727        fninit
    16961728        add     xSP, 20h
    1697         EPILOGUE_3_ARGS 0
     1729        EPILOGUE_3_ARGS
    16981730ENDPROC iemAImpl_fild_i32_to_r80
    16991731
     
    17201752        fninit
    17211753        add     xSP, 20h
    1722         EPILOGUE_4_ARGS 0
     1754        EPILOGUE_4_ARGS
    17231755ENDPROC iemAImpl_fist_r80_to_i32
    17241756
     
    17461778        fninit
    17471779        add     xSP, 20h
    1748         EPILOGUE_4_ARGS 0
     1780        EPILOGUE_4_ARGS
    17491781ENDPROC iemAImpl_fistt_r80_to_i32
    17501782
     
    17761808        fninit
    17771809        add     xSP, 20h
    1778         EPILOGUE_4_ARGS 8
     1810        EPILOGUE_4_ARGS
    17791811ENDPROC iemAImpl_ %+ %1 %+ _r80_by_i32
    17801812%endmacro
     
    18131845        fninit
    18141846        add     xSP, 20h
    1815         EPILOGUE_4_ARGS 8
     1847        EPILOGUE_4_ARGS
    18161848ENDPROC iemAImpl_ %+ %1 %+ _r80_by_i32
    18171849%endmacro
     
    18471879        fninit
    18481880        add     xSP, 20h
    1849         EPILOGUE_3_ARGS 0
     1881        EPILOGUE_3_ARGS
    18501882ENDPROC iemAImpl_fild_i64_to_r80
    18511883
     
    18721904        fninit
    18731905        add     xSP, 20h
    1874         EPILOGUE_4_ARGS 0
     1906        EPILOGUE_4_ARGS
    18751907ENDPROC iemAImpl_fist_r80_to_i64
    18761908
     
    18981930        fninit
    18991931        add     xSP, 20h
    1900         EPILOGUE_4_ARGS 0
     1932        EPILOGUE_4_ARGS
    19011933ENDPROC iemAImpl_fistt_r80_to_i64
    19021934
     
    19281960        fninit
    19291961        add     xSP, 20h
    1930         EPILOGUE_3_ARGS 0
     1962        EPILOGUE_3_ARGS
    19311963ENDPROC iemAImpl_fld_r32_to_r80
    19321964
     
    19531985        fninit
    19541986        add     xSP, 20h
    1955         EPILOGUE_4_ARGS 0
     1987        EPILOGUE_4_ARGS
    19561988ENDPROC iemAImpl_fst_r80_to_r32
    19571989
     
    19832015        fninit
    19842016        add     xSP, 20h
    1985         EPILOGUE_4_ARGS 8
     2017        EPILOGUE_4_ARGS
    19862018ENDPROC iemAImpl_ %+ %1 %+ _r80_by_r32
    19872019%endmacro
     
    20202052        fninit
    20212053        add     xSP, 20h
    2022         EPILOGUE_4_ARGS 8
     2054        EPILOGUE_4_ARGS
    20232055ENDPROC iemAImpl_ %+ %1 %+ _r80_by_r32
    20242056%endmacro
     
    20522084        fninit
    20532085        add     xSP, 20h
    2054         EPILOGUE_3_ARGS 0
     2086        EPILOGUE_3_ARGS
    20552087ENDPROC iemAImpl_fld_r64_to_r80
    20562088
     
    20772109        fninit
    20782110        add     xSP, 20h
    2079         EPILOGUE_4_ARGS 0
     2111        EPILOGUE_4_ARGS
    20802112ENDPROC iemAImpl_fst_r80_to_r64
    20812113
     
    21072139        fninit
    21082140        add     xSP, 20h
    2109         EPILOGUE_4_ARGS 8
     2141        EPILOGUE_4_ARGS
    21102142ENDPROC iemAImpl_ %+ %1 %+ _r80_by_r64
    21112143%endmacro
     
    21432175        fninit
    21442176        add     xSP, 20h
    2145         EPILOGUE_4_ARGS 8
     2177        EPILOGUE_4_ARGS
    21462178ENDPROC iemAImpl_ %+ %1 %+ _r80_by_r64
    21472179%endmacro
     
    21762208        fninit
    21772209        add     xSP, 20h
    2178         EPILOGUE_3_ARGS 0
     2210        EPILOGUE_3_ARGS
    21792211ENDPROC iemAImpl_fld_r80_from_r80
    21802212
     
    22012233        fninit
    22022234        add     xSP, 20h
    2203         EPILOGUE_4_ARGS 0
     2235        EPILOGUE_4_ARGS
    22042236ENDPROC iemAImpl_fst_r80_to_r80
    22052237
     
    22322264        fninit
    22332265        add     xSP, 20h
    2234         EPILOGUE_4_ARGS 8
     2266        EPILOGUE_4_ARGS
    22352267ENDPROC iemAImpl_ %+ %1 %+ _r80_by_r80
    22362268%endmacro
     
    22752307        fninit
    22762308        add     xSP, 20h
    2277         EPILOGUE_4_ARGS 8
     2309        EPILOGUE_4_ARGS
    22782310ENDPROC iemAImpl_ %+ %1 %+ _r80_by_r80
    22792311%endmacro
     
    23092341        fninit
    23102342        add     xSP, 20h
    2311         EPILOGUE_4_ARGS 8
     2343        EPILOGUE_4_ARGS
    23122344ENDPROC iemAImpl_ %+ %1 %+ _r80_by_r80
    23132345%endmacro
     
    23462378        fninit
    23472379        add     xSP, 20h
    2348         EPILOGUE_4_ARGS 8
     2380        EPILOGUE_4_ARGS
    23492381ENDPROC iemAImpl_ %+ %1 %+ _r80_by_r80
    23502382%endmacro
     
    23792411        fninit
    23802412        add     xSP, 20h
    2381         EPILOGUE_3_ARGS 4
     2413        EPILOGUE_3_ARGS
    23822414ENDPROC iemAImpl_ %+ %1 %+ _r80
    23832415%endmacro
     
    24172449        fninit
    24182450        add     xSP, 20h
    2419         EPILOGUE_3_ARGS 4
     2451        EPILOGUE_3_ARGS
    24202452ENDPROC iemAImpl_ %+ %1 %+ _r80
    24212453%endmacro
     
    24492481        fninit
    24502482        add     xSP, 20h
    2451         EPILOGUE_2_ARGS 0
     2483        EPILOGUE_2_ARGS
    24522484ENDPROC iemAImpl_ %+ %1 %+
    24532485%endmacro
     
    24892521        fninit
    24902522        add     xSP, 20h
    2491         EPILOGUE_3_ARGS 4
     2523        EPILOGUE_3_ARGS
    24922524ENDPROC iemAImpl_ %+ %1 %+ _r80_r80
    24932525%endmacro
Note: See TracChangeset for help on using the changeset viewer.

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