[Info-vax] VAX Macro to C conversion
Robert A. Brooks
FIRST.LAST at vmssoftware.com
Tue Jul 9 10:58:30 EDT 2019
On 7/9/2019 9:03 AM, John Reagan wrote:
> On Tuesday, July 9, 2019 at 12:15:48 AM UTC-4, Michael Moroney
> wrote:
>> New or significantly rewritten VMS code for x86 is almost always in
>> C, with the exception of extremely specific code is in x86
>> assembler like SWIS/interrupt code.
>
> The shadow driver has its own home-made "threading" package. Plus
> almost every routine can possible jump into the middle of another
> routine. So you can enter through the prologue of routine "A", jump
> into "B", conditionally jump into "C" and exit through one of several
> epilogues. The Macro compiler has to keep lots of breadcrumbs so the
> epilogues will restore the right values to the right registers. That
> would all be difficult to mechanically translate into C (or anything
> else). It would require algorithm changes. The current design is
> best suited for an "assembler-style" language that supports such
> things.
All this interest in the shadowing driver makes me want to do
the interpretive BLISS dance (the shadowing ACP is written in BLISS).
As Mike and John are well aware, we have no plans to investigate the
rewriting of the Shadowing driver into C.
While I do not speak for management, I can say with extreme
confidence that the shadowing driver will never be rewritten
in another language.
--
-- Rob
More information about the Info-vax
mailing list