[Info-vax] BASIC and AST routines
Simon Clubley
clubley at remove_me.eisner.decus.org-Earth.UFP
Wed Nov 24 13:34:50 EST 2021
On 2021-11-24, Arne Vajhøj <arne at vajhoej.dk> wrote:
> On 11/24/2021 9:08 AM, Simon Clubley wrote:
>>
>> I suggested it was needed because clearly something needs to be manually
>> preserved by the programmer in Macro-32 code that simply would not be
>> an issue if VMS was based around an higher-level language instead.
>
> But it is an observable fact that it is not needed.
>
Turns out it's not the programmer who needs to preserve the registers
but the OS and it turns out that VMS did it by pushing the registers
directly into the user-visible call frame and hence making them directly
available to the callback function. :-(
That is incredibly ugly. It should have been handled by either the
compiler itself generating the required AST code sequence or the OS ABI
saving the registers privately outside of the user-visible call frame
before calling the AST.
Yuck.
Simon.
--
Simon Clubley, clubley at remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.
More information about the Info-vax
mailing list