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

            Bug ID: 127330
           Summary: [17 Regression] valgrind "Conditional jump or move
                    depends on uninitialised value(s)" in
                    extract_insn_cached(rtx_insn*) (recog.cc:2782)
           Product: gcc
           Version: 17.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: zsojka at seznam dot cz
  Target Milestone: ---
              Host: x86_64-pc-linux-gnu
            Target: x86_64-pc-linux-gnu

Created attachment 65560
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=65560&action=edit
reduced testcase

This seems to be a recent regression.

I am also observing recent miscompilations, but I haven't analysed them yet;
those might be related to this valgrind warning, but might be also false
positives (testcase error).

$ x86_64-pc-linux-gnu-gcc testcase.c -c -wrapper
valgrind,-q,--track-origins=yes
==218520== Conditional jump or move depends on uninitialised value(s)
==218520==    at 0x15EF582: extract_insn_cached(rtx_insn*) (recog.cc:2782)
==218520==    by 0x1B37140: ix86_memory_address_reg_class(rtx_insn*)
(i386.cc:12098)
==218520==    by 0x1B5AED8: ix86_insn_index_reg_class(rtx_insn*)
(i386.cc:12165)
==218520==    by 0x14822F7: index_reg_class (addresses.h:58)
==218520==    by 0x14822F7: process_address_1(int, bool, rtx_insn**,
rtx_insn**) (lra-constraints.cc:4164)
==218520==    by 0x14845B6: process_address (lra-constraints.cc:4442)
==218520==    by 0x14845B6: curr_insn_transform(bool) (lra-constraints.cc:4776)
==218520==    by 0x1488646: lra_constraints(bool) (lra-constraints.cc:6182)
==218520==    by 0x1469754: lra(_IO_FILE*, int) (lra.cc:2511)
==218520==    by 0x14124AF: do_reload (ira.cc:6097)
==218520==    by 0x14124AF: (anonymous
namespace)::pass_reload::execute(function*) (ira.cc:6285)
==218520==    by 0x1557E8F: execute_one_pass(opt_pass*) (passes.cc:2646)
==218520==    by 0x15587AF: execute_pass_list_1(opt_pass*) (passes.cc:2757)
==218520==    by 0x15587C1: execute_pass_list_1(opt_pass*) (passes.cc:2758)
==218520==    by 0x15587E8: execute_pass_list(function*, opt_pass*)
(passes.cc:2768)
==218520==  Uninitialised value was created by a stack allocation
==218520==    at 0x1B37050: ix86_memory_address_reg_class(rtx_insn*)
(i386.cc:12082)
==218520==
==218520== Conditional jump or move depends on uninitialised value(s)
==218520==    at 0x15EF582: extract_insn_cached(rtx_insn*) (recog.cc:2782)
==218520==    by 0x1B37140: ix86_memory_address_reg_class(rtx_insn*)
(i386.cc:12098)
==218520==    by 0x1B5AE48: ix86_insn_base_reg_class(rtx_insn*) (i386.cc:12129)
==218520==    by 0x1482356: base_reg_class (addresses.h:35)
==218520==    by 0x1482356: process_address_1(int, bool, rtx_insn**,
rtx_insn**) (lra-constraints.cc:4180)
==218520==    by 0x14845B6: process_address (lra-constraints.cc:4442)
==218520==    by 0x14845B6: curr_insn_transform(bool) (lra-constraints.cc:4776)
==218520==    by 0x1488646: lra_constraints(bool) (lra-constraints.cc:6182)
==218520==    by 0x1469754: lra(_IO_FILE*, int) (lra.cc:2511)
==218520==    by 0x14124AF: do_reload (ira.cc:6097)
==218520==    by 0x14124AF: (anonymous
namespace)::pass_reload::execute(function*) (ira.cc:6285)
==218520==    by 0x1557E8F: execute_one_pass(opt_pass*) (passes.cc:2646)
==218520==    by 0x15587AF: execute_pass_list_1(opt_pass*) (passes.cc:2757)
==218520==    by 0x15587C1: execute_pass_list_1(opt_pass*) (passes.cc:2758)
==218520==    by 0x15587E8: execute_pass_list(function*, opt_pass*)
(passes.cc:2768)
==218520==  Uninitialised value was created by a stack allocation
==218520==    at 0x1B37050: ix86_memory_address_reg_class(rtx_insn*)
(i386.cc:12082)
==218520==

Reply via email to