Rocksolid Light

Welcome to RetroBBS

mail  files  register  newsreader  groups  login

Message-ID:  

One Bell System - it works.


devel / comp.lang.fortran / GCC and Gfortran 3.1 released

SubjectAuthor
* GCC and Gfortran 3.1 releasedThomas Koenig
+- Re: GCC and Gfortran 13.1 releasedThomas Koenig
`* Behavior on integer overflow (was: GCC and Gfortran 13.1 released)Thomas Koenig
 `* Re: Behavior on integer overflow (was: GCC and Gfortran 13.1Steven G. Kargl
  `* Re: Behavior on integer overflow (was: GCC and Gfortran 13.1Thomas Koenig
   +- Re: Behavior on integer overflow (was: GCC and Gfortran 13.1Steven G. Kargl
   `* Re: Behavior on integer overflow (was: GCC and Gfortran 13.1 released)gah4
    `- Re: Behavior on integer overflow (was: GCC and Gfortran 13.1Thomas Koenig

1
GCC and Gfortran 3.1 released

<u2auh8$gb2r$1@newsreader4.netcologne.de>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=3349&group=comp.lang.fortran#3349

  copy link   Newsgroups: comp.lang.fortran
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!newsreader4.netcologne.de!news.netcologne.de!.POSTED.2a0a-a540-d3e-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de!not-for-mail
From: tkoenig@netcologne.de (Thomas Koenig)
Newsgroups: comp.lang.fortran
Subject: GCC and Gfortran 3.1 released
Date: Wed, 26 Apr 2023 10:31:04 -0000 (UTC)
Organization: news.netcologne.de
Distribution: world
Message-ID: <u2auh8$gb2r$1@newsreader4.netcologne.de>
Injection-Date: Wed, 26 Apr 2023 10:31:04 -0000 (UTC)
Injection-Info: newsreader4.netcologne.de; posting-host="2a0a-a540-d3e-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de:2a0a:a540:d3e:0:7285:c2ff:fe6c:992d";
logging-data="535643"; mail-complaints-to="abuse@netcologne.de"
User-Agent: slrn/1.0.3 (Linux)
 by: Thomas Koenig - Wed, 26 Apr 2023 10:31 UTC

The GCC developers are proud to announce a new major GCC release, 13.1.

Apart from many bug fixes and enhancement this release includes
the following Fortran-relevant changes:

Fortran: Finalization is now fully supported.

OpenMP 5.0: Fortran now supports some non-rectangular loop nests;
for C/C++, the support was added in GCC 11.

Behavior on integer overflow

GCC 13 includes new optimizations which may change behavior on
integer overflow. Traditional code, like linear congruential
pseudo-random number generators in old programs and relying on
a specific, non-standard behavior may now generate unexpected
results. The option -fsanitize=undefined can be used to detect
such code at runtime.

It is recommended to use the intrinsic subroutine RANDOM_NUMBER for
random number generators or, if the old behavior is desired, to use
the -fwrapv option. Note that this option can impact performance.

Please find more details at https://gcc.gnu.org/gcc-13/changes.html
and https://gcc.gnu.org/gcc-13/porting_to.html .

Enjoy!

Re: GCC and Gfortran 13.1 released

<u2avri$gc1e$1@newsreader4.netcologne.de>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=3350&group=comp.lang.fortran#3350

  copy link   Newsgroups: comp.lang.fortran
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!newsreader4.netcologne.de!news.netcologne.de!.POSTED.2a0a-a540-d3e-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de!not-for-mail
From: tkoenig@netcologne.de (Thomas Koenig)
Newsgroups: comp.lang.fortran
Subject: Re: GCC and Gfortran 13.1 released
Date: Wed, 26 Apr 2023 10:53:38 -0000 (UTC)
Organization: news.netcologne.de
Distribution: world
Message-ID: <u2avri$gc1e$1@newsreader4.netcologne.de>
References: <u2auh8$gb2r$1@newsreader4.netcologne.de>
Injection-Date: Wed, 26 Apr 2023 10:53:38 -0000 (UTC)
Injection-Info: newsreader4.netcologne.de; posting-host="2a0a-a540-d3e-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de:2a0a:a540:d3e:0:7285:c2ff:fe6c:992d";
logging-data="536622"; mail-complaints-to="abuse@netcologne.de"
User-Agent: slrn/1.0.3 (Linux)
 by: Thomas Koenig - Wed, 26 Apr 2023 10:53 UTC

.... should have been that Subject, of course.

Behavior on integer overflow (was: GCC and Gfortran 13.1 released)

<u3gifi$18eh6$1@newsreader4.netcologne.de>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=3385&group=comp.lang.fortran#3385

  copy link   Newsgroups: comp.lang.fortran
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!3.eu.feeder.erje.net!feeder.erje.net!newsreader4.netcologne.de!news.netcologne.de!.POSTED.2001-4dd6-3fec-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de!not-for-mail
From: tkoenig@netcologne.de (Thomas Koenig)
Newsgroups: comp.lang.fortran
Subject: Behavior on integer overflow (was: GCC and Gfortran 13.1 released)
Date: Wed, 10 May 2023 16:58:27 -0000 (UTC)
Organization: news.netcologne.de
Distribution: world
Message-ID: <u3gifi$18eh6$1@newsreader4.netcologne.de>
References: <u2auh8$gb2r$1@newsreader4.netcologne.de>
Injection-Date: Wed, 10 May 2023 16:58:27 -0000 (UTC)
Injection-Info: newsreader4.netcologne.de; posting-host="2001-4dd6-3fec-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de:2001:4dd6:3fec:0:7285:c2ff:fe6c:992d";
logging-data="1325606"; mail-complaints-to="abuse@netcologne.de"
User-Agent: slrn/1.0.3 (Linux)
 by: Thomas Koenig - Wed, 10 May 2023 16:58 UTC

I wrote

> Behavior on integer overflow
>
> GCC 13 includes new optimizations which may change behavior on
> integer overflow. Traditional code, like linear congruential
> pseudo-random number generators in old programs and relying on
> a specific, non-standard behavior may now generate unexpected
> results. The option -fsanitize=undefined can be used to detect
> such code at runtime.
>
> It is recommended to use the intrinsic subroutine RANDOM_NUMBER for
> random number generators or, if the old behavior is desired, to use
> the -fwrapv option. Note that this option can impact performance.
>
> Please find more details at https://gcc.gnu.org/gcc-13/changes.html
> and https://gcc.gnu.org/gcc-13/porting_to.html .

.... and would have expected at least some comments on this one.

Did nobody read it, or have all uses outside of the Polyhedron
test suite for linear congruential pseudo-random number generators
vanished?

Re: Behavior on integer overflow (was: GCC and Gfortran 13.1 released)

<u3glrb$ogig$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=3386&group=comp.lang.fortran#3386

  copy link   Newsgroups: comp.lang.fortran
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: sgk@REMOVEtroutmask.apl.washington.edu (Steven G. Kargl)
Newsgroups: comp.lang.fortran
Subject: Re: Behavior on integer overflow (was: GCC and Gfortran 13.1
released)
Date: Wed, 10 May 2023 17:55:55 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 35
Message-ID: <u3glrb$ogig$1@dont-email.me>
References: <u2auh8$gb2r$1@newsreader4.netcologne.de>
<u3gifi$18eh6$1@newsreader4.netcologne.de>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 10 May 2023 17:55:55 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="0f15ed18945dc10379aa14fc4bbf3642";
logging-data="803408"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18bxIhNgPf2TzWkhahEREmn"
User-Agent: Pan/0.145 (Duplicitous mercenary valetism; d7e168a
git.gnome.org/pan2)
Cancel-Lock: sha1:rsQNdJH2VcIxeSmtqtoek4nn+sU=
 by: Steven G. Kargl - Wed, 10 May 2023 17:55 UTC

On Wed, 10 May 2023 16:58:27 +0000, Thomas Koenig wrote:

> I wrote
>
>> Behavior on integer overflow
>>
>> GCC 13 includes new optimizations which may change behavior on
>> integer overflow. Traditional code, like linear congruential
>> pseudo-random number generators in old programs and relying on
>> a specific, non-standard behavior may now generate unexpected
>> results. The option -fsanitize=undefined can be used to detect
>> such code at runtime.
>>
>> It is recommended to use the intrinsic subroutine RANDOM_NUMBER for
>> random number generators or, if the old behavior is desired, to use
>> the -fwrapv option. Note that this option can impact performance.
>>
>> Please find more details at https://gcc.gnu.org/gcc-13/changes.html
>> and https://gcc.gnu.org/gcc-13/porting_to.html .
>
> ... and would have expected at least some comments on this one.
>
> Did nobody read it, or have all uses outside of the Polyhedron
> test suite for linear congruential pseudo-random number generators
> vanished?

Oh, there was much wailing and nashing of teeth in Fortran Discourse.
Comment 83 in https://fortran-lang.discourse.group/t/gfortran-releases/2704/90
starts the discussion, and I've deleted my comments as it was going no
where. In the rnflow.f90 code, the lcg has essentially
'integer, parameter :: jmul ..., jadd'. Giving either the 'volatile'
attribute defeats the new behavior.

--
steve

Re: Behavior on integer overflow (was: GCC and Gfortran 13.1 released)

<u3gnr4$18i89$1@newsreader4.netcologne.de>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=3387&group=comp.lang.fortran#3387

  copy link   Newsgroups: comp.lang.fortran
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!3.eu.feeder.erje.net!feeder.erje.net!newsreader4.netcologne.de!news.netcologne.de!.POSTED.2001-4dd6-3fec-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de!not-for-mail
From: tkoenig@netcologne.de (Thomas Koenig)
Newsgroups: comp.lang.fortran
Subject: Re: Behavior on integer overflow (was: GCC and Gfortran 13.1
released)
Date: Wed, 10 May 2023 18:29:56 -0000 (UTC)
Organization: news.netcologne.de
Distribution: world
Message-ID: <u3gnr4$18i89$1@newsreader4.netcologne.de>
References: <u2auh8$gb2r$1@newsreader4.netcologne.de>
<u3gifi$18eh6$1@newsreader4.netcologne.de> <u3glrb$ogig$1@dont-email.me>
Injection-Date: Wed, 10 May 2023 18:29:56 -0000 (UTC)
Injection-Info: newsreader4.netcologne.de; posting-host="2001-4dd6-3fec-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de:2001:4dd6:3fec:0:7285:c2ff:fe6c:992d";
logging-data="1329417"; mail-complaints-to="abuse@netcologne.de"
User-Agent: slrn/1.0.3 (Linux)
 by: Thomas Koenig - Wed, 10 May 2023 18:29 UTC

Steven G. Kargl <sgk@REMOVEtroutmask.apl.washington.edu> schrieb:
> On Wed, 10 May 2023 16:58:27 +0000, Thomas Koenig wrote:
>
>> I wrote
>>
>>> Behavior on integer overflow
>>>
>>> GCC 13 includes new optimizations which may change behavior on
>>> integer overflow. Traditional code, like linear congruential
>>> pseudo-random number generators in old programs and relying on
>>> a specific, non-standard behavior may now generate unexpected
>>> results. The option -fsanitize=undefined can be used to detect
>>> such code at runtime.
>>>
>>> It is recommended to use the intrinsic subroutine RANDOM_NUMBER for
>>> random number generators or, if the old behavior is desired, to use
>>> the -fwrapv option. Note that this option can impact performance.
>>>
>>> Please find more details at https://gcc.gnu.org/gcc-13/changes.html
>>> and https://gcc.gnu.org/gcc-13/porting_to.html .
>>
>> ... and would have expected at least some comments on this one.
>>
>> Did nobody read it, or have all uses outside of the Polyhedron
>> test suite for linear congruential pseudo-random number generators
>> vanished?
>
> Oh, there was much wailing and nashing of teeth in Fortran Discourse.
> Comment 83 in https://fortran-lang.discourse.group/t/gfortran-releases/2704/90
> starts the discussion, and I've deleted my comments as it was going no
> where. In the rnflow.f90 code, the lcg has essentially
> 'integer, parameter :: jmul ..., jadd'. Giving either the 'volatile'
> attribute defeats the new behavior.

I just looked through it, and it seems people didn't read the advice
to use -fwrapv.

And as far as linear congruential generates are concerned: I
guess the current advice is to just use C's unsigned numbers,
until the time when unsigned numbers are finally added to Fortran.

Re: Behavior on integer overflow (was: GCC and Gfortran 13.1 released)

<u3gqsl$paoh$1@dont-email.me>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=3388&group=comp.lang.fortran#3388

  copy link   Newsgroups: comp.lang.fortran
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: sgk@REMOVEtroutmask.apl.washington.edu (Steven G. Kargl)
Newsgroups: comp.lang.fortran
Subject: Re: Behavior on integer overflow (was: GCC and Gfortran 13.1
released)
Date: Wed, 10 May 2023 19:21:57 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 58
Message-ID: <u3gqsl$paoh$1@dont-email.me>
References: <u2auh8$gb2r$1@newsreader4.netcologne.de>
<u3gifi$18eh6$1@newsreader4.netcologne.de> <u3glrb$ogig$1@dont-email.me>
<u3gnr4$18i89$1@newsreader4.netcologne.de>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Wed, 10 May 2023 19:21:57 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="0f15ed18945dc10379aa14fc4bbf3642";
logging-data="830225"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+XbfVlDEdQ3c5cPLj1HL+T"
User-Agent: Pan/0.145 (Duplicitous mercenary valetism; d7e168a
git.gnome.org/pan2)
Cancel-Lock: sha1:7XDhPGDbP/qp3L1wXdGquwdG8s4=
 by: Steven G. Kargl - Wed, 10 May 2023 19:21 UTC

On Wed, 10 May 2023 18:29:56 +0000, Thomas Koenig wrote:

> Steven G. Kargl <sgk@REMOVEtroutmask.apl.washington.edu> schrieb:
>> On Wed, 10 May 2023 16:58:27 +0000, Thomas Koenig wrote:
>>
>>> I wrote
>>>
>>>> Behavior on integer overflow
>>>>
>>>> GCC 13 includes new optimizations which may change behavior on
>>>> integer overflow. Traditional code, like linear congruential
>>>> pseudo-random number generators in old programs and relying on
>>>> a specific, non-standard behavior may now generate unexpected
>>>> results. The option -fsanitize=undefined can be used to detect
>>>> such code at runtime.
>>>>
>>>> It is recommended to use the intrinsic subroutine RANDOM_NUMBER for
>>>> random number generators or, if the old behavior is desired, to use
>>>> the -fwrapv option. Note that this option can impact performance.
>>>>
>>>> Please find more details at https://gcc.gnu.org/gcc-13/changes.html
>>>> and https://gcc.gnu.org/gcc-13/porting_to.html .
>>>
>>> ... and would have expected at least some comments on this one.
>>>
>>> Did nobody read it, or have all uses outside of the Polyhedron
>>> test suite for linear congruential pseudo-random number generators
>>> vanished?
>>
>> Oh, there was much wailing and nashing of teeth in Fortran Discourse.
>> Comment 83 in https://fortran-lang.discourse.group/t/gfortran-releases/2704/90
>> starts the discussion, and I've deleted my comments as it was going no
>> where. In the rnflow.f90 code, the lcg has essentially
>> 'integer, parameter :: jmul ..., jadd'. Giving either the 'volatile'
>> attribute defeats the new behavior.
>
> I just looked through it, and it seems people didn't read the advice
> to use -fwrapv.

I re-iterated that advice in one of my comments and also
showed that -fsanitize=undefined gives a runtime warning
that undefined behavior was occurring.

In fact, if the LCG of rnflow.f90 were in another file,
say,lcg.f90 and compiled separately, there is no problem.
As is, gfortran in-lines rnflow's lcg and then the
optimizers can see the initial seed will cause a signed
integer overflow.

> And as far as linear congruential generates are concerned: I
> guess the current advice is to just use C's unsigned numbers,
> until the time when unsigned numbers are finally added to Fortran.

That's what I do for both a prng and hashes.

--
steve

Re: Behavior on integer overflow (was: GCC and Gfortran 13.1 released)

<5150a8c7-b822-410d-9d91-0d28f758874cn@googlegroups.com>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=3389&group=comp.lang.fortran#3389

  copy link   Newsgroups: comp.lang.fortran
X-Received: by 2002:a05:620a:4051:b0:74e:5103:2c9c with SMTP id i17-20020a05620a405100b0074e51032c9cmr6393226qko.12.1683746741414;
Wed, 10 May 2023 12:25:41 -0700 (PDT)
X-Received: by 2002:a05:620a:46a4:b0:74e:2894:7ea2 with SMTP id
bq36-20020a05620a46a400b0074e28947ea2mr6327662qkb.8.1683746741263; Wed, 10
May 2023 12:25:41 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.fortran
Date: Wed, 10 May 2023 12:25:41 -0700 (PDT)
In-Reply-To: <u3gnr4$18i89$1@newsreader4.netcologne.de>
Injection-Info: google-groups.googlegroups.com; posting-host=2601:602:9700:4689:51d2:7ec5:f413:5322;
posting-account=gLDX1AkAAAA26M5HM-O3sVMAXdxK9FPA
NNTP-Posting-Host: 2601:602:9700:4689:51d2:7ec5:f413:5322
References: <u2auh8$gb2r$1@newsreader4.netcologne.de> <u3gifi$18eh6$1@newsreader4.netcologne.de>
<u3glrb$ogig$1@dont-email.me> <u3gnr4$18i89$1@newsreader4.netcologne.de>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <5150a8c7-b822-410d-9d91-0d28f758874cn@googlegroups.com>
Subject: Re: Behavior on integer overflow (was: GCC and Gfortran 13.1 released)
From: gah4@u.washington.edu (gah4)
Injection-Date: Wed, 10 May 2023 19:25:41 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 2276
 by: gah4 - Wed, 10 May 2023 19:25 UTC

On Wednesday, May 10, 2023 at 11:30:00 AM UTC-7, Thomas Koenig wrote:

(snip)

> And as far as linear congruential generates are concerned: I
> guess the current advice is to just use C's unsigned numbers,
> until the time when unsigned numbers are finally added to Fortran.

More generally, it is sometimes nice to be able to a multiply,
signed or unsigned, and get the double length product.

No high-level languages seem to make that easy.

For C compilers, if you cast 32 bit (long) to (long long) and
multiply, most will do a 32 bit multiply with 64 bit product.
I believe also for (unsigned long long).

It is also sometimes nice to be able to do a divide with double
length dividend, as most hardware allows.

I am not sure by now, which hardware supports a 64x64 multiply
with 128 bit product, or divide with 128 bit dividend. If some do,
it would be nice to be able to use it.

Re: Behavior on integer overflow (was: GCC and Gfortran 13.1 released)

<u3j75r$1a2cu$1@newsreader4.netcologne.de>

  copy mid

https://www.rocksolidbbs.com/devel/article-flat.php?id=3395&group=comp.lang.fortran#3395

  copy link   Newsgroups: comp.lang.fortran
Path: i2pn2.org!i2pn.org!news.swapon.de!news.mixmin.net!newsreader4.netcologne.de!news.netcologne.de!.POSTED.2001-4dd6-3fec-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de!not-for-mail
From: tkoenig@netcologne.de (Thomas Koenig)
Newsgroups: comp.lang.fortran
Subject: Re: Behavior on integer overflow (was: GCC and Gfortran 13.1
released)
Date: Thu, 11 May 2023 17:03:55 -0000 (UTC)
Organization: news.netcologne.de
Distribution: world
Message-ID: <u3j75r$1a2cu$1@newsreader4.netcologne.de>
References: <u2auh8$gb2r$1@newsreader4.netcologne.de>
<u3gifi$18eh6$1@newsreader4.netcologne.de> <u3glrb$ogig$1@dont-email.me>
<u3gnr4$18i89$1@newsreader4.netcologne.de>
<5150a8c7-b822-410d-9d91-0d28f758874cn@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Thu, 11 May 2023 17:03:55 -0000 (UTC)
Injection-Info: newsreader4.netcologne.de; posting-host="2001-4dd6-3fec-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de:2001:4dd6:3fec:0:7285:c2ff:fe6c:992d";
logging-data="1378718"; mail-complaints-to="abuse@netcologne.de"
User-Agent: slrn/1.0.3 (Linux)
 by: Thomas Koenig - Thu, 11 May 2023 17:03 UTC

gah4 <gah4@u.washington.edu> schrieb:
> On Wednesday, May 10, 2023 at 11:30:00 AM UTC-7, Thomas Koenig wrote:
>
> (snip)
>
>> And as far as linear congruential generates are concerned: I
>> guess the current advice is to just use C's unsigned numbers,
>> until the time when unsigned numbers are finally added to Fortran.
>
> More generally, it is sometimes nice to be able to a multiply,
> signed or unsigned, and get the double length product.

$ cat a.f90
program memain
use iso_fortran_env
integer(kind=int32) :: a, b
integer(kind=int64) :: c

read (*,*) a, b
c = int(a,kind=int64) * int(b,kind=int64)
print *,a,b,c
end program memain
$ gfortran a.f90
$ echo "12345678 23456789" | ./a.out
12345678 23456789 289589963907942

(And compilers have been smart enough for a few decades to use
widening multiply in such situations).

> No high-level languages seem to make that easy.

I think the cod above is fairly easy.

>
> For C compilers, if you cast 32 bit (long) to (long long) and
> multiply, most will do a 32 bit multiply with 64 bit product.
> I believe also for (unsigned long long).

Yes (also not hard).

> It is also sometimes nice to be able to do a divide with double
> length dividend, as most hardware allows.
>
> I am not sure by now, which hardware supports a 64x64 multiply
> with 128 bit product,

These days, any 64-processor does.

>or divide with 128 bit dividend. If some do,
> it would be nice to be able to use it.

That, I believe, is not so generally implemented in hardware.

1
server_pubkey.txt

rocksolid light 0.9.81
clearnet tor