[Info-vax] Hard links on VMS ODS5 disks
John Reagan
xyzzy1959 at gmail.com
Tue Jul 25 21:27:49 EDT 2023
On Tuesday, July 25, 2023 at 9:14:26 PM UTC-4, Chris Townley wrote:
> On 26/07/2023 01:52, Arne Vajhøj wrote:
> > On 7/24/2023 4:38 AM, h... at end.of.inter.net wrote:
> >> On Monday, July 24, 2023 at 1:31:46 AM UTC+2, Arne Vajhøj wrote:
> >>> But difficult to check the difference between /OPT and /NOOPT,
> >>> because for some unknown reason /LIST/MACH does not list the
> >>> generated code.
> >>
> >> MACRO-32 on x86?
> >
> > Yes.
> >
> >> You can always (except you compile with /NOOBJECT :-) get the machine
> >> code listing with ANALYZE/OBJECT/DISASSEMBLE.
> >
> > I did not know that.
> >
> > But also weird.
> >
> > I do not see a difference between /OPT and /NOOPT at all.
> >
> > Arne
> >
> But id optimisation of macro a thing? I thought it was only relevant to
> higher level languages...
>
> Never used macro32 - I gave up any low level language after playing with
> Zilog Z80 code in the early 80s
>
> --
> Chris
Yes, there is some limited optimization in the Macro compiler itself. It will attempt
to hoist some memory fetches out of loops and such. In general, /OPT enables the
GEM peephole optimizer at the instruction level.
For x86, the backend organization is much different and we are interfacing past any
sort of peephole or scheduling level. XMACRO is essentially a fancy assembler. It is
expected to do things like peephole optimizations and select different instructions
based on micro-architecture. We do very little of that. My belief that the added benefit
is almost not worth mentioning.
More information about the Info-vax
mailing list