Subversion Repositories Kolibri OS

Rev

Rev 6614 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. ; Magic for proc32.inc: prologue/epilogue for esp-based addressing
  2. ; fpo stands from Frame Pointer Omission
  3. macro fpo_prologue procname,flag,parmbytes,localbytes,reglist
  4. {
  5. local loc,regcount
  6.     loc = (localbytes+3) and (not 3)
  7.     regcount = 0
  8.     irps reg, reglist
  9.     \{
  10.         regcount = regcount+1
  11.         push    reg
  12.     \}
  13.     parmbase@proc equ esp+4+regcount*4
  14.     localbase@proc equ esp-localbytes
  15. }
  16. macro fpo_epilogue procname,flag,parmbytes,localbytes,reglist
  17. {
  18.     irps reg, reglist \{ reverse pop reg \}
  19.     if flag and 10000b
  20.         retn
  21.     else
  22.         retn    parmbytes
  23.     end if
  24. }
  25.