*PING* [PATCH v3 10/10] fortran: Add -finline-intrinsics flag for MINLOC/MAXLOC [PR90608]
Mikael Morin
morin-mikael@orange.fr
Sat Sep 21 14:32:38 GMT 2024
Le 19/09/2024 à 23:24, Jakub Jelinek a écrit :
> On Mon, Sep 16, 2024 at 10:52:43AM +0200, Mikael Morin wrote:
>>> While I understand the intent of 'positive form' vs 'negative form', the
>>> above might be clearer as
>>>
>>> Usage of intrinsics can be implemented either by generating a call
>>> to the libgfortran library function or by directly generating inline
>>> code. For most intrinsics, only a single variant is available, and
>>> there is no choice of implementation. However, some intrinsics can
>>> use a library function or inline code, wher inline code typically offers
>>> opportunities for additional optimization over a library function.
>>> With @code{-finline-intrinsics=...} or @code{-fno-inline-intrinsics=...}, the
>>> choice applies only to the intrinsics present in the comma-separated list
>>> provided as argument.
>>>
>>>>> +For each intrinsic, if no choice of implementation was made through either of
>>>>> +the flag variants, a default behaviour is chosen depending on optimization:
>>>>> +library calls are generated when not optimizing or when optimizing for size;
>>>>> +otherwise inline code is preferred.
>>>>> +
>>>
>>>
>>> OK with consideration the above comments.
>>>
>>
>> Harald actually gave a partial green light on this already, but obviously
>> there was still room for improvement.
>> Thanks for the review, I'm incorporating the changes you suggested.
>>
>> I was (and still am) waiting for a review from someone knowledgeable in the
>> options system. I'm considering proceeding without, as I prefer seeing this
>> pushed sooner than later.
>
> Just note lang.opt.urls will need to be updated, either you do it right away
> with make regenerate-opt-urls or commit, wait for a nag-mail from CI and
> commit incrementally the patch it creates.
>
Thanks for the tip.
The Makefile dependencies seem to be incomplete.
Here is what I get:
$ LC_ALL=C make -C gcc regenerate-opt-urls
make: Entering directory '…/build/gcc'
make: *** No rule to make target
'…/build/gcc/HTML/gcc-15.0.0/gcc/Option-Index.html', needed by
'regenerate-opt-urls'. Stop.
make: Leaving directory '…/build/gcc'
After:
$ make maybe-html-gcc
... blah ...
it becomes:
$ LC_ALL=C make -C gcc regenerate-opt-urls
make: Entering directory '…/build/gcc'
make: *** No rule to make target
'…/build/gcc/HTML/gcc-15.0.0/gdc/Option-Index.html', needed by
'regenerate-opt-urls'. Stop.
make: Leaving directory '…/build/gcc'
(Note the change from 'gcc' to 'gdc' in the error's path.)
Next I manually edited Makefile to add d.html as dependency to
lang.html, reran make maybe-html-gcc, and then again:
$ LC_ALL=C make -C gcc regenerate-opt-urls
and it ran without error.
BUT
There is no modified file. Did I miss something?
More information about the Fortran
mailing list