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

--- Comment #2 from Martin Liška <marxin at gcc dot gnu.org> ---
valgrind tells:

==2489== Conditional jump or move depends on uninitialised value(s)
==2489==    at 0xCFBD22: wi::force_to_size(long*, long const*, unsigned int,
unsigned int, unsigned int, signop) (wide-int.cc:370)
==2489==    by 0xCB2CD3: from (wide-int.h:1172)
==2489==    by 0xCB2CD3: wide_int_to_tree_1(tree_node*,
generic_wide_int<wide_int_ref_storage<false, true> > const&) (tree.c:1515)
==2489==    by 0xA59AC3: set_min_and_max_values_for_integral_type(tree_node*,
int, signop) [clone .part.0] (stor-layout.c:2822)
==2489==    by 0xA5E766: set_min_and_max_values_for_integral_type
(stor-layout.c:2816)
==2489==    by 0xA5E766: fixup_signed_type(tree_node*) (stor-layout.c:2834)
==2489==    by 0xCB079E: build_nonstandard_integer_type(unsigned long, int)
(tree.c:8020)
==2489==    by 0xBD6245: vn_reference_lookup_3(ao_ref*, tree_node*, void*,
translate_flags*) (tree-ssa-sccvn.c:2890)
==2489==    by 0xB32522: walk_non_aliased_vuses(ao_ref*, tree_node*, bool,
void* (*)(ao_ref*, tree_node*, void*), void* (*)(ao_ref*, tree_node*, void*,
translate_flags*), tree_node* (*)(tree_node*), unsigned int&, void*)
(tree-ssa-alias.c:3691)
==2489==    by 0xBD124F: vn_reference_lookup(tree_node*, tree_node*,
vn_lookup_kind, vn_reference_s**, bool, tree_node**, tree_node*)
(tree-ssa-sccvn.c:3545)
==2489==    by 0xBD6E8E: visit_reference_op_load (tree-ssa-sccvn.c:4934)
==2489==    by 0xBD6E8E: visit_stmt(gimple*, bool) [clone .isra.0]
(tree-ssa-sccvn.c:5374)
==2489==    by 0xBD7B96: process_bb(rpo_elim&, basic_block_def*, bool, bool,
bool, bool, bool, bitmap_head*, bool) [clone .constprop.0]
(tree-ssa-sccvn.c:7047)
==2489==    by 0xBD9A3E: do_rpo_vn(function*, edge_def*, bitmap_head*, bool,
bool) (tree-ssa-sccvn.c:7566)
==2489==    by 0xBDA300: (anonymous namespace)::pass_fre::execute(function*)
(tree-ssa-sccvn.c:7834)

#0  fancy_abort (file=file@entry=0x148dfb8
"/home/marxin/Programming/gcc2/gcc/tree.c", line=line@entry=1572,
function=function@entry=0x148cba0 "wide_int_to_tree_1") at
/home/marxin/Programming/gcc2/gcc/diagnostic.c:1778
#1  0x00000000005e2781 in wide_int_to_tree_1 (type=<string_cst 0x7fffffffd410>,
pcst=...) at /home/marxin/Programming/gcc2/gcc/tree.c:1572
#2  0x0000000000a59ac4 in set_min_and_max_values_for_integral_type
(type=<string_cst 0x7fffffffd410>, type@entry=<integer_type 0x7ffff6ef97e0>,
precision=6, sgn=sgn@entry=SIGNED) at
/home/marxin/Programming/gcc2/gcc/poly-int.h:671
#3  0x0000000000a5e767 in set_min_and_max_values_for_integral_type (sgn=SIGNED,
precision=<optimized out>, type=<integer_type 0x7ffff6ef97e0>) at
/home/marxin/Programming/gcc2/gcc/stor-layout.c:2816
#4  fixup_signed_type (type=<integer_type 0x7ffff6ef97e0>) at
/home/marxin/Programming/gcc2/gcc/stor-layout.c:2834
#5  0x0000000000cb079f in build_nonstandard_integer_type
(precision=precision@entry=384, unsignedp=0) at
/home/marxin/Programming/gcc2/gcc/tree.c:8020
#6  0x0000000000bd6246 in vn_reference_lookup_3 (ref=ref@entry=0x7fffffffd760,
vuse=vuse@entry=<ssa_name 0x7ffff6185ea0 170>,
data_=data_@entry=0x7fffffffd7f0,
disambiguate_only=disambiguate_only@entry=0x7fffffffd694)
    at /home/marxin/Programming/gcc2/gcc/tree-ssa-sccvn.c:2890

It's called for a string constant:

(gdb) p debug_tree((tree)0x7fffffffd410)
 <string_cst 0x7fffffffd410 "">
$1 = void

Reply via email to