[Bug tree-optimization/53645] Missed optimization for vector integer division lowering
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53645 --- Comment #10 from Jakub Jelinek 2012-07-02 06:56:28 UTC --- Author: jakub Date: Mon Jul 2 06:56:24 2012 New Revision: 189108 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=189108 Log: PR tree-optimization/53645 * tree-vect-generic.c (expand_vector_divmod): Use TYPE_MODE (type) instead of TYPE_MODE (wider_type) as can_vec_perm_p argument. Modified: trunk/gcc/ChangeLog trunk/gcc/tree-vect-generic.c
[Bug c++/53829] New: Trivial static initializers are created for initialization with result of trivial static inline functions
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53829 Bug #: 53829 Summary: Trivial static initializers are created for initialization with result of trivial static inline functions Classification: Unclassified Product: gcc Version: 4.7.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassig...@gcc.gnu.org ReportedBy: mh+...@glandium.org The most trivial example of the behaviour is this: #include static inline uint64_t foo() { return 42; } uint64_t f = foo(); G++ generates the following: .file"test.cc" .section.text.startup,"ax",@progbits .p2align 4,,15 .type_GLOBAL__sub_I_f, @function _GLOBAL__sub_I_f: .LFB2: .cfi_startproc movq$42, f(%rip) ret .cfi_endproc .LFE2: .size_GLOBAL__sub_I_f, .-_GLOBAL__sub_I_f .section.init_array,"aw" .align 8 .quad_GLOBAL__sub_I_f .globlf .bss .align 8 .typef, @object .sizef, 8 f: .zero8 .ident"GCC: (Debian 4.7.1-2) 4.7.1" .section.note.GNU-stack,"",@progbits For reference, clang++ generates the following: .file"test.cc" .typef,@object # @f .data .globlf .align8 f: .quad42 # 0x2a .sizef, 8 .section".note.GNU-stack","",@progbits There are cases where g++ is able to generate code like clang++, but I can't find one just now.
[Bug bootstrap/53828] New: Missing auto-target.h to compile cpuinfo.c
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53828 Bug #: 53828 Summary: Missing auto-target.h to compile cpuinfo.c Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: bootstrap AssignedTo: unassig...@gcc.gnu.org ReportedBy: mik...@gcc.gnu.org Host: x86_64-unknown-freebsd9.0 Target: x86_64-unknown-freebsd9.0 Build: x86_64-unknown-freebsd9.0 Hello, I had the following error compiling cpuinfo.c: /home/mik/gcc4x/src/libgcc/config/i386/cpuinfo.c:23:25: fatal error: auto-target.h: No such file or directory #include "auto-target.h" ^ compilation terminated. gmake[3]: *** [cpuinfo.o] Erreur 1 gmake[3] : on quitte le répertoire « /usr/home/mik/gcc4x/build/x86_64-unknown-freebsd9.0/libgcc » gmake[2]: *** [all-stage3-target-libgcc] Erreur 2 gmake[2] : on quitte le répertoire « /usr/home/mik/gcc4x/build » gmake[1]: *** [stage3-bubble] Erreur 2 gmake[1] : on quitte le répertoire « /usr/home/mik/gcc4x/build » gmake: *** [all] Erreur 2 The compilation of libgcc's cpuinfo.c continued with the following change: Index: libgcc/config/i386/t-cpuinfo === --- libgcc/config/i386/t-cpuinfo(révision 189101) +++ libgcc/config/i386/t-cpuinfo(copie de travail) @@ -1 +1,2 @@ LIB2ADD += $(srcdir)/config/i386/cpuinfo.c +$(srcdir)/config/i386/cpuinfo.c: auto-target.h Here is my configure line: home/mik/gcc4x/src/configure --disable-multilib --enable-maintainer-mode --disable-libstdcxx-pch --enable-languages=fortran
[Bug rtl-optimization/53827] [alpha]: Invalid insn scheduling in sched1 pass
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53827 Uros Bizjak changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed||2012-07-01 CC||aoliva at gcc dot gnu.org Ever Confirmed|0 |1 --- Comment #1 from Uros Bizjak 2012-07-01 17:16:21 UTC --- The problem is in memrefs_conflict_p in alias.c: Calling this function with: xsize = 8 x: (and:DI (plus:DI (reg/f:DI 71) (const_int 8 [0x8])) (const_int -8 [0xfff8])) ysize = 1 y: (plus:DI (reg/f:DI 71) (const_int 15 [0xf])) c = 0 returns 0, implying that these references don't conflict. Fail. Suspected commit: 2012-06-21 Alexandre Oliva PR debug/53671 PR debug/49888 * alias.c (memrefs_conflict_p): Improve handling of AND for alignment.
[Bug fortran/53824] ICE with ALLOCATE of coarrays
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53824 Thomas Koenig changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed||2012-07-01 Ever Confirmed|0 |1 --- Comment #1 from Thomas Koenig 2012-07-01 16:28:49 UTC --- This looks straightforward and fixes the ICE: Index: resolve.c === --- resolve.c (Revision 188916) +++ resolve.c (Arbeitskopie) @@ -7325,8 +7325,8 @@ resolve_allocate_deallocate (gfc_code *code, const } } - /* Check that an allocate-object appears only once in the statement. - FIXME: Checking derived types is disabled. */ + /* Check that an allocate-object appears only once in the statement. */ + for (p = code->ext.alloc.list; p; p = p->next) { pe = p->expr; @@ -7376,9 +7376,10 @@ resolve_allocate_deallocate (gfc_code *code, const { gfc_array_ref *par = &(pr->u.ar); gfc_array_ref *qar = &(qr->u.ar); - if (gfc_dep_compare_expr (par->start[0], - qar->start[0]) != 0) - break; + if ((par->start[0] != NULL || qar->start[0] != NULL) + && gfc_dep_compare_expr (par->start[0], + qar->start[0]) != 0) + break; } } else
[Bug target/53811] ICE: in insn_default_length, at config/i386/i386.md:529 (unrecognizable insn) with -mcmodel=large
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53811 Uros Bizjak changed: What|Removed |Added Status|UNCONFIRMED |ASSIGNED Last reconfirmed||2012-07-01 AssignedTo|unassigned at gcc dot |ubizjak at gmail dot com |gnu.org | Target Milestone|--- |4.7.2 Ever Confirmed|0 |1 --- Comment #2 from Uros Bizjak 2012-07-01 15:40:04 UTC --- Can you please test following patch: --cut here-- Index: config/i386/i386.c === --- config/i386/i386.c (revision 189101) +++ config/i386/i386.c (working copy) @@ -33056,6 +33056,13 @@ x86_output_mi_thunk (FILE *file, emit_jump_insn (gen_indirect_jump (fnaddr)); else { + if (!sibcall_insn_operand (fnaddr, Pmode)) + { + tmp = gen_rtx_REG (Pmode, R10_REG); + emit_move_insn (tmp, fnaddr); + fnaddr = tmp; + } + tmp = gen_rtx_MEM (QImode, fnaddr); tmp = gen_rtx_CALL (VOIDmode, tmp, const0_rtx); tmp = emit_call_insn (tmp); --cut here--
[Bug target/53447] missed optimization of 64bit ALU operation with small constant
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53447 --- Comment #3 from carrot at gcc dot gnu.org 2012-07-01 15:14:56 UTC --- Author: carrot Date: Sun Jul 1 15:14:52 2012 New Revision: 189102 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=189102 Log: PR target/53447 * config/arm/arm-protos.h (const_ok_for_dimode_op): New prototype. * config/arm/arm.c (const_ok_for_dimode_op): New function. * config/arm/constraints.md (Dd): New constraint. * config/arm/predicates.md (arm_adddi_operand): New predicate. * config/arm/arm.md (adddi3): Extend it to handle constants. (arm_adddi3): Likewise. (addsi3_carryin_): Extend it to handle sbc case. (addsi3_carryin_alt2_): Likewise. * config/arm/neon.md (adddi3_neon): Extend it to handle constants. * gcc.target/arm/pr53447-1.c: New testcase. * gcc.target/arm/pr53447-2.c: New testcase. * gcc.target/arm/pr53447-3.c: New testcase. * gcc.target/arm/pr53447-4.c: New testcase. Added: trunk/gcc/testsuite/gcc.target/arm/pr53447-1.c trunk/gcc/testsuite/gcc.target/arm/pr53447-2.c trunk/gcc/testsuite/gcc.target/arm/pr53447-3.c trunk/gcc/testsuite/gcc.target/arm/pr53447-4.c Modified: trunk/gcc/ChangeLog trunk/gcc/config/arm/arm-protos.h trunk/gcc/config/arm/arm.c trunk/gcc/config/arm/arm.md trunk/gcc/config/arm/constraints.md trunk/gcc/config/arm/neon.md trunk/gcc/config/arm/predicates.md trunk/gcc/testsuite/ChangeLog
[Bug rtl-optimization/53827] New: [alpha]: Invalid insn scheduling in sched1 pass
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53827 Bug #: 53827 Summary: [alpha]: Invalid insn scheduling in sched1 pass Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: rtl-optimization AssignedTo: unassig...@gcc.gnu.org ReportedBy: ubiz...@gmail.com Following testcase exposes a bug in sched1 pass: --cut here-- #ifndef MAX_OFFSET #define MAX_OFFSET (sizeof (long long)) #endif #ifndef MAX_COPY #define MAX_COPY 15 #endif #ifndef MAX_EXTRA #define MAX_EXTRA (sizeof (long long)) #endif #define MAX_LENGTH (MAX_OFFSET + MAX_COPY + MAX_EXTRA) static union { char buf[MAX_LENGTH]; long long align_int; long double align_fp; } u; void reset (void); void check (int off, int len, int ch); int test () { int off; char *p; reset (); p = memset (u.buf + 1, '\0', 15); check (1, 15, '\0'); return 0; } --cut here-- This bug can be triggered with a crosscompiler from x86_64-pc-linux-gnu to alpha-linux-gnu target. ~/gcc-build-alpha/gcc/cc1 -O2 -mcpu=ev6 test: .frame $30,16,$26,0 .mask 0x400,-16 ldgp $29,0($27) # 39 *prologue_ldgp_1[length = 4] $test..ng: lda $30,-16($30) # 41 *adddi_internal/2 [length = 4] stq $26,0($30) # 42 *movdi/9[length = 4] .prologue 1 jsr $26,reset# 5*call_osf_1/3 [length = 16] ldgp $29,0($26) lda $1,u # 6*movdi/7[length = 4] lda $16,1($31) # 22 *movdi/2[length = 4] lda $17,15($31) # 23 *movdi/2[length = 4] mov $31,$18 # 24 *movdi/1[length = 4] ldq_u $3,8($1) # 7*movdi/8[length = 4] ldq_u $2,1($1) # 8*movdi/8[length = 4] lda $4,1($1) # 9*adddi_internal/2 [length = 4] >>> stb $31,15($1) # 20 *movqi/4[length = 4] mskqh $3,$4,$3 # 10 mskxh [length = 4] mskql $2,$4,$2 # 11 mskxl [length = 4] >>> stq_u $3,8($1) # 12 *movdi/9[length = 4] stq_u $2,1($1) # 13 *movdi/9[length = 4] stb $31,9($1)# 14 *movqi/4[length = 4] stb $31,10($1) # 15 *movqi/4[length = 4] stb $31,11($1) # 16 *movqi/4[length = 4] stb $31,12($1) # 17 *movqi/4[length = 4] stb $31,13($1) # 18 *movqi/4[length = 4] stb $31,14($1) # 19 *movqi/4[length = 4] jsr $26,check# 25 *call_osf_1/3 [length = 16] ldgp $29,0($26) ldq $26,0($30) # 45 *movdi/8[length = 4] mov $31,$0 # 30 *movdi/1[length = 4] lda $30,16($30) # 47 *adddi_internal/2 [length = 4] ret $31,($26),1 # 48 *return_internal[length = 4] .end test (insn 20) has been moved above (insn 12) in sched1 pass, although (insn 12) stores DImode value to $1+8. For reference, (insn 12) is defined as: (insn 12 11 13 2 (set (mem/c:DI (and:DI (plus:DI (reg/f:DI 71) (const_int 8 [0x8])) (const_int -8 [0xfff8])) [0 S8 A64]) (reg:DI 73)) t.c:31 225 {*movdi} (expr_list:REG_DEAD (reg:DI 73) (nil))) and (insn 20): (insn 20 9 10 2 (set (mem/c:QI (plus:DI (reg/f:DI 71) (const_int 15 [0xf])) [0 MEM[(void *)&u + 1B]+14 S1 A8]) (const_int 0 [0])) t.c:31 228 {*movqi} (expr_list:REG_DEAD (reg/f:DI 71) (nil))) This is the only failure in gcc.c-torture/execute/memset-2.c execution failure (and probably also in gcc.c-torture/execute/builtins/memset-chk.c execution failure) [1]. It looks like off-by-one somewhere in the sched1 pass to me, please note that other insns with offsets less than 15 are not moved. [1] http://gcc.gnu.org/ml/gcc-testresults/2012-07/msg00017.html
[Bug rtl-optimization/53706] [4.8 Regression] Bootstrap failure due to "Invalid write of size 8 at 0xBDC35E: variable_htab_free (var-tracking.c:1418)
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53706 dcb changed: What|Removed |Added CC||dcb314 at hotmail dot com --- Comment #24 from dcb 2012-07-01 10:58:15 UTC --- *** Bug 53809 has been marked as a duplicate of this bug. ***
[Bug c++/53809] ice then Abort
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53809 dcb changed: What|Removed |Added Status|WAITING |RESOLVED Resolution||DUPLICATE --- Comment #3 from dcb 2012-07-01 10:58:15 UTC --- (In reply to comment #2) > This may be a dup of PR 53706. Please try revision 189037 or newer. Yes, duplicate. *** This bug has been marked as a duplicate of bug 53706 ***
[Bug tree-optimization/53645] Missed optimization for vector integer division lowering
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53645 Uros Bizjak changed: What|Removed |Added Status|RESOLVED|REOPENED CC||ubizjak at gmail dot com Resolution|FIXED | --- Comment #9 from Uros Bizjak 2012-07-01 10:23:58 UTC --- Compilation of pr53645.c testcase ICEs with -mno-sse4: [uros@localhost execute]$ ~/gcc-build/gcc/cc1 -O2 -mno-sse4 -quiet pr53645.c pr53645.c: In function ‘uq’: pr53645.c:11:11: internal compiler error: in expand_expr_real_2, at expr.c:8971 *x = *y / ((UV) { a, b, c, d }); \ ^ pr53645.c:35:1: note: in expansion of macro 'TEST' TEST (3, 3, 3, 3) \ ^ pr53645.c:40:1: note: in expansion of macro 'TESTS' TESTS ^ Please submit a full bug report, (gdb) f 2 #2 0x006bf18d in expand_expr_real_2 (ops=ops@entry=0x7fffd120, target=target@entry=0x0, tmode=tmode@entry=VOIDmode, modifier=modifier@entry=EXPAND_NORMAL) at ../../gcc-svn/trunk/gcc/expr.c:8971 8971 gcc_assert (temp); (gdb) li 8966} 8967 else 8968gcc_assert (GET_MODE_CLASS (GET_MODE (op2)) == MODE_VECTOR_INT); 8969 8970 temp = expand_vec_perm (mode, op0, op1, op2, target); 8971 gcc_assert (temp); 8972 return temp; 8973 8974case DOT_PROD_EXPR: 8975 { (gdb) p temp $1 = (rtx_def *) 0x0 expand_vec_perm returns NULL_RTX for mno-sse4.
[Bug middle-end/53826] New: [4.8 Regression] [alpha]: ICE in fold_convert_loc, at fold-const.c:2008
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53826 Bug #: 53826 Summary: [4.8 Regression] [alpha]: ICE in fold_convert_loc, at fold-const.c:2008 Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end AssignedTo: unassig...@gcc.gnu.org ReportedBy: ubiz...@gmail.com Host: x86_64-pc-linux-gnu Target: alpha-linux-gnu Created attachment 27728 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=27728 Preprocessed source Recent regression, triggered with libstdc++ testcase: crosscompiler from x86_64-pc-linux-gnu to alpha-linux-gnu: ~/gcc-build-alpha/gcc/cc1plus -O2 -std=gnu++0x -quiet tuple_cat.ii /home/uros/gcc-svn/trunk/libstdc++-v3/testsuite/20_util/tuple/creation_functions/tuple_cat.cc: In function ‘int main()’: /home/uros/gcc-svn/trunk/libstdc++-v3/testsuite/20_util/tuple/creation_functions/tuple_cat.cc:131:1: internal compiler error: in fold_convert_loc, at fold-const.c:2008 } ^ Please submit a full bug report, (gdb) bt #0 internal_error (gmsgid=gmsgid@entry=0xee36c5 "in %s, at %s:%d") at ../../gcc-svn/trunk/gcc/diagnostic.c:951 #1 0x00d3e614 in fancy_abort (file=file@entry=0xe0cbc8 "../../gcc-svn/trunk/gcc/fold-const.c", line=line@entry=2008, function=function@entry=0xe0bba0 "fold_convert_loc") at ../../gcc-svn/trunk/gcc/diagnostic.c:1011 #2 0x0082d6be in fold_convert_loc (loc=loc@entry=0, type=0x7146d348, arg=) at ../../gcc-svn/trunk/gcc/fold-const.c:2008 #3 0x00bbc2e6 in build_zero_cst (type=) at ../../gcc-svn/trunk/gcc/tree.c:1668 #4 0x00a783c9 in init_subtree_with_zero (access=access@entry=0x1579060, gsi=gsi@entry=0x7fffda50, insert_after=insert_after@entry=0 '\000', loc=loc@entry=2329653) at ../../gcc-svn/trunk/gcc/tree-sra.c:2521 #5 0x00a783a9 in init_subtree_with_zero (access=, gsi=gsi@entry=0x7fffda50, insert_after=insert_after@entry=0 '\000', loc=2329653) at ../../gcc-svn/trunk/gcc/tree-sra.c:2532 #6 0x00a80af1 in sra_modify_constructor_assign (gsi=0x7fffda50, stmt=) at ../../gcc-svn/trunk/gcc/tree-sra.c:2815 #7 sra_modify_assign (gsi=0x7fffda50, stmt=) at ../../gcc-svn/trunk/gcc/tree-sra.c:2906 #8 sra_modify_function_body () at ../../gcc-svn/trunk/gcc/tree-sra.c:3141 #9 perform_intra_sra () at ../../gcc-svn/trunk/gcc/tree-sra.c:3247 (gdb) f 2 #2 0x0082d6be in fold_convert_loc (loc=loc@entry=0, type=0x7146d348, arg=) at ../../gcc-svn/trunk/gcc/fold-const.c:2008 2008 gcc_unreachable (); (gdb) p debug_tree (type) constant 64> unit size constant 8> align 8 symtab 0 alias set 20 canonical type 0x7146d348 pointer_to_this reference_to_this > $3 = void (gdb) p debug_tree (orig) constant 32> unit size constant 4> align 32 symtab 0 alias set 2 canonical type 0x713535e8 precision 32 min max pointer_to_this reference_to_this > $4 = void gcc needs to handle NULLPTR_TYPE here.
[Bug rtl-optimization/52983] [4.8 Regression] internal compiler error: in df_uses_record, at df-scan.c:3243
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52983 --- Comment #8 from Uros Bizjak 2012-07-01 09:26:03 UTC --- Created attachment 27727 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=27727 Another preprocessed source This source fails on a crosscompiler from x86_64-pc-linux-gnu to ia64-linux-gnu. ~/gcc-build-ia64/gcc/cc1 -std=gnu99 -O2 -g iall_i2.i ../../../gcc-svn/trunk/libgfortran/generated/iall_i2.c: In function ‘iall_i2’: ../../../gcc-svn/trunk/libgfortran/generated/iall_i2.c:187:1: internal compiler error: in df_uses_record, at df-scan.c:3303 Please submit a full bug report,
[Bug rtl-optimization/52983] [4.8 Regression] internal compiler error: in df_uses_record, at df-scan.c:3243
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52983 Uros Bizjak changed: What|Removed |Added CC||ubizjak at gmail dot com --- Comment #6 from Alexandre Oliva 2012-06-28 07:39:33 UTC --- Author: aoliva Date: Thu Jun 28 07:39:25 2012 New Revision: 189036 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=189036 Log: PR debug/53740 PR debug/52983 PR debug/48866 * dce.c (word_dce_process_block): Check whether inserting debug temps are needed even for needed insns. (dce_process_block): Likewise. * df-problems.c (dead_debug_add): Add comment about multi-regs. (dead_debug_insert_temp): Likewise. Don't subreg when we're setting fewer regs than a multi-reg requires. Modified: trunk/gcc/ChangeLog trunk/gcc/dce.c trunk/gcc/df-problems.c --- Comment #7 from Uros Bizjak 2012-07-01 09:22:16 UTC --- I have hit similar ICE on i64-linux-gnu: (xgcc (GCC) 4.8.0 20120701 (experimental) [trunk revision 189100]) crosscompiler from x86_64-pc-linux-gnu to ia64-linux-gnu: ../../../gcc-svn/trunk/libgfortran/generated/iall_i2.c: In function ‘iall_i2’: ../../../gcc-svn/trunk/libgfortran/generated/iall_i2.c:187:1: internal compiler error: in df_uses_record, at df-scan.c:3303 Please submit a full bug report, with preprocessed source if appropriate. Breakpoint 1, internal_error (gmsgid=gmsgid@entry=0xd958ea "in %s, at %s:%d") at ../../gcc-svn/trunk/gcc/diagnostic.c:951 951 { (gdb) bt #0 internal_error (gmsgid=gmsgid@entry=0xd958ea "in %s, at %s:%d") at ../../gcc-svn/trunk/gcc/diagnostic.c:951 #1 0x00bd8804 in fancy_abort (file=file@entry=0xc681c8 "../../gcc-svn/trunk/gcc/df-scan.c", line=line@entry=3303, function=function@entry=0xc68bbe "df_uses_record") at ../../gcc-svn/trunk/gcc/diagnostic.c:1011 #2 0x005ce81b in df_uses_record (collection_rec=collection_rec@entry=0x7fffd780, loc=, ref_type=DF_REF_REG_MEM_LOAD, ref_type@entry=DF_REF_REG_USE, bb=bb@entry=0x712be380, insn_info=insn_info@entry=0x134d040, flags=, flags@entry=0) at ../../gcc-svn/trunk/gcc/df-scan.c:3303 #3 0x005ce96f in df_insn_refs_collect (collection_rec=collection_rec@entry=0x7fffd780, bb=bb@entry=0x712be380, insn_info=0x134d040) at ../../gcc-svn/trunk/gcc/df-scan.c:3510 #4 0x005cf4f0 in df_insn_rescan (insn=insn@entry=0x70f3de58) at ../../gcc-svn/trunk/gcc/df-scan.c:1280 #5 0x0061a251 in add_insn_before (insn=0x70f3de58, before=before@entry=0x70f30630, bb=, bb@entry=0x0) at ../../gcc-svn/trunk/gcc/emit-rtl.c:3883 #6 0x0061a3b2 in emit_pattern_before_noloc (x=0x70f3fae0, before=0x70f30630, last=, bb=0x0, make_raw=) at ../../gcc-svn/trunk/gcc/emit-rtl.c:4161 #7 0x0061a42c in emit_pattern_before_setloc (pattern=0x70f3fae0, before=, loc=112, insnp=, make_raw=) at ../../gcc-svn/trunk/gcc/emit-rtl.c:4528 #8 0x005c7367 in dead_debug_insert_temp (debug=debug@entry=0x7fffd920, uregno=, insn=insn@entry=0x70f30630, where=where@entry=DEBUG_TEMP_BEFORE_WITH_VALUE) at ../../gcc-svn/trunk/gcc/df-problems.c:3349 #9 0x00afef4e in dce_process_block (au=0x136a928, redo_out=, bb=0x712be380) at ../../gcc-svn/trunk/gcc/dce.c:976 #10 fast_dce (word_level=word_level@entry=0 '\000') at ../../gcc-svn/trunk/gcc/dce.c:1044 (gdb) f 2 #2 0x005ce81b in df_uses_record (collection_rec=collection_rec@entry=0x7fffd780, loc=, ref_type=DF_REF_REG_MEM_LOAD, ref_type@entry=DF_REF_REG_USE, bb=bb@entry=0x712be380, insn_info=insn_info@entry=0x134d040, flags=, flags@entry=0) at ../../gcc-svn/trunk/gcc/df-scan.c:3303 3303 gcc_assert (!DEBUG_INSN_P (insn_info->insn)); (gdb) p debug_rtx (insn_info->insn) (debug_insn 685 441 442 36 (var_location:HI D#33 (mem:HI (post_modify:DI (reg/v/f:DI 450 [ src ]) (plus:DI (reg/v/f:DI 450 [ src ]) (reg:DI 639 [ pretmp.129 ]))) [6 *src_178+0 S2 A16])) -1 (nil)) $1 = void