[Bug target/67002] [5] [SH]: Bootstrap stage 2/3 comparison failure - gcc/real.o differs

kkojima at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Aug 6 02:04:00 GMT 2015


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

--- Comment #18 from Kazumoto Kojima <kkojima at gcc dot gnu.org> ---
(In reply to Michael Karcher from comment #15)
The first different line of diff of the .pre dumps of Michael's
test case with/without -g is:

< Expression hash table (53 buckets, 12 entries)
---
> Expression hash table (51 buckets, 12 entries)

It means that gcse.c:alloc_hash_table allocates the table with
different number of buckets with -g.
It looks emit_rtl.c:get_max_insn_count returns different values
with/without -g at rtl_pre pass.  This shouldn't happen.
The comment of get_max_insn_count says:

  /* The table size must be stable across -g, to avoid codegen
     differences due to debug insns, and not be affected by
     -fmin-insn-uid, to avoid excessive table size and to simplify
     debugging of -fcompare-debug failures.  */



More information about the Gcc-bugs mailing list