------- Comment #15 from andreast at gcc dot gnu dot org 2008-07-19 20:31 ------- Ok here the output requested in comment #13, I hope I did catch it correctly:
(gdb) i b Num Type Disp Enb Address What 2 breakpoint keep y 0x00272f78 in extract_ops_from_tree at /Volumes/development/gcc/tuples/gcc/gcc/gimple.c:377 breakpoint already hit 1561 times (gdb) ignore 2 1560 Will ignore next 1560 crossings of breakpoint 2. (gdb) r Starting program: /Volumes/development/gcc/head/objdir/gcc/cc1 -fpreprocessed matmul_i4.i -feliminate-unused-debug-symbols -fPIC -quiet -dumpbase matmul_i4.c -mmacosx-version-min=10.5.4 -auxbase-strip .libs/matmul_i4.o -g -O2 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wextra -Wwrite-strings -std=gnu99 -version -fcx-fortran-rules -ftree-vectorize -funroll-loops -fno-common -o matmul_i4.s GNU C (gimple-tuples-branch merged with rev 137837) version 4.4.0 20080715 (experimental) [gimple-tuples-branch revision 137915] (powerpc-apple-darwin9.4.0) compiled by GNU C version 4.4.0 20080715 (experimental) [gimple-tuples-branch revision 137915], GMP version 4.2.2, MPFR version 2.3.0. GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 Compiler executable checksum: df86ceeb6f7ac22c821630e231e69829 Breakpoint 2, extract_ops_from_tree (expr=0x8d03c0, subcode_p=0xbfffec08, op1_p=0xbfffec0c, op2_p=0xbfffec10) at /Volumes/development/gcc/tuples/gcc/gcc/gimple.c:377 377 *subcode_p = TREE_CODE (expr); (gdb) i b Num Type Disp Enb Address What 2 breakpoint keep y 0x00272f78 in extract_ops_from_tree at /Volumes/development/gcc/tuples/gcc/gcc/gimple.c:377 breakpoint already hit 1561 times (gdb) call debug_tree (expr) <realign_load 0x8d03c0 type <vector_type 0x856d90 type <integer_type 0x40f14310 int sizes-gimplified asm_written public SI size <integer_cst 0x40952540 constant 32> unit size <integer_cst 0x409521b0 constant 4> align 32 symtab 1090212704 alias set 2 canonical type 0x40f14310 precision 32 min <integer_cst 0x409524b0 -2147483648> max <integer_cst 0x409524e0 2147483647> pointer_to_this <pointer_type 0x40f1b850>> V4SI size <integer_cst 0x409528a0 constant 128> unit size <integer_cst 0x409528d0 constant 16> align 128 symtab 0 alias set 2 canonical type 0x40f83850 nunits 4 pointer_to_this <pointer_type 0x8cacb0>> arg 0 <ssa_name 0x866840 type <vector_type 0x856d90> var <var_decl 0x8cbc60 vect_var_.149>def_stmt vect_var_.149_484 = PHI <(81), vect_var_.138_580(178)> version 484> arg 1 <ssa_name 0x896900 type <vector_type 0x856d90> var <var_decl 0x8d1000 vect_var_.157>def_stmt vect_var_.157_966 = A*ivtmp.156_968; version 966> arg 2 <ssa_name 0x866d00 type <vector_type 0x40f83d90 __vector signed char type <integer_type 0x40f140e0 signed char> V16QI size <integer_cst 0x409528a0 128> unit size <integer_cst 0x409528d0 16> align 128 symtab 0 alias set -1 canonical type 0x40f83d90 nunits 16> var <var_decl 0x8cbc00 vect_var_.148>def_stmt vect_var_.148_503 = __builtin_altivec_mask_for_load (vect_p.147_522); version 503>> (gdb) n 1512 return (enum gimple_rhs_class) gimple_rhs_class_table[(int) code]; (gdb) 377 *subcode_p = TREE_CODE (expr); (gdb) 380 if (class == GIMPLE_BINARY_RHS) (gdb) 385 else if (class == GIMPLE_UNARY_RHS) (gdb) 390 else if (class == GIMPLE_SINGLE_RHS) (gdb) 396 gcc_unreachable (); (gdb) /Volumes/development/gcc/tuples/gcc/libgfortran/generated/matmul_i4.c: In function 'matmul_i4': /Volumes/development/gcc/tuples/gcc/libgfortran/generated/matmul_i4.c:87: internal compiler error: in extract_ops_from_tree, at gimple.c:396 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. Program exited with code 04. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36864