https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120941

--- Comment #21 from Filip Kastl <pheeck at gcc dot gnu.org> ---
Oh, ok.  I misunderstood.

Well, you have SPEC CPU 2017, right?  Then setting

OPTIMIZE    = -Ofast -march=znver2 -mtune=znver2 -g -flto -fdump-rtl-all

should work.

Perhaps you'll also need

COPTIMIZE   = -fpermissive -std=gnu17

Use GCC at commit r16-1644-gaba3b9d3a48a07 plus the rrvl dumping:

diff --git a/gcc/config/i386/i386-features.cc
b/gcc/config/i386/i386-features.cc
index 36878aab968..29893e52439 100644
--- a/gcc/config/i386/i386-features.cc
+++ b/gcc/config/i386/i386-features.cc
@@ -3424,11 +3426,22 @@ replace_vector_const (machine_mode vector_mode, rtx
vector_const,
            replace = gen_rtx_SUBREG (mode, vector_const, 0);
        }

+      if (dump_file)
+       {
+         fprintf (dump_file, "\nReplace:\n\n");
+         print_rtl_single (dump_file, insn);
+       }
       SET_SRC (set) = replace;
       /* Drop possible dead definitions.  */
       PATTERN (insn) = set;
       INSN_CODE (insn) = -1;
       recog_memoized (insn);
+      if (dump_file)
+       {
+         fprintf (dump_file, "\nwith:\n\n");
+         print_rtl_single (dump_file, insn);
+         fprintf (dump_file, "\n");
+       }
       df_insn_rescan (insn);
     }
 }

and you should see the replacement I mention in comment 17 in file
lbm_r.ltrans0.ltrans.310r.rrvl.

Reply via email to