Announcement

Collapse
No announcement yet.

Inline assembler

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Inline assembler

    Guys --
    Subroutine / functions includes ASM only
    1) Should I save common registers ?
    2) If yes, can I use simple PUSHA ... POPA ?

    ------------------
    E-MAIL: [email protected]

  • #2
    Semen,

    The general rule is based on the convention used by Microsoft for 32 bit
    windows, if you use EBX, ESI or EDI they must be preserved but PowerBASIC
    automatically preserves these 3 registers anyway so there is no need.

    PUSHAD and POPAD are handy while debugging or developing code but you are
    wasting processor cycles using then as they push more than you generally
    need.

    If you write a function fully in inline asm, just include #REGISTER NONE
    if you are using any local variables so that you do not get register conflicts
    with locals.

    Regards,

    [email protected]

    ------------------
    hutch at movsd dot com
    The MASM Forum

    www.masm32.com

    Comment

    Working...
    X