Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

<james> abuse me. I'm so lame I sent a bug report to debian-devel-changes -- Seen on #Debian


computers / comp.os.vms / Native compilers

SubjectAuthor
* Native compilersJohn Reagan
+* Re: Native compilersDave Froble
|+* Re: Native compilersVAXman-
||`- Re: Native compilersBill Gunshannon
|`* Re: Native compilersJohn Reagan
| `- Re: Native compilersIan Miller
+* Re: Native compilersVAXman-
|`* Re: Native compilersSimon Clubley
| `- Re: Native compilersVAXman-
`* Re: Native compilersSimon Clubley
 `* Re: Native compilersJohn Reagan
  +* Re: Native compilersCraig A. Berry
  |`* Re: Native compilersJohn Reagan
  | +* Re: Native compilersJohnny Billquist
  | |+* Re: Native compilersVAXman-
  | ||+- Re: Native compilersJohnny Billquist
  | ||`* Re: Native compilersVAXman-
  | || +* Re: Native compilersJohnny Billquist
  | || |`* Re: Native compilersDave Froble
  | || | +- Re: Native compilersDavid Jones
  | || | `* Re: Native compilersJohnny Billquist
  | || |  `* Re: Native compilersDave Froble
  | || |   +* Re: Native compilersArne Vajhøj
  | || |   |`* Re: Native compilersJohnny Billquist
  | || |   | `- Re: Native compilersArne Vajhøj
  | || |   +* Re: Native compilersSimon Clubley
  | || |   |+- Re: Native compilersDave Froble
  | || |   |+- Re: Native compilersJohnny Billquist
  | || |   |`* Re: Native compilersArne Vajhøj
  | || |   | `- Re: Native compilersSimon Clubley
  | || |   +- Re: Native compilersJohnny Billquist
  | || |   `* Re: Native compilersVAXman-
  | || |    `* Re: Native compilersSimon Clubley
  | || |     `* Re: Native compilersJohn Reagan
  | || |      `* Re: Native compilerschris
  | || |       `* Re: Native compilersJohn Reagan
  | || |        +* Re: Native compilersabrsvc
  | || |        |+- Re: Native compilersJohnny Billquist
  | || |        |`* Re: Native compilersSimon Clubley
  | || |        | +- Re: Native compilersJohn Reagan
  | || |        | `- Re: Native compilerschris
  | || |        `* Re: Native compilerschris
  | || |         `* Re: Native compilersJohnny Billquist
  | || |          +* Re: Native compilerschris
  | || |          |`- Re: Native compilersJohnny Billquist
  | || |          `* Re: Native compilerschris
  | || |           `* Re: Native compilersJohnny Billquist
  | || |            `* Re: Native compilerschris
  | || |             `- Re: Native compilersJohnny Billquist
  | || `* Re: Native compilersVAXman-
  | ||  +- Re: Native compilersBill Gunshannon
  | ||  +- Re: Native compilersVAXman-
  | ||  `* Re: Native compilersJohnny Billquist
  | ||   `- Re: Native compilersDave Froble
  | |`- Re: Native compilersJohn Reagan
  | `- Compiler Explorer (Re: Native compilers)Craig A. Berry
  `* Re: Native compilersSimon Clubley
   `* Re: Native compilersJohn Reagan
    +- Re: Native compilersArne Vajhøj
    `- Re: Native compilersBob Eager

Pages:123
Native compilers

<226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20920&group=comp.os.vms#20920

  copy link   Newsgroups: comp.os.vms
X-Received: by 2002:a05:6000:1e04:b0:1e4:9b64:8cab with SMTP id bj4-20020a0560001e0400b001e49b648cabmr10028584wrb.608.1645294924040;
Sat, 19 Feb 2022 10:22:04 -0800 (PST)
X-Received: by 2002:ad4:50ce:0:b0:42c:2cff:779e with SMTP id
e14-20020ad450ce000000b0042c2cff779emr10091609qvq.43.1645294923501; Sat, 19
Feb 2022 10:22:03 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.128.88.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.os.vms
Date: Sat, 19 Feb 2022 10:22:03 -0800 (PST)
Injection-Info: google-groups.googlegroups.com; posting-host=47.42.235.118; posting-account=M3IgSwoAAADJd6EnOmsrCCfB6_OyTOkv
NNTP-Posting-Host: 47.42.235.118
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>
Subject: Native compilers
From: xyzzy1...@gmail.com (John Reagan)
Injection-Date: Sat, 19 Feb 2022 18:22:04 +0000
Content-Type: text/plain; charset="UTF-8"
 by: John Reagan - Sat, 19 Feb 2022 18:22 UTC

With all the various threads talking about compilers and such, here's a "demo" (compilers are hard to demo) of a the native Macro compiler.

$ type hw.mar
..TITLE hello
..PSECT RDATA,NOWRT,SHR,NOPIC,NOEXE,RD,QUAD
HI: .ASCID /Hello, World!/
..PSECT CODE,NOWRT,SHR,PIC,EXE,RD,QUAD
START:: .CALL_ENTRY PRESERVE=<>,MAX_ARGS=0,HOME_ARGS=TRUE
PUSHAQ HI
CALLS #1,G^LIB$PUT_OUTPUT
BLBC R0,10$
MOVL #SS$_NORMAL,R0
10$: RET
..END START
$ $ show system /noproc
OpenVMS XG5P-H4S on node X86VMS 19-FEB-2022 13:09:56.72 Uptime 2 03:28:17
$ write sys$output f$getsyi("arch_name")
x86_64
$ macro hw
$ link hw
$ run hw
Hello, World!

Re: Native compilers

<surhbf$jt$1@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20921&group=comp.os.vms#20921

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: dav...@tsoft-inc.com (Dave Froble)
Newsgroups: comp.os.vms
Subject: Re: Native compilers
Date: Sat, 19 Feb 2022 14:44:54 -0500
Organization: A noiseless patient Spider
Lines: 43
Message-ID: <surhbf$jt$1@dont-email.me>
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sat, 19 Feb 2022 19:44:47 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="1d3c731006010bac9be7899d74bc5661";
logging-data="637"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18TthMCVgQxwXAoRMB1FN+CpKnwmPoVahI="
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:45.0) Gecko/20100101
Thunderbird/45.8.0
Cancel-Lock: sha1:S2L7qijaoE2DjsreuOzKwvkD8UE=
In-Reply-To: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>
 by: Dave Froble - Sat, 19 Feb 2022 19:44 UTC

On 2/19/2022 1:22 PM, John Reagan wrote:
> With all the various threads talking about compilers and such, here's a "demo" (compilers are hard to demo) of a the native Macro compiler.
>
> $ type hw.mar
> .TITLE hello
> .PSECT RDATA,NOWRT,SHR,NOPIC,NOEXE,RD,QUAD
> HI: .ASCID /Hello, World!/
> .PSECT CODE,NOWRT,SHR,PIC,EXE,RD,QUAD
> START:: .CALL_ENTRY PRESERVE=<>,MAX_ARGS=0,HOME_ARGS=TRUE
> PUSHAQ HI
> CALLS #1,G^LIB$PUT_OUTPUT
> BLBC R0,10$
> MOVL #SS$_NORMAL,R0
> 10$: RET
> .END START
> $
> $ show system /noproc
> OpenVMS XG5P-H4S on node X86VMS 19-FEB-2022 13:09:56.72 Uptime 2 03:28:17
> $ write sys$output f$getsyi("arch_name")
> x86_64
> $ macro hw
> $ link hw
> $ run hw
> Hello, World!
>
>

Great demo.

Now do it in Basic ...

:-)

Yeah, I know, you got some issues there.

And I'm wondering, is the LIB$PUT_OUTPUT native, or cross compiled?

--
David Froble Tel: 724-529-0450
Dave Froble Enterprises, Inc. E-Mail: davef@tsoft-inc.com
DFE Ultralights, Inc.
170 Grimplin Road
Vanderbilt, PA 15486

Re: Native compilers

<00B70933.39E1BA99@SendSpamHere.ORG>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20923&group=comp.os.vms#20923

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!aioe.org!pr9o9uw/KLhPSFYv2ok3sg.user.46.165.242.75.POSTED!not-for-mail
From: VAXm...@SendSpamHere.ORG
Newsgroups: comp.os.vms
Subject: Re: Native compilers
Date: Sat, 19 Feb 2022 21:07:15 GMT
Organization: c.2022 Brian Schenkenberger. Prior employers of copyright holder and their agents must first obtain written permission to copy this posting.
Message-ID: <00B70933.39E1BA99@SendSpamHere.ORG>
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>
Reply-To: VAXman- @SendSpamHere.ORG
Injection-Info: gioia.aioe.org; logging-data="3686"; posting-host="pr9o9uw/KLhPSFYv2ok3sg.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
X-Notice: Filtered by postfilter v. 0.9.2
 by: VAXm...@SendSpamHere.ORG - Sat, 19 Feb 2022 21:07 UTC

In article <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>, John Reagan <xyzzy1959@gmail.com> writes:
>With all the various threads talking about compilers and such, here's a "demo" (compilers are hard to demo) of a the native Macro compiler.
>
>$ type hw.mar
>..TITLE hello
>..PSECT RDATA,NOWRT,SHR,NOPIC,NOEXE,RD,QUAD
>HI: .ASCID /Hello, World!/
>..PSECT CODE,NOWRT,SHR,PIC,EXE,RD,QUAD
>START:: .CALL_ENTRY PRESERVE=<>,MAX_ARGS=0,HOME_ARGS=TRUE
>PUSHAQ HI
>CALLS #1,G^LIB$PUT_OUTPUT
>BLBC R0,10$
>MOVL #SS$_NORMAL,R0
>10$: RET
>..END START
>$
>$ show system /noproc
>OpenVMS XG5P-H4S on node X86VMS 19-FEB-2022 13:09:56.72 Uptime 2 03:28:17
>$ write sys$output f$getsyi("arch_name")
>x86_64
>$ macro hw
>$ link hw
>$ run hw
>Hello, World!

Macro is native! That's all I need!

--
VAXman- A Bored Certified VMS Kernel Mode Hacker VAXman(at)TMESIS(dot)ORG

I speak to machines with the voice of humanity.

Re: Native compilers

<00B70933.7E79304C@SendSpamHere.ORG>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20924&group=comp.os.vms#20924

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!aioe.org!pr9o9uw/KLhPSFYv2ok3sg.user.46.165.242.75.POSTED!not-for-mail
From: VAXm...@SendSpamHere.ORG
Newsgroups: comp.os.vms
Subject: Re: Native compilers
Date: Sat, 19 Feb 2022 21:09:10 GMT
Organization: c.2022 Brian Schenkenberger. Prior employers of copyright holder and their agents must first obtain written permission to copy this posting.
Message-ID: <00B70933.7E79304C@SendSpamHere.ORG>
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com> <surhbf$jt$1@dont-email.me>
Reply-To: VAXman- @SendSpamHere.ORG
Injection-Info: gioia.aioe.org; logging-data="3686"; posting-host="pr9o9uw/KLhPSFYv2ok3sg.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
X-Notice: Filtered by postfilter v. 0.9.2
 by: VAXm...@SendSpamHere.ORG - Sat, 19 Feb 2022 21:09 UTC

In article <surhbf$jt$1@dont-email.me>, Dave Froble <davef@tsoft-inc.com> writes:
>On 2/19/2022 1:22 PM, John Reagan wrote:
>> With all the various threads talking about compilers and such, here's a "demo" (compilers are hard to demo) of a the native Macro compiler.
>>
>> $ type hw.mar
>> .TITLE hello
>> .PSECT RDATA,NOWRT,SHR,NOPIC,NOEXE,RD,QUAD
>> HI: .ASCID /Hello, World!/
>> .PSECT CODE,NOWRT,SHR,PIC,EXE,RD,QUAD
>> START:: .CALL_ENTRY PRESERVE=<>,MAX_ARGS=0,HOME_ARGS=TRUE
>> PUSHAQ HI
>> CALLS #1,G^LIB$PUT_OUTPUT
>> BLBC R0,10$
>> MOVL #SS$_NORMAL,R0
>> 10$: RET
>> .END START
>> $
>> $ show system /noproc
>> OpenVMS XG5P-H4S on node X86VMS 19-FEB-2022 13:09:56.72 Uptime 2 03:28:17
>> $ write sys$output f$getsyi("arch_name")
>> x86_64
>> $ macro hw
>> $ link hw
>> $ run hw
>> Hello, World!
>>
>>
>
>Great demo.

.... but not great Macro. ;)

--
VAXman- A Bored Certified VMS Kernel Mode Hacker VAXman(at)TMESIS(dot)ORG

I speak to machines with the voice of humanity.

Re: Native compilers

<j7d7d0Fn0mqU1@mid.individual.net>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20926&group=comp.os.vms#20926

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!news.swapon.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: bill.gun...@gmail.com (Bill Gunshannon)
Newsgroups: comp.os.vms
Subject: Re: Native compilers
Date: Sat, 19 Feb 2022 16:56:47 -0500
Lines: 52
Message-ID: <j7d7d0Fn0mqU1@mid.individual.net>
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>
<surhbf$jt$1@dont-email.me> <00B70933.7E79304C@SendSpamHere.ORG>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Trace: individual.net lWzkZWDVUw+Wilhn3ad5RAoggcy0M71DDY7y2BedzWakxFkp5M
Cancel-Lock: sha1:BhiQcpuKJNqHRXg0BqaX6zOFM04=
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
Thunderbird/91.5.0
Content-Language: en-US
In-Reply-To: <00B70933.7E79304C@SendSpamHere.ORG>
 by: Bill Gunshannon - Sat, 19 Feb 2022 21:56 UTC

On 2/19/22 16:09, VAXman-@SendSpamHere.ORG wrote:
> In article <surhbf$jt$1@dont-email.me>, Dave Froble <davef@tsoft-inc.com> writes:
>> On 2/19/2022 1:22 PM, John Reagan wrote:
>>> With all the various threads talking about compilers and such, here's a "demo" (compilers are hard to demo) of a the native Macro compiler.
>>>
>>> $ type hw.mar
>>> .TITLE hello
>>> .PSECT RDATA,NOWRT,SHR,NOPIC,NOEXE,RD,QUAD
>>> HI: .ASCID /Hello, World!/
>>> .PSECT CODE,NOWRT,SHR,PIC,EXE,RD,QUAD
>>> START:: .CALL_ENTRY PRESERVE=<>,MAX_ARGS=0,HOME_ARGS=TRUE
>>> PUSHAQ HI
>>> CALLS #1,G^LIB$PUT_OUTPUT
>>> BLBC R0,10$
>>> MOVL #SS$_NORMAL,R0
>>> 10$: RET
>>> .END START
>>> $
>>> $ show system /noproc
>>> OpenVMS XG5P-H4S on node X86VMS 19-FEB-2022 13:09:56.72 Uptime 2 03:28:17
>>> $ write sys$output f$getsyi("arch_name")
>>> x86_64
>>> $ macro hw
>>> $ link hw
>>> $ run hw
>>> Hello, World!
>>>
>>>
>>
>> Great demo.
>
> ... but not great Macro. ;)
>

How's this for Macro?

.MCALL .PRINT .EXIT
MESG1: .ASCIZ " HELLO WORLD "
.EVEN
START:
.PRINT #MESG1
DONE:
; CLEAN UP AND GO BACK TO KMON
.EXIT
.END START

:-)

bill

Re: Native compilers

<e5a267de-74c5-40d9-8359-97d9379639e9n@googlegroups.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20929&group=comp.os.vms#20929

  copy link   Newsgroups: comp.os.vms
X-Received: by 2002:adf:d219:0:b0:1e3:3e71:8a6 with SMTP id j25-20020adfd219000000b001e33e7108a6mr10688578wrh.35.1645324688647;
Sat, 19 Feb 2022 18:38:08 -0800 (PST)
X-Received: by 2002:a05:6214:2464:b0:42d:1a0c:3aaf with SMTP id
im4-20020a056214246400b0042d1a0c3aafmr10730753qvb.48.1645324687978; Sat, 19
Feb 2022 18:38:07 -0800 (PST)
Path: i2pn2.org!i2pn.org!paganini.bofh.team!pasdenom.info!usenet-fr.net!proxad.net!feeder1-2.proxad.net!209.85.128.88.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.os.vms
Date: Sat, 19 Feb 2022 18:38:07 -0800 (PST)
In-Reply-To: <surhbf$jt$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=47.42.235.118; posting-account=M3IgSwoAAADJd6EnOmsrCCfB6_OyTOkv
NNTP-Posting-Host: 47.42.235.118
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com> <surhbf$jt$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <e5a267de-74c5-40d9-8359-97d9379639e9n@googlegroups.com>
Subject: Re: Native compilers
From: xyzzy1...@gmail.com (John Reagan)
Injection-Date: Sun, 20 Feb 2022 02:38:08 +0000
Content-Type: text/plain; charset="UTF-8"
 by: John Reagan - Sun, 20 Feb 2022 02:38 UTC

On Saturday, February 19, 2022 at 2:44:50 PM UTC-5, Dave Froble wrote:
> On 2/19/2022 1:22 PM, John Reagan wrote:
> > With all the various threads talking about compilers and such, here's a "demo" (compilers are hard to demo) of a the native Macro compiler.
> >
> > $ type hw.mar
> > .TITLE hello
> > .PSECT RDATA,NOWRT,SHR,NOPIC,NOEXE,RD,QUAD
> > HI: .ASCID /Hello, World!/
> > .PSECT CODE,NOWRT,SHR,PIC,EXE,RD,QUAD
> > START:: .CALL_ENTRY PRESERVE=<>,MAX_ARGS=0,HOME_ARGS=TRUE
> > PUSHAQ HI
> > CALLS #1,G^LIB$PUT_OUTPUT
> > BLBC R0,10$
> > MOVL #SS$_NORMAL,R0
> > 10$: RET
> > .END START
> > $
> > $ show system /noproc
> > OpenVMS XG5P-H4S on node X86VMS 19-FEB-2022 13:09:56.72 Uptime 2 03:28:17
> > $ write sys$output f$getsyi("arch_name")
> > x86_64
> > $ macro hw
> > $ link hw
> > $ run hw
> > Hello, World!
> >
> >
> Great demo.
>
> Now do it in Basic ...
>
> :-)
>
> Yeah, I know, you got some issues there.
>
> And I'm wondering, is the LIB$PUT_OUTPUT native, or cross compiled?
>
> --
> David Froble Tel: 724-529-0450
> Dave Froble Enterprises, Inc. E-Mail: da...@tsoft-inc.com
> DFE Ultralights, Inc.
> 170 Grimplin Road
> Vanderbilt, PA 15486
The OS is still cross-built.

The native compilers are too new. We need more than just compilers to build the OS natively. I do have an early native SDL (written in C++) that can produce headers. I can show a BLISS compile in a day or so. Native C hopefully just a few weeks behind.

Re: Native compilers

<10f78663-e8aa-4fbe-a9cc-ea1f89b5d637n@googlegroups.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20948&group=comp.os.vms#20948

  copy link   Newsgroups: comp.os.vms
X-Received: by 2002:a5d:588a:0:b0:1e8:b478:e74f with SMTP id n10-20020a5d588a000000b001e8b478e74fmr15002667wrf.210.1645435397079;
Mon, 21 Feb 2022 01:23:17 -0800 (PST)
X-Received: by 2002:a37:2797:0:b0:605:bbdb:310d with SMTP id
n145-20020a372797000000b00605bbdb310dmr11007064qkn.638.1645435396506; Mon, 21
Feb 2022 01:23:16 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.os.vms
Date: Mon, 21 Feb 2022 01:23:16 -0800 (PST)
In-Reply-To: <e5a267de-74c5-40d9-8359-97d9379639e9n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=92.17.251.25; posting-account=xnH4mQkAAADgGjKHSw0dMDzsXknFp5II
NNTP-Posting-Host: 92.17.251.25
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>
<surhbf$jt$1@dont-email.me> <e5a267de-74c5-40d9-8359-97d9379639e9n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <10f78663-e8aa-4fbe-a9cc-ea1f89b5d637n@googlegroups.com>
Subject: Re: Native compilers
From: gxy...@uk2.net (Ian Miller)
Injection-Date: Mon, 21 Feb 2022 09:23:17 +0000
Content-Type: text/plain; charset="UTF-8"
Lines: 6
 by: Ian Miller - Mon, 21 Feb 2022 09:23 UTC

On Sunday, February 20, 2022 at 2:38:11 AM UTC, xyzz...@gmail.com wrote:
> On Saturday, February 19, 2022 at 2:44:50 PM UTC-5, Dave Froble wrote:
> The OS is still cross-built.
>
> The native compilers are too new. We need more than just compilers to build the OS natively. I do have an early native SDL (written in C++) that can produce headers. I can show a BLISS compile in a day or so. Native C hopefully just a few weeks behind.

that's good. C and a little macro32 covers what I want :-)

Re: Native compilers

<sv0ove$66b$2@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20966&group=comp.os.vms#20966

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: club...@remove_me.eisner.decus.org-Earth.UFP (Simon Clubley)
Newsgroups: comp.os.vms
Subject: Re: Native compilers
Date: Mon, 21 Feb 2022 19:25:34 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 39
Message-ID: <sv0ove$66b$2@dont-email.me>
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com> <00B70933.39E1BA99@SendSpamHere.ORG>
Injection-Date: Mon, 21 Feb 2022 19:25:34 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="263a93a16a017b42dcf32769de8668a6";
logging-data="6347"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+KheLX3Vzs84Pws4ZwUXC7GUXGlG9l6zY="
User-Agent: slrn/0.9.8.1 (VMS/Multinet)
Cancel-Lock: sha1:bs19eDfB+vUq/PDOZV/vNz2WK3s=
 by: Simon Clubley - Mon, 21 Feb 2022 19:25 UTC

On 2022-02-19, VAXman- @SendSpamHere.ORG <VAXman-@SendSpamHere.ORG> wrote:
> In article <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>, John Reagan <xyzzy1959@gmail.com> writes:
>>With all the various threads talking about compilers and such, here's a "demo" (compilers are hard to demo) of a the native Macro compiler.
>>
>>$ type hw.mar
>>..TITLE hello
>>..PSECT RDATA,NOWRT,SHR,NOPIC,NOEXE,RD,QUAD
>>HI: .ASCID /Hello, World!/
>>..PSECT CODE,NOWRT,SHR,PIC,EXE,RD,QUAD
>>START:: .CALL_ENTRY PRESERVE=<>,MAX_ARGS=0,HOME_ARGS=TRUE
>>PUSHAQ HI
>>CALLS #1,G^LIB$PUT_OUTPUT
>>BLBC R0,10$
>>MOVL #SS$_NORMAL,R0
>>10$: RET
>>..END START
>>$
>>$ show system /noproc
>>OpenVMS XG5P-H4S on node X86VMS 19-FEB-2022 13:09:56.72 Uptime 2 03:28:17
>>$ write sys$output f$getsyi("arch_name")
>>x86_64
>>$ macro hw
>>$ link hw
>>$ run hw
>>Hello, World!
>
> Macro is native! That's all I need!
>

$ set response/mode=good_natured_troll

Well, there's always that someone who needs to work with obsolete
languages... :-)

Simon.

--
Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.

Re: Native compilers

<sv0p1i$66b$3@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20967&group=comp.os.vms#20967

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: club...@remove_me.eisner.decus.org-Earth.UFP (Simon Clubley)
Newsgroups: comp.os.vms
Subject: Re: Native compilers
Date: Mon, 21 Feb 2022 19:26:42 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 35
Message-ID: <sv0p1i$66b$3@dont-email.me>
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>
Injection-Date: Mon, 21 Feb 2022 19:26:42 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="263a93a16a017b42dcf32769de8668a6";
logging-data="6347"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18xPryBYfRX/mftxpMfriHiyqIhkh/du8U="
User-Agent: slrn/0.9.8.1 (VMS/Multinet)
Cancel-Lock: sha1:K1dcV1DMxQRJ5fihFWc8iLqy7xk=
 by: Simon Clubley - Mon, 21 Feb 2022 19:26 UTC

On 2022-02-19, John Reagan <xyzzy1959@gmail.com> wrote:
> With all the various threads talking about compilers and such, here's a "demo" (compilers are hard to demo) of a the native Macro compiler.
>
> $ type hw.mar
> .TITLE hello
> .PSECT RDATA,NOWRT,SHR,NOPIC,NOEXE,RD,QUAD
> HI: .ASCID /Hello, World!/
> .PSECT CODE,NOWRT,SHR,PIC,EXE,RD,QUAD
> START:: .CALL_ENTRY PRESERVE=<>,MAX_ARGS=0,HOME_ARGS=TRUE
> PUSHAQ HI
> CALLS #1,G^LIB$PUT_OUTPUT
> BLBC R0,10$
> MOVL #SS$_NORMAL,R0
> 10$: RET
> .END START
> $
> $ show system /noproc
> OpenVMS XG5P-H4S on node X86VMS 19-FEB-2022 13:09:56.72 Uptime 2 03:28:17
> $ write sys$output f$getsyi("arch_name")
> x86_64
> $ macro hw
> $ link hw
> $ run hw
> Hello, World!
>

Is there any chance we can have a look at the generated code for this ?

Would be interesting to see what it looks like...

Simon.

--
Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.

Re: Native compilers

<00B70AC9.8791A682@SendSpamHere.ORG>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20979&group=comp.os.vms#20979

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!rocksolid2!news.neodome.net!news.mixmin.net!aioe.org!pr9o9uw/KLhPSFYv2ok3sg.user.46.165.242.75.POSTED!not-for-mail
From: VAXm...@SendSpamHere.ORG
Newsgroups: comp.os.vms
Subject: Re: Native compilers
Date: Mon, 21 Feb 2022 21:35:41 GMT
Organization: c.2022 Brian Schenkenberger. Prior employers of copyright holder and their agents must first obtain written permission to copy this posting.
Message-ID: <00B70AC9.8791A682@SendSpamHere.ORG>
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com> <00B70933.39E1BA99@SendSpamHere.ORG> <sv0ove$66b$2@dont-email.me>
Reply-To: VAXman- @SendSpamHere.ORG
Injection-Info: gioia.aioe.org; logging-data="38454"; posting-host="pr9o9uw/KLhPSFYv2ok3sg.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
X-Notice: Filtered by postfilter v. 0.9.2
 by: VAXm...@SendSpamHere.ORG - Mon, 21 Feb 2022 21:35 UTC

In article <sv0ove$66b$2@dont-email.me>, Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> writes:
>On 2022-02-19, VAXman- @SendSpamHere.ORG <VAXman-@SendSpamHere.ORG> wrote:
>> In article <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>, John Reagan <xyzzy1959@gmail.com> writes:
>>>With all the various threads talking about compilers and such, here's a "demo" (compilers are hard to demo) of a the native Macro compiler.
>>>
>>>$ type hw.mar
>>>..TITLE hello
>>>..PSECT RDATA,NOWRT,SHR,NOPIC,NOEXE,RD,QUAD
>>>HI: .ASCID /Hello, World!/
>>>..PSECT CODE,NOWRT,SHR,PIC,EXE,RD,QUAD
>>>START:: .CALL_ENTRY PRESERVE=<>,MAX_ARGS=0,HOME_ARGS=TRUE
>>>PUSHAQ HI
>>>CALLS #1,G^LIB$PUT_OUTPUT
>>>BLBC R0,10$
>>>MOVL #SS$_NORMAL,R0
>>>10$: RET
>>>..END START
>>>$
>>>$ show system /noproc
>>>OpenVMS XG5P-H4S on node X86VMS 19-FEB-2022 13:09:56.72 Uptime 2 03:28:17
>>>$ write sys$output f$getsyi("arch_name")
>>>x86_64
>>>$ macro hw
>>>$ link hw
>>>$ run hw
>>>Hello, World!
>>
>> Macro is native! That's all I need!
>>
>
>$ set response/mode=good_natured_troll
>
>Well, there's always that someone who needs to work with obsolete
>languages... :-)

Post hoc ergo propter hoc Romney Wordsworth!

It's not obsolete. I don't write *applications* or fiddle with stuff access
via the WWW.

--
VAXman- A Bored Certified VMS Kernel Mode Hacker VAXman(at)TMESIS(dot)ORG

I speak to machines with the voice of humanity.

Re: Native compilers

<3fc73249-c4a8-437a-8cd7-49508142b14dn@googlegroups.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20982&group=comp.os.vms#20982

  copy link   Newsgroups: comp.os.vms
X-Received: by 2002:a5d:5709:0:b0:1ea:95eb:9e09 with SMTP id a9-20020a5d5709000000b001ea95eb9e09mr181616wrv.188.1645495284450;
Mon, 21 Feb 2022 18:01:24 -0800 (PST)
X-Received: by 2002:a05:620a:1475:b0:60d:f9d7:a877 with SMTP id
j21-20020a05620a147500b0060df9d7a877mr12403356qkl.54.1645495283910; Mon, 21
Feb 2022 18:01:23 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.128.88.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.os.vms
Date: Mon, 21 Feb 2022 18:01:23 -0800 (PST)
In-Reply-To: <sv0p1i$66b$3@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=47.42.235.118; posting-account=M3IgSwoAAADJd6EnOmsrCCfB6_OyTOkv
NNTP-Posting-Host: 47.42.235.118
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com> <sv0p1i$66b$3@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <3fc73249-c4a8-437a-8cd7-49508142b14dn@googlegroups.com>
Subject: Re: Native compilers
From: xyzzy1...@gmail.com (John Reagan)
Injection-Date: Tue, 22 Feb 2022 02:01:24 +0000
Content-Type: text/plain; charset="UTF-8"
 by: John Reagan - Tue, 22 Feb 2022 02:01 UTC

On Monday, February 21, 2022 at 2:26:44 PM UTC-5, Simon Clubley wrote:
> On 2022-02-19, John Reagan <xyzz...@gmail.com> wrote:
> > With all the various threads talking about compilers and such, here's a "demo" (compilers are hard to demo) of a the native Macro compiler.
> >
> > $ type hw.mar
> > .TITLE hello
> > .PSECT RDATA,NOWRT,SHR,NOPIC,NOEXE,RD,QUAD
> > HI: .ASCID /Hello, World!/
> > .PSECT CODE,NOWRT,SHR,PIC,EXE,RD,QUAD
> > START:: .CALL_ENTRY PRESERVE=<>,MAX_ARGS=0,HOME_ARGS=TRUE
> > PUSHAQ HI
> > CALLS #1,G^LIB$PUT_OUTPUT
> > BLBC R0,10$
> > MOVL #SS$_NORMAL,R0
> > 10$: RET
> > .END START
> > $
> > $ show system /noproc
> > OpenVMS XG5P-H4S on node X86VMS 19-FEB-2022 13:09:56.72 Uptime 2 03:28:17
> > $ write sys$output f$getsyi("arch_name")
> > x86_64
> > $ macro hw
> > $ link hw
> > $ run hw
> > Hello, World!
> >
> Is there any chance we can have a look at the generated code for this ?
>
> Would be interesting to see what it looks like...
> Simon.
>
> --
> Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
> Walking destinations on a map are further away than they appear.
.text
.cfi_sections .eh_frame
.globl LIB$PUT_OUTPUT
.globl SS$_NORMAL
.globl ELF$TFRADR
..set ELF$TFRADR, START
.file 1 "DKA100:[JREAGAN]HW.MAR;2"
.section CODE,"ax",@progbits
.globl START
.type START,@function
.p2align 4, 0x90
START:
.cfi_startproc

# Prologue code for routine START on line 5
.loc 1 5 0 is_stmt 0 # DKA100:[JREAGAN]HW.MAR;2:5:0
pushq %rbp # encoding: [0x55]
.cfi_def_cfa_offset 16
.cfi_offset %rbp, -16
movq %rsp, %rbp # encoding: [0x48,0x89,0xe5]
.cfi_def_cfa_register %rbp
pushq %rbx # encoding: [0x53]
.cfi_offset %rbx, -24
pushq %r15 # encoding: [0x41,0x57]
.cfi_offset %r15, -32
pushq %r14 # encoding: [0x41,0x56]
.cfi_offset %r14, -40
pushq %r13 # encoding: [0x41,0x55]
.cfi_offset %r13, -48
movzbl %ah, %ebx # encoding: [0x0f,0xb6,0xdc]
callq LIB$ALPHA_REG_VECTOR_BASE@PLT # encoding: [0xe8,A,A,A,A]
# fixup A - offset: 1, value: LIB$ALPHA_REG_VECTOR_BASE@PLT-4, kind: FK_PCRel_4
xchgq %rbx, %rax # encoding: [0x48,0x93]
pushq %r12 # encoding: [0x41,0x54]
.cfi_offset %r12, -56
addq $-40, %rsp # encoding: [0x48,0x83,0xc4,0xd8]
movl %r9d, 24(%rsp) # encoding: [0x44,0x89,0x4c,0x24,0x18]
movl %r8d, 20(%rsp) # encoding: [0x44,0x89,0x44,0x24,0x14]
movl %ecx, 16(%rsp) # encoding: [0x89,0x4c,0x24,0x10]
movl %edx, 12(%rsp) # encoding: [0x89,0x54,0x24,0x0c]
movl %esi, 8(%rsp) # encoding: [0x89,0x74,0x24,0x08]
movl %edi, 4(%rsp) # encoding: [0x89,0x7c,0x24,0x04]
movl %eax, (%rsp) # encoding: [0x89,0x04,0x24]
movq %rsp, %r12 # encoding: [0x49,0x89,0xe4]
.loc 1 5 0 prologue_end # DKA100:[JREAGAN]HW.MAR;2:5:0
_$$L1:

# Processing instruction PUSHAQ on line 6
.loc 1 58 0 # DKA100:[JREAGAN]HW.MAR;2:58:0
movq _$$PSECT_BASE3@GOTPCREL(%rip), %r10 # encoding: [0x4c,0x8b,0x15,A,A,A,A]
# fixup A - offset: 3, value: _$$PSECT_BASE3@GOTPCREL-4, kind: reloc_riprel_4byte_movq_loa
d pushq %r10 # encoding: [0x41,0x52]

# Processing instruction CALLS on line 7
.loc 1 59 0 # DKA100:[JREAGAN]HW.MAR;2:59:0
popq %rdi # encoding: [0x5f]
movq $256, %rax # encoding: [0x48,0xc7,0xc0,0x00,0x01,0x00,0x00]
# imm = 0x100
callq LIB$PUT_OUTPUT@PLT # encoding: [0xe8,A,A,A,A]
# fixup A - offset: 1, value: LIB$PUT_OUTPUT@PLT-4, kind: FK_PCRel_4
movq %rax, (%rbx) # encoding: [0x48,0x89,0x03]
movq %rdx, 8(%rbx) # encoding: [0x48,0x89,0x53,0x08]

# Processing instruction BLBC on line 8
.loc 1 60 0 # DKA100:[JREAGAN]HW.MAR;2:60:0
btq $0, (%rbx) # encoding: [0x48,0x0f,0xba,0x23,0x00]
jae 5_10$ # encoding: [0x0f,0x83,A,A,A,A]
# fixup A - offset: 2, value: 5_10$-4, kind: FK_PCRel_4

# Processing instruction MOVL on line 9
.loc 1 61 0 # DKA100:[JREAGAN]HW.MAR;2:61:0
movq SS$_NORMAL@GOTPCREL(%rip), %r10 # encoding: [0x4c,0x8b,0x15,A,A,A,A]
# fixup A - offset: 3, value: SS$_NORMAL@GOTPCREL-4, kind: reloc_riprel_4byte_movq_load
movq %r10, (%rbx) # encoding: [0x4c,0x89,0x13]
5_10$:

# Processing instruction RET on line 10
.loc 1 62 0 # DKA100:[JREAGAN]HW.MAR;2:62:0
_$$_0:
.loc 1 62 0 epilogue_begin # DKA100:[JREAGAN]HW.MAR;2:62:0
leaq -40(%rbp), %rsp # encoding: [0x48,0x8d,0x65,0xd8]
andb $-2, 240(%rbx) # encoding: [0x80,0xa3,0xf0,0x00,0x00,0x00,0xfe]
movq (%rbx), %rax # encoding: [0x48,0x8b,0x03]
movq 8(%rbx), %rdx # encoding: [0x48,0x8b,0x53,0x08]
popq %r12 # encoding: [0x41,0x5c]
.cfi_restore %r12
popq %r13 # encoding: [0x41,0x5d]
.cfi_restore %r13
popq %r14 # encoding: [0x41,0x5e]
.cfi_restore %r14
popq %r15 # encoding: [0x41,0x5f]
.cfi_restore %r15
popq %rbx # encoding: [0x5b]
.cfi_restore %rbx
popq %rbp # encoding: [0x5d]
.cfi_restore %rbp
.cfi_def_cfa %rsp, 8
retq # encoding: [0xc3]
_$$_2:
.size START, _$$_2-START
.cfi_endproc
.section ". ABS .","a",@progbits
.section ". BLANK .","axw",@progbits
.section RDATA,"a",@progbits
.type _$$PSECT_BASE3,@object
_$$PSECT_BASE3:
.type HI,@object
HI:
.short 13
.byte 14
.byte 1
.long 0_0$
.type 0_0$,@object
0_0$:
.ascii "Hello, World!"
.section .note,"",@note
.quad 8
.quad 43
.quad 1
.ascii "IPF/VMS"
.byte 0
.ascii "19-FEB-2022 13:12"
.ascii "19-FEB-2022 13:12"
.ascii "HELLO"
.byte 0
.ascii "V1"
.byte 0
.p2align 3
.quad 8
.quad 14
.quad 2
.ascii "IPF/VMS"
.byte 0
.ascii "XMAC X6.0-109"
.byte 0
.p2align 3

Re: Native compilers

<sv1j5h$e2b$1@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20983&group=comp.os.vms#20983

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: craigbe...@nospam.mac.com (Craig A. Berry)
Newsgroups: comp.os.vms
Subject: Re: Native compilers
Date: Mon, 21 Feb 2022 20:52:32 -0600
Organization: A noiseless patient Spider
Lines: 179
Message-ID: <sv1j5h$e2b$1@dont-email.me>
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>
<sv0p1i$66b$3@dont-email.me>
<3fc73249-c4a8-437a-8cd7-49508142b14dn@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Tue, 22 Feb 2022 02:52:33 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="8420a6fecd38ec356cae0019a7adfa86";
logging-data="14411"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19e7Mqf99KDsAVMF1L2M1jf42ntwnvjbOY="
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0)
Gecko/20100101 Thunderbird/91.6.1
Cancel-Lock: sha1:/UMHSFRSlBYUpWajrTPwsr88W6Y=
In-Reply-To: <3fc73249-c4a8-437a-8cd7-49508142b14dn@googlegroups.com>
Content-Language: en-US
 by: Craig A. Berry - Tue, 22 Feb 2022 02:52 UTC

On 2/21/22 8:01 PM, John Reagan wrote:
> On Monday, February 21, 2022 at 2:26:44 PM UTC-5, Simon Clubley wrote:
>> On 2022-02-19, John Reagan <xyzz...@gmail.com> wrote:
>>> With all the various threads talking about compilers and such, here's a "demo" (compilers are hard to demo) of a the native Macro compiler.
>>>
>>> $ type hw.mar
>>> .TITLE hello
>>> .PSECT RDATA,NOWRT,SHR,NOPIC,NOEXE,RD,QUAD
>>> HI: .ASCID /Hello, World!/
>>> .PSECT CODE,NOWRT,SHR,PIC,EXE,RD,QUAD
>>> START:: .CALL_ENTRY PRESERVE=<>,MAX_ARGS=0,HOME_ARGS=TRUE
>>> PUSHAQ HI
>>> CALLS #1,G^LIB$PUT_OUTPUT
>>> BLBC R0,10$
>>> MOVL #SS$_NORMAL,R0
>>> 10$: RET
>>> .END START
>>> $
>>> $ show system /noproc
>>> OpenVMS XG5P-H4S on node X86VMS 19-FEB-2022 13:09:56.72 Uptime 2 03:28:17
>>> $ write sys$output f$getsyi("arch_name")
>>> x86_64
>>> $ macro hw
>>> $ link hw
>>> $ run hw
>>> Hello, World!
>>>
>> Is there any chance we can have a look at the generated code for this ?
>>
>> Would be interesting to see what it looks like...
>> Simon.
>>
>> --
>> Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
>> Walking destinations on a map are further away than they appear.
> .text
> .cfi_sections .eh_frame
> .globl LIB$PUT_OUTPUT
> .globl SS$_NORMAL
> .globl ELF$TFRADR
> .set ELF$TFRADR, START
> .file 1 "DKA100:[JREAGAN]HW.MAR;2"
> .section CODE,"ax",@progbits
> .globl START
> .type START,@function
> .p2align 4, 0x90
> START:
> .cfi_startproc
>
> # Prologue code for routine START on line 5
> .loc 1 5 0 is_stmt 0 # DKA100:[JREAGAN]HW.MAR;2:5:0
> pushq %rbp # encoding: [0x55]
> .cfi_def_cfa_offset 16
> .cfi_offset %rbp, -16
> movq %rsp, %rbp # encoding: [0x48,0x89,0xe5]
> .cfi_def_cfa_register %rbp
> pushq %rbx # encoding: [0x53]
> .cfi_offset %rbx, -24
> pushq %r15 # encoding: [0x41,0x57]
> .cfi_offset %r15, -32
> pushq %r14 # encoding: [0x41,0x56]
> .cfi_offset %r14, -40
> pushq %r13 # encoding: [0x41,0x55]
> .cfi_offset %r13, -48
> movzbl %ah, %ebx # encoding: [0x0f,0xb6,0xdc]
> callq LIB$ALPHA_REG_VECTOR_BASE@PLT # encoding: [0xe8,A,A,A,A]
> # fixup A - offset: 1, value: LIB$ALPHA_REG_VECTOR_BASE@PLT-4, kind: FK_PCRel_4
> xchgq %rbx, %rax # encoding: [0x48,0x93]
> pushq %r12 # encoding: [0x41,0x54]
> .cfi_offset %r12, -56
> addq $-40, %rsp # encoding: [0x48,0x83,0xc4,0xd8]
> movl %r9d, 24(%rsp) # encoding: [0x44,0x89,0x4c,0x24,0x18]
> movl %r8d, 20(%rsp) # encoding: [0x44,0x89,0x44,0x24,0x14]
> movl %ecx, 16(%rsp) # encoding: [0x89,0x4c,0x24,0x10]
> movl %edx, 12(%rsp) # encoding: [0x89,0x54,0x24,0x0c]
> movl %esi, 8(%rsp) # encoding: [0x89,0x74,0x24,0x08]
> movl %edi, 4(%rsp) # encoding: [0x89,0x7c,0x24,0x04]
> movl %eax, (%rsp) # encoding: [0x89,0x04,0x24]
> movq %rsp, %r12 # encoding: [0x49,0x89,0xe4]
> .loc 1 5 0 prologue_end # DKA100:[JREAGAN]HW.MAR;2:5:0
> _$$L1:
>
> # Processing instruction PUSHAQ on line 6
> .loc 1 58 0 # DKA100:[JREAGAN]HW.MAR;2:58:0
> movq _$$PSECT_BASE3@GOTPCREL(%rip), %r10 # encoding: [0x4c,0x8b,0x15,A,A,A,A]
> # fixup A - offset: 3, value: _$$PSECT_BASE3@GOTPCREL-4, kind: reloc_riprel_4byte_movq_loa
> d
> pushq %r10 # encoding: [0x41,0x52]
>
> # Processing instruction CALLS on line 7
> .loc 1 59 0 # DKA100:[JREAGAN]HW.MAR;2:59:0
> popq %rdi # encoding: [0x5f]
> movq $256, %rax # encoding: [0x48,0xc7,0xc0,0x00,0x01,0x00,0x00]
> # imm = 0x100
> callq LIB$PUT_OUTPUT@PLT # encoding: [0xe8,A,A,A,A]
> # fixup A - offset: 1, value: LIB$PUT_OUTPUT@PLT-4, kind: FK_PCRel_4
> movq %rax, (%rbx) # encoding: [0x48,0x89,0x03]
> movq %rdx, 8(%rbx) # encoding: [0x48,0x89,0x53,0x08]
>
> # Processing instruction BLBC on line 8
> .loc 1 60 0 # DKA100:[JREAGAN]HW.MAR;2:60:0
> btq $0, (%rbx) # encoding: [0x48,0x0f,0xba,0x23,0x00]
> jae 5_10$ # encoding: [0x0f,0x83,A,A,A,A]
> # fixup A - offset: 2, value: 5_10$-4, kind: FK_PCRel_4
>
> # Processing instruction MOVL on line 9
> .loc 1 61 0 # DKA100:[JREAGAN]HW.MAR;2:61:0
> movq SS$_NORMAL@GOTPCREL(%rip), %r10 # encoding: [0x4c,0x8b,0x15,A,A,A,A]
> # fixup A - offset: 3, value: SS$_NORMAL@GOTPCREL-4, kind: reloc_riprel_4byte_movq_load
> movq %r10, (%rbx) # encoding: [0x4c,0x89,0x13]
> 5_10$:
>
> # Processing instruction RET on line 10
> .loc 1 62 0 # DKA100:[JREAGAN]HW.MAR;2:62:0
> _$$_0:
> .loc 1 62 0 epilogue_begin # DKA100:[JREAGAN]HW.MAR;2:62:0
> leaq -40(%rbp), %rsp # encoding: [0x48,0x8d,0x65,0xd8]
> andb $-2, 240(%rbx) # encoding: [0x80,0xa3,0xf0,0x00,0x00,0x00,0xfe]
> movq (%rbx), %rax # encoding: [0x48,0x8b,0x03]
> movq 8(%rbx), %rdx # encoding: [0x48,0x8b,0x53,0x08]
> popq %r12 # encoding: [0x41,0x5c]
> .cfi_restore %r12
> popq %r13 # encoding: [0x41,0x5d]
> .cfi_restore %r13
> popq %r14 # encoding: [0x41,0x5e]
> .cfi_restore %r14
> popq %r15 # encoding: [0x41,0x5f]
> .cfi_restore %r15
> popq %rbx # encoding: [0x5b]
> .cfi_restore %rbx
> popq %rbp # encoding: [0x5d]
> .cfi_restore %rbp
> .cfi_def_cfa %rsp, 8
> retq # encoding: [0xc3]
> _$$_2:
> .size START, _$$_2-START
> .cfi_endproc
> .section ". ABS .","a",@progbits
> .section ". BLANK .","axw",@progbits
> .section RDATA,"a",@progbits
> .type _$$PSECT_BASE3,@object
> _$$PSECT_BASE3:
> .type HI,@object
> HI:
> .short 13
> .byte 14
> .byte 1
> .long 0_0$
> .type 0_0$,@object
> 0_0$:
> .ascii "Hello, World!"
> .section .note,"",@note
> .quad 8
> .quad 43
> .quad 1
> .ascii "IPF/VMS"
> .byte 0
> .ascii "19-FEB-2022 13:12"
> .ascii "19-FEB-2022 13:12"
> .ascii "HELLO"
> .byte 0
> .ascii "V1"
> .byte 0
> .p2align 3
> .quad 8
> .quad 14
> .quad 2
> .ascii "IPF/VMS"
> .byte 0
> .ascii "XMAC X6.0-109"
> .byte 0
> .p2align 3

Cool. Now we just need MACRO-32 added as one of the source languages here:

https://godbolt.org

Re: Native compilers

<1be866d5-bc65-47f3-b14a-d53969ee44b8n@googlegroups.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20984&group=comp.os.vms#20984

  copy link   Newsgroups: comp.os.vms
X-Received: by 2002:adf:fe0d:0:b0:1e3:3f5e:7469 with SMTP id n13-20020adffe0d000000b001e33f5e7469mr18112217wrr.61.1645507648746;
Mon, 21 Feb 2022 21:27:28 -0800 (PST)
X-Received: by 2002:a05:6214:178c:b0:42c:5204:61ba with SMTP id
ct12-20020a056214178c00b0042c520461bamr17623471qvb.23.1645507648231; Mon, 21
Feb 2022 21:27:28 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.128.88.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.os.vms
Date: Mon, 21 Feb 2022 21:27:27 -0800 (PST)
In-Reply-To: <sv1j5h$e2b$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=47.42.235.118; posting-account=M3IgSwoAAADJd6EnOmsrCCfB6_OyTOkv
NNTP-Posting-Host: 47.42.235.118
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>
<sv0p1i$66b$3@dont-email.me> <3fc73249-c4a8-437a-8cd7-49508142b14dn@googlegroups.com>
<sv1j5h$e2b$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <1be866d5-bc65-47f3-b14a-d53969ee44b8n@googlegroups.com>
Subject: Re: Native compilers
From: xyzzy1...@gmail.com (John Reagan)
Injection-Date: Tue, 22 Feb 2022 05:27:28 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: John Reagan - Tue, 22 Feb 2022 05:27 UTC

On Monday, February 21, 2022 at 9:52:36 PM UTC-5, Craig A. Berry wrote:
> On 2/21/22 8:01 PM, John Reagan wrote:
> > On Monday, February 21, 2022 at 2:26:44 PM UTC-5, Simon Clubley wrote:
> >> On 2022-02-19, John Reagan <xyzz...@gmail.com> wrote:
> >>> With all the various threads talking about compilers and such, here's a "demo" (compilers are hard to demo) of a the native Macro compiler.
> >>>
> >>> $ type hw.mar
> >>> .TITLE hello
> >>> .PSECT RDATA,NOWRT,SHR,NOPIC,NOEXE,RD,QUAD
> >>> HI: .ASCID /Hello, World!/
> >>> .PSECT CODE,NOWRT,SHR,PIC,EXE,RD,QUAD
> >>> START:: .CALL_ENTRY PRESERVE=<>,MAX_ARGS=0,HOME_ARGS=TRUE
> >>> PUSHAQ HI
> >>> CALLS #1,G^LIB$PUT_OUTPUT
> >>> BLBC R0,10$
> >>> MOVL #SS$_NORMAL,R0
> >>> 10$: RET
> >>> .END START
> >>> $
> >>> $ show system /noproc
> >>> OpenVMS XG5P-H4S on node X86VMS 19-FEB-2022 13:09:56.72 Uptime 2 03:28:17
> >>> $ write sys$output f$getsyi("arch_name")
> >>> x86_64
> >>> $ macro hw
> >>> $ link hw
> >>> $ run hw
> >>> Hello, World!
> >>>
> >> Is there any chance we can have a look at the generated code for this ?
> >>
> >> Would be interesting to see what it looks like...
> >> Simon.
> >>
> >> --
> >> Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
> >> Walking destinations on a map are further away than they appear.
> > .text
> > .cfi_sections .eh_frame
> > .globl LIB$PUT_OUTPUT
> > .globl SS$_NORMAL
> > .globl ELF$TFRADR
> > .set ELF$TFRADR, START
> > .file 1 "DKA100:[JREAGAN]HW.MAR;2"
> > .section CODE,"ax",@progbits
> > .globl START
> > .type START,@function
> > .p2align 4, 0x90
> > START:
> > .cfi_startproc
> >
> > # Prologue code for routine START on line 5
> > .loc 1 5 0 is_stmt 0 # DKA100:[JREAGAN]HW.MAR;2:5:0
> > pushq %rbp # encoding: [0x55]
> > .cfi_def_cfa_offset 16
> > .cfi_offset %rbp, -16
> > movq %rsp, %rbp # encoding: [0x48,0x89,0xe5]
> > .cfi_def_cfa_register %rbp
> > pushq %rbx # encoding: [0x53]
> > .cfi_offset %rbx, -24
> > pushq %r15 # encoding: [0x41,0x57]
> > .cfi_offset %r15, -32
> > pushq %r14 # encoding: [0x41,0x56]
> > .cfi_offset %r14, -40
> > pushq %r13 # encoding: [0x41,0x55]
> > .cfi_offset %r13, -48
> > movzbl %ah, %ebx # encoding: [0x0f,0xb6,0xdc]
> > callq LIB$ALPHA_REG_VECTOR_BASE@PLT # encoding: [0xe8,A,A,A,A]
> > # fixup A - offset: 1, value: LIB$ALPHA_REG_VECTOR_BASE@PLT-4, kind: FK_PCRel_4
> > xchgq %rbx, %rax # encoding: [0x48,0x93]
> > pushq %r12 # encoding: [0x41,0x54]
> > .cfi_offset %r12, -56
> > addq $-40, %rsp # encoding: [0x48,0x83,0xc4,0xd8]
> > movl %r9d, 24(%rsp) # encoding: [0x44,0x89,0x4c,0x24,0x18]
> > movl %r8d, 20(%rsp) # encoding: [0x44,0x89,0x44,0x24,0x14]
> > movl %ecx, 16(%rsp) # encoding: [0x89,0x4c,0x24,0x10]
> > movl %edx, 12(%rsp) # encoding: [0x89,0x54,0x24,0x0c]
> > movl %esi, 8(%rsp) # encoding: [0x89,0x74,0x24,0x08]
> > movl %edi, 4(%rsp) # encoding: [0x89,0x7c,0x24,0x04]
> > movl %eax, (%rsp) # encoding: [0x89,0x04,0x24]
> > movq %rsp, %r12 # encoding: [0x49,0x89,0xe4]
> > .loc 1 5 0 prologue_end # DKA100:[JREAGAN]HW.MAR;2:5:0
> > _$$L1:
> >
> > # Processing instruction PUSHAQ on line 6
> > .loc 1 58 0 # DKA100:[JREAGAN]HW.MAR;2:58:0
> > movq _$$PSECT_BASE3@GOTPCREL(%rip), %r10 # encoding: [0x4c,0x8b,0x15,A,A,A,A]
> > # fixup A - offset: 3, value: _$$PSECT_BASE3@GOTPCREL-4, kind: reloc_riprel_4byte_movq_loa
> > d
> > pushq %r10 # encoding: [0x41,0x52]
> >
> > # Processing instruction CALLS on line 7
> > .loc 1 59 0 # DKA100:[JREAGAN]HW.MAR;2:59:0
> > popq %rdi # encoding: [0x5f]
> > movq $256, %rax # encoding: [0x48,0xc7,0xc0,0x00,0x01,0x00,0x00]
> > # imm = 0x100
> > callq LIB$PUT_OUTPUT@PLT # encoding: [0xe8,A,A,A,A]
> > # fixup A - offset: 1, value: LIB$PUT_OUTPUT@PLT-4, kind: FK_PCRel_4
> > movq %rax, (%rbx) # encoding: [0x48,0x89,0x03]
> > movq %rdx, 8(%rbx) # encoding: [0x48,0x89,0x53,0x08]
> >
> > # Processing instruction BLBC on line 8
> > .loc 1 60 0 # DKA100:[JREAGAN]HW.MAR;2:60:0
> > btq $0, (%rbx) # encoding: [0x48,0x0f,0xba,0x23,0x00]
> > jae 5_10$ # encoding: [0x0f,0x83,A,A,A,A]
> > # fixup A - offset: 2, value: 5_10$-4, kind: FK_PCRel_4
> >
> > # Processing instruction MOVL on line 9
> > .loc 1 61 0 # DKA100:[JREAGAN]HW.MAR;2:61:0
> > movq SS$_NORMAL@GOTPCREL(%rip), %r10 # encoding: [0x4c,0x8b,0x15,A,A,A,A]
> > # fixup A - offset: 3, value: SS$_NORMAL@GOTPCREL-4, kind: reloc_riprel_4byte_movq_load
> > movq %r10, (%rbx) # encoding: [0x4c,0x89,0x13]
> > 5_10$:
> >
> > # Processing instruction RET on line 10
> > .loc 1 62 0 # DKA100:[JREAGAN]HW.MAR;2:62:0
> > _$$_0:
> > .loc 1 62 0 epilogue_begin # DKA100:[JREAGAN]HW.MAR;2:62:0
> > leaq -40(%rbp), %rsp # encoding: [0x48,0x8d,0x65,0xd8]
> > andb $-2, 240(%rbx) # encoding: [0x80,0xa3,0xf0,0x00,0x00,0x00,0xfe]
> > movq (%rbx), %rax # encoding: [0x48,0x8b,0x03]
> > movq 8(%rbx), %rdx # encoding: [0x48,0x8b,0x53,0x08]
> > popq %r12 # encoding: [0x41,0x5c]
> > .cfi_restore %r12
> > popq %r13 # encoding: [0x41,0x5d]
> > .cfi_restore %r13
> > popq %r14 # encoding: [0x41,0x5e]
> > .cfi_restore %r14
> > popq %r15 # encoding: [0x41,0x5f]
> > .cfi_restore %r15
> > popq %rbx # encoding: [0x5b]
> > .cfi_restore %rbx
> > popq %rbp # encoding: [0x5d]
> > .cfi_restore %rbp
> > .cfi_def_cfa %rsp, 8
> > retq # encoding: [0xc3]
> > _$$_2:
> > .size START, _$$_2-START
> > .cfi_endproc
> > .section ". ABS .","a",@progbits
> > .section ". BLANK .","axw",@progbits
> > .section RDATA,"a",@progbits
> > .type _$$PSECT_BASE3,@object
> > _$$PSECT_BASE3:
> > .type HI,@object
> > HI:
> > .short 13
> > .byte 14
> > .byte 1
> > .long 0_0$
> > .type 0_0$,@object
> > 0_0$:
> > .ascii "Hello, World!"
> > .section .note,"",@note
> > .quad 8
> > .quad 43
> > .quad 1
> > .ascii "IPF/VMS"
> > .byte 0
> > .ascii "19-FEB-2022 13:12"
> > .ascii "19-FEB-2022 13:12"
> > .ascii "HELLO"
> > .byte 0
> > .ascii "V1"
> > .byte 0
> > .p2align 3
> > .quad 8
> > .quad 14
> > .quad 2
> > .ascii "IPF/VMS"
> > .byte 0
> > .ascii "XMAC X6.0-109"
> > .byte 0
> > .p2align 3
> Cool. Now we just need MACRO-32 added as one of the source languages here:
>
> https://godbolt.org
I'm a Patreon of Matt's. He runs all of his systems on AWS. However, I doubt he'll want to spin up an OpenVMS x86 system when available.

And hosting Macro-32 on a Linux system comes with its own unique nightmare. MLB files. Macro has no real include file system. You get plus-list on the DCL command and macro expansions with MLB files. Both would be a challenge with a Linux-hosted compiler.

Re: Native compilers

<sv2i58$a5h$1@news.misty.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20985&group=comp.os.vms#20985

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!.POSTED.46.20.243.28!not-for-mail
From: bqt...@softjar.se (Johnny Billquist)
Newsgroups: comp.os.vms
Subject: Re: Native compilers
Date: Tue, 22 Feb 2022 12:41:27 +0100
Organization: MGT Consulting
Message-ID: <sv2i58$a5h$1@news.misty.com>
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>
<sv0p1i$66b$3@dont-email.me>
<3fc73249-c4a8-437a-8cd7-49508142b14dn@googlegroups.com>
<sv1j5h$e2b$1@dont-email.me>
<1be866d5-bc65-47f3-b14a-d53969ee44b8n@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Tue, 22 Feb 2022 11:41:28 -0000 (UTC)
Injection-Info: news.misty.com; posting-host="46.20.243.28";
logging-data="10417"; mail-complaints-to="abuse@misty.com"
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0)
Gecko/20100101 Thunderbird/91.6.1
Content-Language: en-US
In-Reply-To: <1be866d5-bc65-47f3-b14a-d53969ee44b8n@googlegroups.com>
 by: Johnny Billquist - Tue, 22 Feb 2022 11:41 UTC

On 2022-02-22 06:27, John Reagan wrote:
> On Monday, February 21, 2022 at 9:52:36 PM UTC-5, Craig A. Berry wrote:
>> Cool. Now we just need MACRO-32 added as one of the source languages here:
>>
>> https://godbolt.org
> I'm a Patreon of Matt's. He runs all of his systems on AWS. However, I doubt he'll want to spin up an OpenVMS x86 system when available.
>
> And hosting Macro-32 on a Linux system comes with its own unique nightmare. MLB files. Macro has no real include file system. You get plus-list on the DCL command and macro expansions with MLB files. Both would be a challenge with a Linux-hosted compiler.

Uh? What? Either I am confused, or you are.
..INCLUDE /whatever/
should work just fine. It's not that Macro-32 don't have an include file
system. It's just that it's not the only thing it has. It *also* have
libraries, which is something Unix compilers usually lack when we talk
about source side.

Or at least this is what I *know* is true in Macro-11, and while it's
been quite a while since I played with Macro-32, I'm fairly certain it's
the same there.

The ability to have libraries also for source code like macros, is
really nice. But yes, it would be a headache to deal with on systems
that don't currently have it, because you'll have to implement it in
your compiler. But hey, Macro-32 as a compiler is already your own code,
so having the capability to deal with libraries shouldn't be that hard.
But then you also want a tool to be able to manipulate these
libraries... More work...

Johnny

Re: Native compilers

<00B70B5C.42159D54@SendSpamHere.ORG>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20986&group=comp.os.vms#20986

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!aioe.org!pr9o9uw/KLhPSFYv2ok3sg.user.46.165.242.75.POSTED!not-for-mail
From: VAXm...@SendSpamHere.ORG
Newsgroups: comp.os.vms
Subject: Re: Native compilers
Date: Tue, 22 Feb 2022 15:06:01 GMT
Organization: c.2022 Brian Schenkenberger. Prior employers of copyright holder and their agents must first obtain written permission to copy this posting.
Message-ID: <00B70B5C.42159D54@SendSpamHere.ORG>
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com> <sv0p1i$66b$3@dont-email.me> <3fc73249-c4a8-437a-8cd7-49508142b14dn@googlegroups.com> <sv1j5h$e2b$1@dont-email.me> <1be866d5-bc65-47f3-b14a-d53969ee44b8n@googlegroups.com> <sv2i58$a5h$1@news.misty.com>
Reply-To: VAXman- @SendSpamHere.ORG
Injection-Info: gioia.aioe.org; logging-data="17200"; posting-host="pr9o9uw/KLhPSFYv2ok3sg.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
X-Notice: Filtered by postfilter v. 0.9.2
 by: VAXm...@SendSpamHere.ORG - Tue, 22 Feb 2022 15:06 UTC

In article <sv2i58$a5h$1@news.misty.com>, Johnny Billquist <bqt@softjar.se> writes:
>{...snip..}
>Uh? What? Either I am confused, or you are.
>..INCLUDE /whatever/
>should work just fine. It's not that Macro-32 don't have an include file
>system. It's just that it's not the only thing it has. It *also* have
>libraries, which is something Unix compilers usually lack when we talk
>about source side.

There is no .INCLUDE directive in Macro-32! It is not referenced in the
VAX Macro LRM either. Adding a ".INCLUDE /whatever/" elicits the error:

.INCLUDE /whatever/
^ %AMAC-E-UNRECSTMT, unrecognized statement
at line number 173 in file SYS$SYSROOT:[SYSMGR]X.MAR;3

>Or at least this is what I *know* is true in Macro-11, and while it's
>been quite a while since I played with Macro-32, I'm fairly certain it's
>the same there.

'Tis not!

--
VAXman- A Bored Certified VMS Kernel Mode Hacker VAXman(at)TMESIS(dot)ORG

I speak to machines with the voice of humanity.

Re: Native compilers

<d1aa6b1e-f6e8-4cc8-99cd-01976bd5dc81n@googlegroups.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20987&group=comp.os.vms#20987

  copy link   Newsgroups: comp.os.vms
X-Received: by 2002:a05:6000:2c6:b0:1ea:937e:872b with SMTP id o6-20020a05600002c600b001ea937e872bmr2646883wry.233.1645543461287;
Tue, 22 Feb 2022 07:24:21 -0800 (PST)
X-Received: by 2002:a37:2797:0:b0:605:bbdb:310d with SMTP id
n145-20020a372797000000b00605bbdb310dmr14978522qkn.638.1645543460687; Tue, 22
Feb 2022 07:24:20 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.os.vms
Date: Tue, 22 Feb 2022 07:24:20 -0800 (PST)
In-Reply-To: <sv2i58$a5h$1@news.misty.com>
Injection-Info: google-groups.googlegroups.com; posting-host=47.42.235.118; posting-account=M3IgSwoAAADJd6EnOmsrCCfB6_OyTOkv
NNTP-Posting-Host: 47.42.235.118
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>
<sv0p1i$66b$3@dont-email.me> <3fc73249-c4a8-437a-8cd7-49508142b14dn@googlegroups.com>
<sv1j5h$e2b$1@dont-email.me> <1be866d5-bc65-47f3-b14a-d53969ee44b8n@googlegroups.com>
<sv2i58$a5h$1@news.misty.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <d1aa6b1e-f6e8-4cc8-99cd-01976bd5dc81n@googlegroups.com>
Subject: Re: Native compilers
From: xyzzy1...@gmail.com (John Reagan)
Injection-Date: Tue, 22 Feb 2022 15:24:21 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Lines: 51
 by: John Reagan - Tue, 22 Feb 2022 15:24 UTC

On Tuesday, February 22, 2022 at 6:41:30 AM UTC-5, Johnny Billquist wrote:
> On 2022-02-22 06:27, John Reagan wrote:
> > On Monday, February 21, 2022 at 9:52:36 PM UTC-5, Craig A. Berry wrote:
> >> Cool. Now we just need MACRO-32 added as one of the source languages here:
> >>
> >> https://godbolt.org
> > I'm a Patreon of Matt's. He runs all of his systems on AWS. However, I doubt he'll want to spin up an OpenVMS x86 system when available.
> >
> > And hosting Macro-32 on a Linux system comes with its own unique nightmare. MLB files. Macro has no real include file system. You get plus-list on the DCL command and macro expansions with MLB files. Both would be a challenge with a Linux-hosted compiler.
> Uh? What? Either I am confused, or you are.
> .INCLUDE /whatever/
> should work just fine. It's not that Macro-32 don't have an include file
> system. It's just that it's not the only thing it has. It *also* have
> libraries, which is something Unix compilers usually lack when we talk
> about source side.
>
> Or at least this is what I *know* is true in Macro-11, and while it's
> been quite a while since I played with Macro-32, I'm fairly certain it's
> the same there.
>
> The ability to have libraries also for source code like macros, is
> really nice. But yes, it would be a headache to deal with on systems
> that don't currently have it, because you'll have to implement it in
> your compiler. But hey, Macro-32 as a compiler is already your own code,
> so having the capability to deal with libraries shouldn't be that hard.
> But then you also want a tool to be able to manipulate these
> libraries... More work...
>
> Johnny
The Macro compiler uses GEM for all of its I/O (just like all the other compilers).
For macros, we call the callable librarian to find the macro and return the records.
Anyone with a sizable Macro-32 application must be using LIBR/MACRO and adding
"lib.MLB/LIBRARY" on the command line as plus-list. Having a Linux-hosted Macro-32
has more issues than Linux-hosted BLISS (which existed in the past).

As for something on godbolt.org could use, none of that would be required for a quick
10 line example.

Re: Native compilers

<sv3bqn$9rl$3@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20990&group=comp.os.vms#20990

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!aioe.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: club...@remove_me.eisner.decus.org-Earth.UFP (Simon Clubley)
Newsgroups: comp.os.vms
Subject: Re: Native compilers
Date: Tue, 22 Feb 2022 18:59:35 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 31
Message-ID: <sv3bqn$9rl$3@dont-email.me>
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com> <sv0p1i$66b$3@dont-email.me> <3fc73249-c4a8-437a-8cd7-49508142b14dn@googlegroups.com>
Injection-Date: Tue, 22 Feb 2022 18:59:35 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="1fa2f5c9dd6d3ca979192dd690002520";
logging-data="10101"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+25jW2wNTPLwxJrewiKEvGgDL6sgvdQ04="
User-Agent: slrn/0.9.8.1 (VMS/Multinet)
Cancel-Lock: sha1:gVrKt1pUyT8EIMd2RD22g8q0UjU=
 by: Simon Clubley - Tue, 22 Feb 2022 18:59 UTC

On 2022-02-21, John Reagan <xyzzy1959@gmail.com> wrote:
> On Monday, February 21, 2022 at 2:26:44 PM UTC-5, Simon Clubley wrote:
>> Is there any chance we can have a look at the generated code for this ?
>>
>> Would be interesting to see what it looks like...
> .text
> .cfi_sections .eh_frame
> .globl LIB$PUT_OUTPUT
> .globl SS$_NORMAL
> .globl ELF$TFRADR
> .set ELF$TFRADR, START
> .file 1 "DKA100:[JREAGAN]HW.MAR;2"
> .section CODE,"ax",@progbits
> .globl START
> .type START,@function
> .p2align 4, 0x90
> START:
> .cfi_startproc

[snip example]

Thank you for posting the example John.

It's nice having a greater number of registers to work with than
the traditional Intel x86 architecture isn't it ? :-)

Simon.

--
Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.

Re: Native compilers

<808b6236-65a2-45d0-a2f5-eb1a749baf8an@googlegroups.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20991&group=comp.os.vms#20991

  copy link   Newsgroups: comp.os.vms
X-Received: by 2002:adf:fe0d:0:b0:1e3:3f5e:7469 with SMTP id n13-20020adffe0d000000b001e33f5e7469mr20837865wrr.61.1645561714063;
Tue, 22 Feb 2022 12:28:34 -0800 (PST)
X-Received: by 2002:ac8:57c3:0:b0:2de:4d85:9d63 with SMTP id
w3-20020ac857c3000000b002de4d859d63mr4500534qta.591.1645561713546; Tue, 22
Feb 2022 12:28:33 -0800 (PST)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.os.vms
Date: Tue, 22 Feb 2022 12:28:33 -0800 (PST)
In-Reply-To: <sv3bqn$9rl$3@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=47.42.235.118; posting-account=M3IgSwoAAADJd6EnOmsrCCfB6_OyTOkv
NNTP-Posting-Host: 47.42.235.118
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>
<sv0p1i$66b$3@dont-email.me> <3fc73249-c4a8-437a-8cd7-49508142b14dn@googlegroups.com>
<sv3bqn$9rl$3@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <808b6236-65a2-45d0-a2f5-eb1a749baf8an@googlegroups.com>
Subject: Re: Native compilers
From: xyzzy1...@gmail.com (John Reagan)
Injection-Date: Tue, 22 Feb 2022 20:28:34 +0000
Content-Type: text/plain; charset="UTF-8"
Lines: 33
 by: John Reagan - Tue, 22 Feb 2022 20:28 UTC

On Tuesday, February 22, 2022 at 1:59:37 PM UTC-5, Simon Clubley wrote:
> On 2022-02-21, John Reagan <xyzz...@gmail.com> wrote:
> > On Monday, February 21, 2022 at 2:26:44 PM UTC-5, Simon Clubley wrote:
> >> Is there any chance we can have a look at the generated code for this ?
> >>
> >> Would be interesting to see what it looks like...
> > .text
> > .cfi_sections .eh_frame
> > .globl LIB$PUT_OUTPUT
> > .globl SS$_NORMAL
> > .globl ELF$TFRADR
> > .set ELF$TFRADR, START
> > .file 1 "DKA100:[JREAGAN]HW.MAR;2"
> > .section CODE,"ax",@progbits
> > .globl START
> > .type START,@function
> > .p2align 4, 0x90
> > START:
> > .cfi_startproc
> [snip example]
>
> Thank you for posting the example John.
>
> It's nice having a greater number of registers to work with than
> the traditional Intel x86 architecture isn't it ? :-)
> Simon.
>
> --
> Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP
> Walking destinations on a map are further away than they appear.
~8 vs ~16 Ugh. Compared to Alpha's 32 and Itanium's 128.

However, gcc has lived forever in this environment with putting variables on the
stack and hoping that the cache saves the day.

Re: Native compilers

<6215498c$0$705$14726298@news.sunsite.dk>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20992&group=comp.os.vms#20992

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!aioe.org!news.uzoreto.com!dotsrc.org!filter.dotsrc.org!news.dotsrc.org!not-for-mail
Date: Tue, 22 Feb 2022 15:37:32 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.6.1
Subject: Re: Native compilers
Content-Language: en-US
Newsgroups: comp.os.vms
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>
<sv0p1i$66b$3@dont-email.me>
<3fc73249-c4a8-437a-8cd7-49508142b14dn@googlegroups.com>
<sv3bqn$9rl$3@dont-email.me>
<808b6236-65a2-45d0-a2f5-eb1a749baf8an@googlegroups.com>
From: arn...@vajhoej.dk (Arne Vajhøj)
In-Reply-To: <808b6236-65a2-45d0-a2f5-eb1a749baf8an@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 35
Message-ID: <6215498c$0$705$14726298@news.sunsite.dk>
Organization: SunSITE.dk - Supporting Open source
NNTP-Posting-Host: 21ea0de3.news.sunsite.dk
X-Trace: 1645562252 news.sunsite.dk 705 arne@vajhoej.dk/68.9.63.232:56275
X-Complaints-To: staff@sunsite.dk
 by: Arne Vajhøj - Tue, 22 Feb 2022 20:37 UTC

On 2/22/2022 3:28 PM, John Reagan wrote:
> On Tuesday, February 22, 2022 at 1:59:37 PM UTC-5, Simon Clubley wrote:
>> On 2022-02-21, John Reagan <xyzz...@gmail.com> wrote:
>>> On Monday, February 21, 2022 at 2:26:44 PM UTC-5, Simon Clubley wrote:
>>>> Is there any chance we can have a look at the generated code for this ?
>>>>
>>>> Would be interesting to see what it looks like...
>>> .text
>>> .cfi_sections .eh_frame
>>> .globl LIB$PUT_OUTPUT
>>> .globl SS$_NORMAL
>>> .globl ELF$TFRADR
>>> .set ELF$TFRADR, START
>>> .file 1 "DKA100:[JREAGAN]HW.MAR;2"
>>> .section CODE,"ax",@progbits
>>> .globl START
>>> .type START,@function
>>> .p2align 4, 0x90
>>> START:
>>> .cfi_startproc
>> [snip example]
>>
>> Thank you for posting the example John.
>>
>> It's nice having a greater number of registers to work with than
>> the traditional Intel x86 architecture isn't it ? :-)

> ~8 vs ~16 Ugh. Compared to Alpha's 32 and Itanium's 128.
>
> However, gcc has lived forever in this environment with putting variables on the
> stack and hoping that the cache saves the day.

Ice Lake's got 48 KB data L1 and 1.25 MB L2 per core.

Arne

Re: Native compilers

<j7l89pFt8acU1@mid.individual.net>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20995&group=comp.os.vms#20995

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!news.swapon.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: news0...@eager.cx (Bob Eager)
Newsgroups: comp.os.vms
Subject: Re: Native compilers
Date: 22 Feb 2022 23:01:14 GMT
Lines: 15
Message-ID: <j7l89pFt8acU1@mid.individual.net>
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>
<sv0p1i$66b$3@dont-email.me>
<3fc73249-c4a8-437a-8cd7-49508142b14dn@googlegroups.com>
<sv3bqn$9rl$3@dont-email.me>
<808b6236-65a2-45d0-a2f5-eb1a749baf8an@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Trace: individual.net OQElp5BBjPmdGd8VNde2YwadmhEg7cEPa8TxzRr+Ckfsy0yAbf
Cancel-Lock: sha1:KLDANJfB1jmUhfPkYdtvLhaIHNs=
User-Agent: Pan/0.145 (Duplicitous mercenary valetism; d7e168a
git.gnome.org/pan2)
 by: Bob Eager - Tue, 22 Feb 2022 23:01 UTC

On Tue, 22 Feb 2022 12:28:33 -0800, John Reagan wrote:

> ~8 vs ~16 Ugh. Compared to Alpha's 32 and Itanium's 128.
>
> However, gcc has lived forever in this environment with putting
> variables on the stack and hoping that the cache saves the day.

I'm just writing a simulator for a single register mainframe (OK, it also
has an index register). Heavily cached stack.

--
My posts are my copyright and if @diy_forums or Home Owners' Hub
wish to copy them they can pay me £1 a message.
Use the BIG mirror service in the UK: http://www.mirrorservice.org
*lightning surge protection* - a w_tom conductor

Compiler Explorer (Re: Native compilers)

<sv3sj5$frn$1@dont-email.me>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20997&group=comp.os.vms#20997

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: craigbe...@nospam.mac.com (Craig A. Berry)
Newsgroups: comp.os.vms
Subject: Compiler Explorer (Re: Native compilers)
Date: Tue, 22 Feb 2022 17:45:39 -0600
Organization: A noiseless patient Spider
Lines: 37
Message-ID: <sv3sj5$frn$1@dont-email.me>
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>
<sv0p1i$66b$3@dont-email.me>
<3fc73249-c4a8-437a-8cd7-49508142b14dn@googlegroups.com>
<sv1j5h$e2b$1@dont-email.me>
<1be866d5-bc65-47f3-b14a-d53969ee44b8n@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Tue, 22 Feb 2022 23:45:41 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="5a77500e144c88af1bd9405b32e95afe";
logging-data="16247"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+VmgWAn3118JxKQDyxHDqw04LVIbBmUuo="
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0)
Gecko/20100101 Thunderbird/91.6.1
Cancel-Lock: sha1:Rgb61HvNuauuECihEjG++0ilTJE=
In-Reply-To: <1be866d5-bc65-47f3-b14a-d53969ee44b8n@googlegroups.com>
Content-Language: en-US
 by: Craig A. Berry - Tue, 22 Feb 2022 23:45 UTC

On 2/21/22 11:27 PM, John Reagan wrote:
> On Monday, February 21, 2022 at 9:52:36 PM UTC-5, Craig A. Berry wrote:

>> Cool. Now we just need MACRO-32 added as one of the source languages here:
>>
>> https://godbolt.org

> I'm a Patron of Matt's. He runs all of his systems on AWS. However,
> I doubt he'll want to spin up an OpenVMS x86 system when available.

It doesn't have to be him -- the code is open source and anyone can run
their own:

https://github.com/compiler-explorer/compiler-explorer

I was sort of kidding, but having one for the DEC compilers is not
/that/ crazy a thought, although apparently it requires Node, so one
would either need to port the V8 Javascript engine and Node to VMS or
suss out the details of how a remote server receives a program to
compile, compiles it, and sends the results back. The latter is
probably equivalent to what the VMS IDE in VSCode is doing. Basically
it would involve implementing the REST API documented here:

<https://github.com/compiler-explorer/compiler-explorer/blob/main/docs/API.md>

> And hosting Macro-32 on a Linux system comes with its own unique
> nightmare. MLB files. Macro has no real include file system. You
> get plus-list on the DCL command and macro expansions with MLB files.
> Both would be a challenge with a Linux-hosted compiler.
That sounds painful. More painful than porting Node ;-).

None of this is meant as yet another "VSI must do this to save the
world," etc. Just something I stumbled on that looked interesting.
Plus, if it were so easy to try out test programs in any and every
language, the newsgroup would die off because people would no longer
have an excuse to pile hate on languages they don't know anything about :-).

Re: Native compilers

<sv5ias$ute$1@news.misty.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=20999&group=comp.os.vms#20999

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!.POSTED.46.20.243.28!not-for-mail
From: bqt...@softjar.se (Johnny Billquist)
Newsgroups: comp.os.vms
Subject: Re: Native compilers
Date: Wed, 23 Feb 2022 16:02:52 +0100
Organization: MGT Consulting
Message-ID: <sv5ias$ute$1@news.misty.com>
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>
<sv0p1i$66b$3@dont-email.me>
<3fc73249-c4a8-437a-8cd7-49508142b14dn@googlegroups.com>
<sv1j5h$e2b$1@dont-email.me>
<1be866d5-bc65-47f3-b14a-d53969ee44b8n@googlegroups.com>
<sv2i58$a5h$1@news.misty.com> <00B70B5C.42159D54@SendSpamHere.ORG>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Wed, 23 Feb 2022 15:02:52 -0000 (UTC)
Injection-Info: news.misty.com; posting-host="46.20.243.28";
logging-data="31662"; mail-complaints-to="abuse@misty.com"
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0)
Gecko/20100101 Thunderbird/91.6.1
Content-Language: en-US
In-Reply-To: <00B70B5C.42159D54@SendSpamHere.ORG>
 by: Johnny Billquist - Wed, 23 Feb 2022 15:02 UTC

On 2022-02-22 16:06, VAXman-@SendSpamHere.ORG wrote:
> In article <sv2i58$a5h$1@news.misty.com>, Johnny Billquist <bqt@softjar.se> writes:
>> {...snip..}
>> Uh? What? Either I am confused, or you are.
>> ..INCLUDE /whatever/
>> should work just fine. It's not that Macro-32 don't have an include file
>> system. It's just that it's not the only thing it has. It *also* have
>> libraries, which is something Unix compilers usually lack when we talk
>> about source side.
>
> There is no .INCLUDE directive in Macro-32! It is not referenced in the
> VAX Macro LRM either. Adding a ".INCLUDE /whatever/" elicits the error:
>
> .INCLUDE /whatever/
> ^
> %AMAC-E-UNRECSTMT, unrecognized statement
> at line number 173 in file SYS$SYSROOT:[SYSMGR]X.MAR;3
>
>
>> Or at least this is what I *know* is true in Macro-11, and while it's
>> been quite a while since I played with Macro-32, I'm fairly certain it's
>> the same there.
>
> 'Tis not!

Ok. This time I'm really surprised. Makes one wonder why this was
removed in Macro-32, which certainly otherwise feels like a spiritual
successor to Macro-11.

And I certainly believed I had used it in the dim past when I played
more on VAXen. Brains develop bit rot...

Johnny

Re: Native compilers

<00B70C4E.D33D70E4@SendSpamHere.ORG>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=21004&group=comp.os.vms#21004

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!aioe.org!pr9o9uw/KLhPSFYv2ok3sg.user.46.165.242.75.POSTED!not-for-mail
From: VAXm...@SendSpamHere.ORG
Newsgroups: comp.os.vms
Subject: Re: Native compilers
Date: Wed, 23 Feb 2022 20:02:22 GMT
Organization: c.2022 Brian Schenkenberger. Prior employers of copyright holder and their agents must first obtain written permission to copy this posting.
Message-ID: <00B70C4E.D33D70E4@SendSpamHere.ORG>
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com> <sv0p1i$66b$3@dont-email.me> <3fc73249-c4a8-437a-8cd7-49508142b14dn@googlegroups.com> <sv1j5h$e2b$1@dont-email.me> <1be866d5-bc65-47f3-b14a-d53969ee44b8n@googlegroups.com> <sv2i58$a5h$1@news.misty.com> <00B70B5C.42159D54@SendSpamHere.ORG>
Reply-To: VAXman- @SendSpamHere.ORG
Injection-Info: gioia.aioe.org; logging-data="57973"; posting-host="pr9o9uw/KLhPSFYv2ok3sg.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
X-Notice: Filtered by postfilter v. 0.9.2
 by: VAXm...@SendSpamHere.ORG - Wed, 23 Feb 2022 20:02 UTC

In article <sv5ias$ute$1@news.misty.com>, Johnny Billquist <bqt@softjar.se> writes:
>On 2022-02-22 16:06, VAXman-@SendSpamHere.ORG wrote:
>> In article <sv2i58$a5h$1@news.misty.com>, Johnny Billquist <bqt@softjar.se> writes:
>>> {...snip..}
>>> Uh? What? Either I am confused, or you are.
>>> ..INCLUDE /whatever/
>>> should work just fine. It's not that Macro-32 don't have an include file
>>> system. It's just that it's not the only thing it has. It *also* have
>>> libraries, which is something Unix compilers usually lack when we talk
>>> about source side.
>>
>> There is no .INCLUDE directive in Macro-32! It is not referenced in the
>> VAX Macro LRM either. Adding a ".INCLUDE /whatever/" elicits the error:
>>
>> .INCLUDE /whatever/
>> ^
>> %AMAC-E-UNRECSTMT, unrecognized statement
>> at line number 173 in file SYS$SYSROOT:[SYSMGR]X.MAR;3
>>
>>
>>> Or at least this is what I *know* is true in Macro-11, and while it's
>>> been quite a while since I played with Macro-32, I'm fairly certain it's
>>> the same there.
>>
>> 'Tis not!
>
>Ok. This time I'm really surprised. Makes one wonder why this was
>removed in Macro-32, which certainly otherwise feels like a spiritual
>successor to Macro-11.
>
>And I certainly believed I had used it in the dim past when I played
>more on VAXen. Brains develop bit rot...

Personally, I prefer the macro library mechanism. If you need to ".INCLUDE"
put it in a macro library, reference the library (.LIBRARY) and then callout
the module. The idea is reusable macros. One time Macro-32 should simply be
put into the source.

--
VAXman- A Bored Certified VMS Kernel Mode Hacker VAXman(at)TMESIS(dot)ORG

I speak to machines with the voice of humanity.

Re: Native compilers

<sv7on8$ljq$1@news.misty.com>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=21005&group=comp.os.vms#21005

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.misty.com!.POSTED.46.20.243.28!not-for-mail
From: bqt...@softjar.se (Johnny Billquist)
Newsgroups: comp.os.vms
Subject: Re: Native compilers
Date: Thu, 24 Feb 2022 12:04:07 +0100
Organization: MGT Consulting
Message-ID: <sv7on8$ljq$1@news.misty.com>
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com>
<sv0p1i$66b$3@dont-email.me>
<3fc73249-c4a8-437a-8cd7-49508142b14dn@googlegroups.com>
<sv1j5h$e2b$1@dont-email.me>
<1be866d5-bc65-47f3-b14a-d53969ee44b8n@googlegroups.com>
<sv2i58$a5h$1@news.misty.com> <00B70B5C.42159D54@SendSpamHere.ORG>
<00B70C4E.D33D70E4@SendSpamHere.ORG>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Thu, 24 Feb 2022 11:04:08 -0000 (UTC)
Injection-Info: news.misty.com; posting-host="46.20.243.28";
logging-data="22138"; mail-complaints-to="abuse@misty.com"
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0)
Gecko/20100101 Thunderbird/91.6.1
Content-Language: en-US
In-Reply-To: <00B70C4E.D33D70E4@SendSpamHere.ORG>
 by: Johnny Billquist - Thu, 24 Feb 2022 11:04 UTC

On 2022-02-23 21:02, VAXman-@SendSpamHere.ORG wrote:
> In article <sv5ias$ute$1@news.misty.com>, Johnny Billquist <bqt@softjar.se> writes:
>> On 2022-02-22 16:06, VAXman-@SendSpamHere.ORG wrote:
>>> There is no .INCLUDE directive in Macro-32! It is not referenced in the
>>> VAX Macro LRM either. Adding a ".INCLUDE /whatever/" elicits the error:
>>>
>>> .INCLUDE /whatever/
>>> ^
>>> %AMAC-E-UNRECSTMT, unrecognized statement
>>> at line number 173 in file SYS$SYSROOT:[SYSMGR]X.MAR;3
>>>
>>>
>>>> Or at least this is what I *know* is true in Macro-11, and while it's
>>>> been quite a while since I played with Macro-32, I'm fairly certain it's
>>>> the same there.
>>>
>>> 'Tis not!
>>
>> Ok. This time I'm really surprised. Makes one wonder why this was
>> removed in Macro-32, which certainly otherwise feels like a spiritual
>> successor to Macro-11.
>>
>> And I certainly believed I had used it in the dim past when I played
>> more on VAXen. Brains develop bit rot...
>
> Personally, I prefer the macro library mechanism. If you need to ".INCLUDE"
> put it in a macro library, reference the library (.LIBRARY) and then callout
> the module. The idea is reusable macros. One time Macro-32 should simply be
> put into the source.

They have different uses, and are not interchangeable.
I certainly like the macro libraries, but they cannot be used for things
like some prefix file you want to add to the compilation. Which is why
..include is also good. Of course, you can also do this on the command
line, which is what I believe John Reagan was hinting at.

But I find it a bit annoying to have to remember to throw those things
in on the command line, so when possible, I use .include instead.

Typical things are stuff like you have some configuration step that
based on your choices creates a prefix file with various symbols
defined. Which is then included in with the compilation, and the source
have various conditional parts that are included or not (or modified)
based on what's in the prefix file.

You could, of course, create a macro out of the whole thing, and put
that in a library, and then the source refers to that created library,
invokes the known macro that defines all the choices made, and then you
are good. But that seems like a very complicated way of doing things here...

(There is so much conditional code in RSX it's almost ridiculous.
Without such prefix files selecting which way to build things, it would
become horrible. Hello LB:[11,10]RSXMC.MAC)

Johnny

Re: Native compilers

<00B70CD9.38E6935E@SendSpamHere.ORG>

  copy mid

https://www.novabbs.com/computers/article-flat.php?id=21006&group=comp.os.vms#21006

  copy link   Newsgroups: comp.os.vms
Path: i2pn2.org!i2pn.org!aioe.org!pr9o9uw/KLhPSFYv2ok3sg.user.46.165.242.75.POSTED!not-for-mail
From: VAXm...@SendSpamHere.ORG
Newsgroups: comp.os.vms
Subject: Re: Native compilers
Date: Thu, 24 Feb 2022 12:33:04 GMT
Organization: c.2022 Brian Schenkenberger. Prior employers of copyright holder and their agents must first obtain written permission to copy this posting.
Message-ID: <00B70CD9.38E6935E@SendSpamHere.ORG>
References: <226d2c3c-996d-45f5-8c01-9fa650ae016dn@googlegroups.com> <sv0p1i$66b$3@dont-email.me> <3fc73249-c4a8-437a-8cd7-49508142b14dn@googlegroups.com> <sv1j5h$e2b$1@dont-email.me> <1be866d5-bc65-47f3-b14a-d53969ee44b8n@googlegroups.com> <sv2i58$a5h$1@news.misty.com> <00B70B5C.42159D54@SendSpamHere.ORG> <00B70C4E.D33D70E4@SendSpamHere.ORG>
Reply-To: VAXman- @SendSpamHere.ORG
Injection-Info: gioia.aioe.org; logging-data="11344"; posting-host="pr9o9uw/KLhPSFYv2ok3sg.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
X-Notice: Filtered by postfilter v. 0.9.2
 by: VAXm...@SendSpamHere.ORG - Thu, 24 Feb 2022 12:33 UTC

In article <sv7on8$ljq$1@news.misty.com>, Johnny Billquist <bqt@softjar.se> writes:
>On 2022-02-23 21:02, VAXman-@SendSpamHere.ORG wrote:
>> In article <sv5ias$ute$1@news.misty.com>, Johnny Billquist <bqt@softjar.se> writes:
>>> On 2022-02-22 16:06, VAXman-@SendSpamHere.ORG wrote:
>>>> There is no .INCLUDE directive in Macro-32! It is not referenced in the
>>>> VAX Macro LRM either. Adding a ".INCLUDE /whatever/" elicits the error:
>>>>
>>>> .INCLUDE /whatever/
>>>> ^
>>>> %AMAC-E-UNRECSTMT, unrecognized statement
>>>> at line number 173 in file SYS$SYSROOT:[SYSMGR]X.MAR;3
>>>>
>>>>
>>>>> Or at least this is what I *know* is true in Macro-11, and while it's
>>>>> been quite a while since I played with Macro-32, I'm fairly certain it's
>>>>> the same there.
>>>>
>>>> 'Tis not!
>>>
>>> Ok. This time I'm really surprised. Makes one wonder why this was
>>> removed in Macro-32, which certainly otherwise feels like a spiritual
>>> successor to Macro-11.
>>>
>>> And I certainly believed I had used it in the dim past when I played
>>> more on VAXen. Brains develop bit rot...
>>
>> Personally, I prefer the macro library mechanism. If you need to ".INCLUDE"
>> put it in a macro library, reference the library (.LIBRARY) and then callout
>> the module. The idea is reusable macros. One time Macro-32 should simply be
>> put into the source.
>
>They have different uses, and are not interchangeable.
>I certainly like the macro libraries, but they cannot be used for things
>like some prefix file you want to add to the compilation. Which is why
>..include is also good. Of course, you can also do this on the command
>line, which is what I believe John Reagan was hinting at.
>
>But I find it a bit annoying to have to remember to throw those things
>in on the command line, so when possible, I use .include instead.
>
>Typical things are stuff like you have some configuration step that
>based on your choices creates a prefix file with various symbols
>defined. Which is then included in with the compilation, and the source
>have various conditional parts that are included or not (or modified)
>based on what's in the prefix file.

VMS provides a file for multiple target (VAX, Alpha, Itanium and I would
assume for the X86 too) that defines various conditional symbols for the
different architectures.

In my DESCRIP.MMS file, I create a library (SYS$LIBRARY:ARCH.MLB) and I
then sandwich the contents of SYS$LIBRARY:ARCH_DEFS.MAR inside of .MACRO
and .ENDM directive and insert that in the ARCH.MLB. Then, my code can
incorporate this with:

.LIBRARY "SYS$LIBRARY:ARCH.MLB"
.ARCH_DEFS

>You could, of course, create a macro out of the whole thing, and put
>that in a library, and then the source refers to that created library,
>invokes the known macro that defines all the choices made, and then you
>are good. But that seems like a very complicated way of doing things here...

MMS makes this virtually effortless, IMNSHO. If you can edit your source
to add a ".INCLUDE", you can edit it to callout a macro.

>(There is so much conditional code in RSX it's almost ridiculous.
>Without such prefix files selecting which way to build things, it would
>become horrible. Hello LB:[11,10]RSXMC.MAC)

comp.os.vms
--------^^^

--
VAXman- A Bored Certified VMS Kernel Mode Hacker VAXman(at)TMESIS(dot)ORG

I speak to machines with the voice of humanity.

Pages:123
server_pubkey.txt

rocksolid light 0.9.8
clearnet tor