[Info-vax] VAX Macro to C conversion
Aron Insinga
aron.insinga at vmssoftware.com
Fri Jul 12 12:36:29 EDT 2019
On Tuesday, July 9, 2019 at 8:18:14 PM UTC-4, Bill Gunshannon wrote:
> On 7/9/19 3:08 AM, Simon Clubley wrote:
> > On 2019-07-08, Dave Froble wrote:
> >>
> >> Macro-32 is an assembler on the VAX. On Alpha, itanic, and x86 is is a
> >> compiled language, and not anything you'd want to use on the non-VAX
> >> systems. Just ask John. It exists strictly for existing code.
> >>
> >
> > It's nothing to do with whether it's an assembler or a compiler.
>
> Both are merely semantics. Both are programs that take human
> readable input and generate machine runable object code.
>
> >
> > It's to do with the fact that assembly language is so low level
> > and error prone even when compared to C.
>
> The current MACRO-32 compiler can not be low level by any stretch
> of the imagination. I can not believe any VAX instruction would
> map directly and with the same semantics with the instruction set
> of the Alpha or the IA64. The same would be true for the x86-64.
A single VAX instruction can be compiled into a _sequence_ of instructions for another machine. A single VAX MACRO ADDL3 instruction might become 4 instructions for a RISC machine: load, load, add, and store. Of course the sequence gets more complicated depending on the instruction, the addressing modes, etc.
>
> >
> >> However, if your target was a VAX, (not available anymore), it might be
> >> a viable choice, or not.
> >>
> >
> > These days, the only thing anyone uses assembly language for in
> > new code are the small segments which cannot be coded even in C.
>
> Except maybe in embedded systems I doubt any need for this still
> exists. And in the embedded world they might write a lot more
> in assembler. But I doubt it.
>
> bill
More information about the Info-vax
mailing list