On Sat, Aug 12, 2023 at 10:41:10AM -0300, Jorge D'Elia via Fortran wrote:
> 
> $ test-march.exe 
> 
> Program received signal SIGILL: Illegal instruction.
> 

This, to me, suggests that the backend is emitting a wrong
assembly language code.  I suspect that you'll need to 
compare the generated assembly code between a working 
gfortran and the bad gfortran.  It is also possible to get
a listing of the actually options that -march=native activates.
For example,

% gfcx -o z -O -march=native --verbose a.f90

It is the options that begin with -m that matter.  For my hardware
I see 108 such options.  With patients you can determine if one 
of these triggers the issues.

One can also scan gcc/gcc/ChangeLog for changes to config/i386/i386.md.
For example 

2023-08-07  Jan Beulich  <jbeul...@suse.com>

        * config/i386/i386.md (sse4_1_round<mode>2): Make
        "length_immediate" uniformly 1.
        * config/i386/mmx.md (mmx_pblendvb_v8qi): Likewise.
        (mmx_pblendvb_<mode>): Likewise.

There are at least 10 commits on 2023-08-07 to this file.

Finally, as a non-git user, you can always try git's bisection
feature to identify where things go left.

-- 
Steve

Reply via email to