NO

Author Topic: Register use conventions  (Read 4241 times)

Dickie-Doo

  • Guest
Register use conventions
« on: October 27, 2012, 10:46:23 PM »
I have just started experimenting with POASM subroutines called from Pelle C.  Since I have a Win7 64-bit computer, in-lining is not allowed, but I found it surprisingly easy to get started with a separate *.asm source file.  I now have a question for the experts:

1) Pelle's explanation of the 'fastcall' convention does not cover use of registers other than rcx,rdx,r8,r9 & rax.  I suspect that he follows Microsoft's Visual C++ rules, which state that the above 5 registers plus r10 & r11 are 'volatile' while all others should be preserved, i.e. PUSHed and POPped.  Is this correct?

Offline frankie

  • Global Moderator
  • Member
  • *****
  • Posts: 2096
Re: Register use conventions
« Reply #1 on: October 28, 2012, 12:04:50 AM »
Yes, the main aim of PellesC is the compatibility with M$ standards.
The whole suite is specialized for WIN OS's, no ports for anything else.
It is better to be hated for what you are than to be loved for what you are not. - Andre Gide