VirtualBox

Changeset 58788 in vbox


Ignore:
Timestamp:
Nov 19, 2015 11:33:22 PM (10 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
104238
Message:

iprt/asm-watcom-x86-*.h: Some fixes.

Location:
trunk/include/iprt
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/iprt/asm-watcom-x86-16.h

    r58771 r58788  
    340340    modify exact [ax cx di];
    341341
    342 #undef      ASMMemZero32
    343 #pragma aux ASMMemZero32 = \
     342#undef      ASMMemFill32
     343#pragma aux ASMMemFill32 = \
    344344    "and ecx, 0ffffh" /* probably not necessary, lazy bird should check... */ \
    345345    "shr ecx, 2" \
     
    466466    modify exact [ax dx];
    467467
     468#undef      ASMBitTest
     469#pragma aux ASMBitTest = \
     470    "shl edx, 16" \
     471    "mov dx, ax" \
     472    "bt  es:[bx], edx" \
     473    "setc al" \
     474    parm [es bx] [ax dx] nomemory \
     475    value [al] \
     476    modify exact [ax dx] nomemory;
     477
     478#if 0
    468479/** @todo this is way to much inline assembly, better off in an external function. */
    469480#undef      ASMBitFirstClear
     
    521532
    522533/* ASMBitNextSet: Too much work, do when needed. */
     534#else
     535/* ASMBitFirstClear: External file.  */
     536/* ASMBitNextClear:  External file.  */
     537/* ASMBitFirstSet:   External file.  */
     538/* ASMBitNextSet:    External file.  */
     539#endif
    523540
    524541#undef      ASMBitFirstSetU32
  • trunk/include/iprt/asm-watcom-x86-32.h

    r58771 r58788  
    310310    modify exact [eax ecx edi];
    311311
    312 #undef      ASMMemZero32
    313 #pragma aux ASMMemZero32 = \
     312#undef      ASMMemFill32
     313#pragma aux ASMMemFill32 = \
    314314    "shr ecx, 2" \
    315315    "rep stosd"  \
     
    409409    modify exact [eax];
    410410
     411#undef      ASMBitTest
     412#pragma aux ASMBitTest = \
     413    "bt  [ecx], eax" \
     414    "setc al" \
     415    parm [ecx] [eax] nomemory \
     416    value [al] \
     417    modify exact [eax] nomemory;
     418
     419#if 0
    411420/** @todo this is way to much inline assembly, better off in an external function. */
    412421#undef      ASMBitFirstClear
     
    454463
    455464/* ASMBitNextSet: Too much work, do when needed. */
     465#else
     466/* ASMBitFirstClear: External file.  */
     467/* ASMBitNextClear:  External file.  */
     468/* ASMBitFirstSet:   External file.  */
     469/* ASMBitNextSet:    External file.  */
     470#endif
    456471
    457472#undef      ASMBitFirstSetU32
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