On Aug 14, 2005, at 0:27, chromatic wrote:


On Sat, 2005-08-13 at 15:22 +0200, Leopold Toetsch wrote:

I have added some more to DEPRECATED, nameley stack calling convention
directives .param, .arg, .return, .result, which just translate to user
stack opcodes 'save' or 'restore' and 'call'.

Can you give an example of translating code that uses these to code that
uses the new forms?  I have a lot of code to translate if you deprecate
these and I want to see how it looks.

I'm pretty sure that you don't have any code that uses *stack calling conventions*.

.param et al have two different meanings. The normal usage is with parrot calling conventions (pdd03) and this will of course not change and is not deprecated.

  .sub foo
     .param pmc x     # get_params "(0b2)", P15

But with stack calling conventions the .param translates to 'restore Px' (pop from user stack).

   .arg x             # save P20 (on user stack)
   call _foo          # bsr _foo

  .sub foo
     saveall
     .param pmc x     # restore P15

I'd like to get rid of this dual meaning of these directives.

-- c

leo

Reply via email to