charter issue

utzoo!decvax!ittvax!sii!mem utzoo!decvax!ittvax!sii!mem
Tue Nov 2 00:10:58 AEST 1982


c
So!  This newsgroup was meant to contain discussions of extensions
to the C language?  Great!  I hadn't heard that.  But is anyone
listening?

Here are a couple of items on my wishlist, then.

- Declaration of a routine as an interrupt service routine.  Essentially,
  minimum state save and the PROPER EXIT (RTE vs RTS).  Alternatively,
  the choice of exits, since RTE isn't universally desirable from
  within an interrupt routine (often a semi- or full- state save
  routine or a call to an event scheduler is made and the proper exit
  is to jump off to a complementary routine or return from event
  scheduling or what-have-you).

- More control over linkage.  For instance:
  o The above-mentioned interrupt-server linkage.
  o Pass things in registers without having to thread them through the
    stack along the way.
  o Bypass the full entry-exit sequence for routines which are likely
    to be called a lot.  It would be nice to have a means by
    which the compiler at the point of the call would know how
    much would be lost in the call.  Here is the call for a smart
    linker.

- Better support of re-entrant code.   This is the big thing that
  C lacks by having no global automatic variable scoping.  To have
  usefully re-entrant code without assuming memory mapping hardware
  you need to be able to reference outer level stack variables, or
  have a pointer to the global data base.

- Be able to dedicate a register to a global location.  Obviously
  the compiler would have to trust the programmer, here, to make
  this declaration in ALL modules.  Or this could be a run-time
  parameter and not a compilation parameter.

Ok!  I'll stop now.

Mark Mallett 



More information about the Comp.lang.c mailing list