http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59575
--- Comment #24 from Ryan Mansfield <rmansfield at qnx dot com> --- $ valgrind ./cc1 -fexceptions ~/conftest.c ==5295== Memcheck, a memory error detector ==5295== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al. ==5295== Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright info ==5295== Command: ./cc1 -fexceptions /home/ryan/conftest.c ==5295== foo Analyzing compilation unit Performing interprocedural optimizations <*free_lang_data> <visibility> <early_local_cleanups> <*free_inline_summary> <whole-program> <inline>Assembling functions: foo==5295== Conditional jump or move depends on uninitialised value(s) ==5295== at 0x82E9C4: mark_pseudo_regno_live(int) (sparseset.h:147) ==5295== by 0x82FB2C: process_bb_node_lives(ira_loop_tree_node*) (ira-lives.c:1321) ==5295== by 0x8154ED: ira_traverse_loop_tree(bool, ira_loop_tree_node*, void (*)(ira_loop_tree_node*), void (*)(ira_loop_tree_node*)) (ira-build.c:1831) ==5295== by 0x830621: ira_create_allocno_live_ranges() (ira-lives.c:1610) ==5295== by 0x816F7C: ira_build() (ira-build.c:3431) ==5295== by 0x80F621: (anonymous namespace)::pass_ira::execute() (ira.c:5311) ==5295== by 0x8B8BC1: execute_one_pass(opt_pass*) (passes.c:2229) ==5295== by 0x8B8E95: execute_pass_list(opt_pass*) (passes.c:2282) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x642768: expand_function(cgraph_node*) (cgraphunit.c:1764) ==5295== by 0x644BFF: compile() (cgraphunit.c:1996) ==5295== by 0x644F19: finalize_compilation_unit() (cgraphunit.c:2319) ==5295== ==5295== Conditional jump or move depends on uninitialised value(s) ==5295== at 0x82E8AE: make_object_born(ira_object*) (sparseset.h:147) ==5295== by 0x82E9E1: mark_pseudo_regno_live(int) (ira-lives.c:294) ==5295== by 0x82FB2C: process_bb_node_lives(ira_loop_tree_node*) (ira-lives.c:1321) ==5295== by 0x8154ED: ira_traverse_loop_tree(bool, ira_loop_tree_node*, void (*)(ira_loop_tree_node*), void (*)(ira_loop_tree_node*)) (ira-build.c:1831) ==5295== by 0x830621: ira_create_allocno_live_ranges() (ira-lives.c:1610) ==5295== by 0x816F7C: ira_build() (ira-build.c:3431) ==5295== by 0x80F621: (anonymous namespace)::pass_ira::execute() (ira.c:5311) ==5295== by 0x8B8BC1: execute_one_pass(opt_pass*) (passes.c:2229) ==5295== by 0x8B8E95: execute_pass_list(opt_pass*) (passes.c:2282) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x642768: expand_function(cgraph_node*) (cgraphunit.c:1764) ==5295== by 0x644BFF: compile() (cgraphunit.c:1996) ==5295== ==5295== Use of uninitialised value of size 8 ==5295== at 0x82E9C9: mark_pseudo_regno_live(int) (sparseset.h:147) ==5295== by 0x82FB2C: process_bb_node_lives(ira_loop_tree_node*) (ira-lives.c:1321) ==5295== by 0x8154ED: ira_traverse_loop_tree(bool, ira_loop_tree_node*, void (*)(ira_loop_tree_node*), void (*)(ira_loop_tree_node*)) (ira-build.c:1831) ==5295== by 0x830621: ira_create_allocno_live_ranges() (ira-lives.c:1610) ==5295== by 0x816F7C: ira_build() (ira-build.c:3431) ==5295== by 0x80F621: (anonymous namespace)::pass_ira::execute() (ira.c:5311) ==5295== by 0x8B8BC1: execute_one_pass(opt_pass*) (passes.c:2229) ==5295== by 0x8B8E95: execute_pass_list(opt_pass*) (passes.c:2282) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x642768: expand_function(cgraph_node*) (cgraphunit.c:1764) ==5295== by 0x644BFF: compile() (cgraphunit.c:1996) ==5295== by 0x644F19: finalize_compilation_unit() (cgraphunit.c:2319) ==5295== ==5295== Use of uninitialised value of size 8 ==5295== at 0x82E900: make_object_born(ira_object*) (sparseset.h:147) ==5295== by 0x82E9E1: mark_pseudo_regno_live(int) (ira-lives.c:294) ==5295== by 0x82FB2C: process_bb_node_lives(ira_loop_tree_node*) (ira-lives.c:1321) ==5295== by 0x8154ED: ira_traverse_loop_tree(bool, ira_loop_tree_node*, void (*)(ira_loop_tree_node*), void (*)(ira_loop_tree_node*)) (ira-build.c:1831) ==5295== by 0x830621: ira_create_allocno_live_ranges() (ira-lives.c:1610) ==5295== by 0x816F7C: ira_build() (ira-build.c:3431) ==5295== by 0x80F621: (anonymous namespace)::pass_ira::execute() (ira.c:5311) ==5295== by 0x8B8BC1: execute_one_pass(opt_pass*) (passes.c:2229) ==5295== by 0x8B8E95: execute_pass_list(opt_pass*) (passes.c:2282) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x642768: expand_function(cgraph_node*) (cgraphunit.c:1764) ==5295== by 0x644BFF: compile() (cgraphunit.c:1996) ==5295== ==5295== Conditional jump or move depends on uninitialised value(s) ==5295== at 0x82FDA8: process_bb_node_lives(ira_loop_tree_node*) (sparseset.h:147) ==5295== by 0x8154ED: ira_traverse_loop_tree(bool, ira_loop_tree_node*, void (*)(ira_loop_tree_node*), void (*)(ira_loop_tree_node*)) (ira-build.c:1831) ==5295== by 0x830621: ira_create_allocno_live_ranges() (ira-lives.c:1610) ==5295== by 0x816F7C: ira_build() (ira-build.c:3431) ==5295== by 0x80F621: (anonymous namespace)::pass_ira::execute() (ira.c:5311) ==5295== by 0x8B8BC1: execute_one_pass(opt_pass*) (passes.c:2229) ==5295== by 0x8B8E95: execute_pass_list(opt_pass*) (passes.c:2282) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x642768: expand_function(cgraph_node*) (cgraphunit.c:1764) ==5295== by 0x644BFF: compile() (cgraphunit.c:1996) ==5295== by 0x644F19: finalize_compilation_unit() (cgraphunit.c:2319) ==5295== by 0x508C63: c_write_global_declarations() (c-decl.c:10401) ==5295== ==5295== Use of uninitialised value of size 8 ==5295== at 0x82FC81: process_bb_node_lives(ira_loop_tree_node*) (sparseset.h:147) ==5295== by 0x8154ED: ira_traverse_loop_tree(bool, ira_loop_tree_node*, void (*)(ira_loop_tree_node*), void (*)(ira_loop_tree_node*)) (ira-build.c:1831) ==5295== by 0x830621: ira_create_allocno_live_ranges() (ira-lives.c:1610) ==5295== by 0x816F7C: ira_build() (ira-build.c:3431) ==5295== by 0x80F621: (anonymous namespace)::pass_ira::execute() (ira.c:5311) ==5295== by 0x8B8BC1: execute_one_pass(opt_pass*) (passes.c:2229) ==5295== by 0x8B8E95: execute_pass_list(opt_pass*) (passes.c:2282) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x642768: expand_function(cgraph_node*) (cgraphunit.c:1764) ==5295== by 0x644BFF: compile() (cgraphunit.c:1996) ==5295== by 0x644F19: finalize_compilation_unit() (cgraphunit.c:2319) ==5295== by 0x508C63: c_write_global_declarations() (c-decl.c:10401) ==5295== ==5295== Conditional jump or move depends on uninitialised value(s) ==5295== at 0x5CAA95: ggc_internal_alloc_stat(unsigned long) (ggc-page.c:1172) ==5295== by 0x90C24A: rtvec_alloc(int) (rtl.c:150) ==5295== by 0xC1108F: emit_multi_reg_push(unsigned long, unsigned long) (arm.c:19645) ==5295== by 0xC1424C: arm_expand_prologue() (arm.c:20871) ==5295== by 0xC90D8F: gen_prologue() (arm.md:11838) ==5295== by 0x774554: thread_prologue_and_epilogue_insns() (function.c:5937) ==5295== by 0x776D02: (anonymous namespace)::pass_thread_prologue_and_epilogue::execute() (function.c:6989) ==5295== by 0x8B8BC1: execute_one_pass(opt_pass*) (passes.c:2229) ==5295== by 0x8B8E95: execute_pass_list(opt_pass*) (passes.c:2282) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x642768: expand_function(cgraph_node*) (cgraphunit.c:1764) ==5295== ==5295== Use of uninitialised value of size 8 ==5295== at 0x5CAC80: ggc_internal_alloc_stat(unsigned long) (ggc-page.c:1174) ==5295== by 0x90C24A: rtvec_alloc(int) (rtl.c:150) ==5295== by 0xC1108F: emit_multi_reg_push(unsigned long, unsigned long) (arm.c:19645) ==5295== by 0xC1424C: arm_expand_prologue() (arm.c:20871) ==5295== by 0xC90D8F: gen_prologue() (arm.md:11838) ==5295== by 0x774554: thread_prologue_and_epilogue_insns() (function.c:5937) ==5295== by 0x776D02: (anonymous namespace)::pass_thread_prologue_and_epilogue::execute() (function.c:6989) ==5295== by 0x8B8BC1: execute_one_pass(opt_pass*) (passes.c:2229) ==5295== by 0x8B8E95: execute_pass_list(opt_pass*) (passes.c:2282) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x642768: expand_function(cgraph_node*) (cgraphunit.c:1764) ==5295== ==5295== Conditional jump or move depends on uninitialised value(s) ==5295== at 0x4C2FB39: memset (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==5295== by 0x90C25D: rtvec_alloc(int) (string3.h:84) ==5295== by 0xC1108F: emit_multi_reg_push(unsigned long, unsigned long) (arm.c:19645) ==5295== by 0xC1424C: arm_expand_prologue() (arm.c:20871) ==5295== by 0xC90D8F: gen_prologue() (arm.md:11838) ==5295== by 0x774554: thread_prologue_and_epilogue_insns() (function.c:5937) ==5295== by 0x776D02: (anonymous namespace)::pass_thread_prologue_and_epilogue::execute() (function.c:6989) ==5295== by 0x8B8BC1: execute_one_pass(opt_pass*) (passes.c:2229) ==5295== by 0x8B8E95: execute_pass_list(opt_pass*) (passes.c:2282) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x642768: expand_function(cgraph_node*) (cgraphunit.c:1764) ==5295== ==5295== Conditional jump or move depends on uninitialised value(s) ==5295== at 0x4C2FB75: memset (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==5295== by 0x90C25D: rtvec_alloc(int) (string3.h:84) ==5295== by 0xC1108F: emit_multi_reg_push(unsigned long, unsigned long) (arm.c:19645) ==5295== by 0xC1424C: arm_expand_prologue() (arm.c:20871) ==5295== by 0xC90D8F: gen_prologue() (arm.md:11838) ==5295== by 0x774554: thread_prologue_and_epilogue_insns() (function.c:5937) ==5295== by 0x776D02: (anonymous namespace)::pass_thread_prologue_and_epilogue::execute() (function.c:6989) ==5295== by 0x8B8BC1: execute_one_pass(opt_pass*) (passes.c:2229) ==5295== by 0x8B8E95: execute_pass_list(opt_pass*) (passes.c:2282) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x642768: expand_function(cgraph_node*) (cgraphunit.c:1764) ==5295== ==5295== Conditional jump or move depends on uninitialised value(s) ==5295== at 0x6C564E: mark_used_flags(rtx_def*, int) (emit-rtl.c:2925) ==5295== by 0x6C562E: mark_used_flags(rtx_def*, int) (emit-rtl.c:2921) ==5295== by 0x6C63E5: reset_insn_used_flags(rtx_def*) (emit-rtl.c:2938) ==5295== by 0x6C642F: reset_all_used_flags() (emit-rtl.c:2627) ==5295== by 0x6CA465: verify_rtl_sharing() (emit-rtl.c:2659) ==5295== by 0x8B5FB4: execute_function_todo(void*) (passes.c:1863) ==5295== by 0x8B6833: execute_todo(unsigned int) (passes.c:1887) ==5295== by 0x8B89E4: execute_one_pass(opt_pass*) (passes.c:2243) ==5295== by 0x8B8E95: execute_pass_list(opt_pass*) (passes.c:2282) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x642768: expand_function(cgraph_node*) (cgraphunit.c:1764) ==5295== ==5295== Conditional jump or move depends on uninitialised value(s) ==5295== at 0x6C566B: mark_used_flags(rtx_def*, int) (emit-rtl.c:2925) ==5295== by 0x6C562E: mark_used_flags(rtx_def*, int) (emit-rtl.c:2921) ==5295== by 0x6C63E5: reset_insn_used_flags(rtx_def*) (emit-rtl.c:2938) ==5295== by 0x6C642F: reset_all_used_flags() (emit-rtl.c:2627) ==5295== by 0x6CA465: verify_rtl_sharing() (emit-rtl.c:2659) ==5295== by 0x8B5FB4: execute_function_todo(void*) (passes.c:1863) ==5295== by 0x8B6833: execute_todo(unsigned int) (passes.c:1887) ==5295== by 0x8B89E4: execute_one_pass(opt_pass*) (passes.c:2243) ==5295== by 0x8B8E95: execute_pass_list(opt_pass*) (passes.c:2282) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x642768: expand_function(cgraph_node*) (cgraphunit.c:1764) ==5295== ==5295== Conditional jump or move depends on uninitialised value(s) ==5295== at 0x6C564E: mark_used_flags(rtx_def*, int) (emit-rtl.c:2925) ==5295== by 0x6C562E: mark_used_flags(rtx_def*, int) (emit-rtl.c:2921) ==5295== by 0x6C6395: verify_insn_sharing(rtx_def*) (emit-rtl.c:2938) ==5295== by 0x6CA4DF: verify_rtl_sharing() (emit-rtl.c:2666) ==5295== by 0x8B5FB4: execute_function_todo(void*) (passes.c:1863) ==5295== by 0x8B6833: execute_todo(unsigned int) (passes.c:1887) ==5295== by 0x8B89E4: execute_one_pass(opt_pass*) (passes.c:2243) ==5295== by 0x8B8E95: execute_pass_list(opt_pass*) (passes.c:2282) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x642768: expand_function(cgraph_node*) (cgraphunit.c:1764) ==5295== by 0x644BFF: compile() (cgraphunit.c:1996) ==5295== ==5295== Conditional jump or move depends on uninitialised value(s) ==5295== at 0x6C566B: mark_used_flags(rtx_def*, int) (emit-rtl.c:2925) ==5295== by 0x6C562E: mark_used_flags(rtx_def*, int) (emit-rtl.c:2921) ==5295== by 0x6C6395: verify_insn_sharing(rtx_def*) (emit-rtl.c:2938) ==5295== by 0x6CA4DF: verify_rtl_sharing() (emit-rtl.c:2666) ==5295== by 0x8B5FB4: execute_function_todo(void*) (passes.c:1863) ==5295== by 0x8B6833: execute_todo(unsigned int) (passes.c:1887) ==5295== by 0x8B89E4: execute_one_pass(opt_pass*) (passes.c:2243) ==5295== by 0x8B8E95: execute_pass_list(opt_pass*) (passes.c:2282) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x642768: expand_function(cgraph_node*) (cgraphunit.c:1764) ==5295== by 0x644BFF: compile() (cgraphunit.c:1996) ==5295== ==5295== Conditional jump or move depends on uninitialised value(s) ==5295== at 0xC2852E: arm_unwind_emit_sequence(_IO_FILE*, rtx_def*) (arm.c:28713) ==5295== by 0xC2905D: arm_unwind_emit(_IO_FILE*, rtx_def*) (arm.c:28969) ==5295== by 0x70993E: final_scan_insn(rtx_def*, _IO_FILE*, int, int, int*) (final.c:2978) ==5295== by 0x70A2E5: final(rtx_def*, _IO_FILE*, int) (final.c:2024) ==5295== by 0x70A709: (anonymous namespace)::pass_final::execute() (final.c:4438) ==5295== by 0x8B8BC1: execute_one_pass(opt_pass*) (passes.c:2229) ==5295== by 0x8B8E95: execute_pass_list(opt_pass*) (passes.c:2282) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x642768: expand_function(cgraph_node*) (cgraphunit.c:1764) ==5295== by 0x644BFF: compile() (cgraphunit.c:1996) ==5295== by 0x644F19: finalize_compilation_unit() (cgraphunit.c:2319) ==5295== ==5295== Use of uninitialised value of size 8 ==5295== at 0xC285D5: arm_unwind_emit_sequence(_IO_FILE*, rtx_def*) (arm.c:28727) ==5295== by 0xC2905D: arm_unwind_emit(_IO_FILE*, rtx_def*) (arm.c:28969) ==5295== by 0x70993E: final_scan_insn(rtx_def*, _IO_FILE*, int, int, int*) (final.c:2978) ==5295== by 0x70A2E5: final(rtx_def*, _IO_FILE*, int) (final.c:2024) ==5295== by 0x70A709: (anonymous namespace)::pass_final::execute() (final.c:4438) ==5295== by 0x8B8BC1: execute_one_pass(opt_pass*) (passes.c:2229) ==5295== by 0x8B8E95: execute_pass_list(opt_pass*) (passes.c:2282) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x642768: expand_function(cgraph_node*) (cgraphunit.c:1764) ==5295== by 0x644BFF: compile() (cgraphunit.c:1996) ==5295== by 0x644F19: finalize_compilation_unit() (cgraphunit.c:2319) ==5295== ==5295== Invalid read of size 8 ==5295== at 0xC285E2: arm_unwind_emit_sequence(_IO_FILE*, rtx_def*) (arm.c:28728) ==5295== by 0xC2905D: arm_unwind_emit(_IO_FILE*, rtx_def*) (arm.c:28969) ==5295== by 0x70993E: final_scan_insn(rtx_def*, _IO_FILE*, int, int, int*) (final.c:2978) ==5295== by 0x70A2E5: final(rtx_def*, _IO_FILE*, int) (final.c:2024) ==5295== by 0x70A709: (anonymous namespace)::pass_final::execute() (final.c:4438) ==5295== by 0x8B8BC1: execute_one_pass(opt_pass*) (passes.c:2229) ==5295== by 0x8B8E95: execute_pass_list(opt_pass*) (passes.c:2282) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x8B8EA7: execute_pass_list(opt_pass*) (passes.c:2283) ==5295== by 0x642768: expand_function(cgraph_node*) (cgraphunit.c:1764) ==5295== by 0x644BFF: compile() (cgraphunit.c:1996) ==5295== by 0x644F19: finalize_compilation_unit() (cgraphunit.c:2319) ==5295== Address 0x8 is not stack'd, malloc'd or (recently) free'd ==5295== /home/ryan/conftest.c: In function 'foo': /home/ryan/conftest.c:7:1: internal compiler error: Segmentation fault } ^ Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. ==5295== ==5295== HEAP SUMMARY: ==5295== in use at exit: 708,959 bytes in 2,884 blocks ==5295== total heap usage: 5,404 allocs, 2,520 frees, 3,218,933 bytes allocated ==5295== ==5295== LEAK SUMMARY: ==5295== definitely lost: 24 bytes in 1 blocks ==5295== indirectly lost: 0 bytes in 0 blocks ==5295== possibly lost: 13,617 bytes in 4 blocks ==5295== still reachable: 695,318 bytes in 2,879 blocks ==5295== suppressed: 0 bytes in 0 blocks ==5295== Rerun with --leak-check=full to see details of leaked memory ==5295== ==5295== For counts of detected and suppressed errors, rerun with: -v ==5295== Use --track-origins=yes to see where uninitialised values come from ==5295== ERROR SUMMARY: 665 errors from 17 contexts (suppressed: 2 from 2)