------- Comment #8 from dominiq at lps dot ens dot fr 2010-03-31 20:54 ------- With the patch in comment #6, I get:
[macbook] f90/bug% gcc45 -fprofile-generate -O3 /opt/gcc/work/gcc/testsuite/gcc.dg/matrix/transpose-1.c gcc45: Internal error: Segmentation fault (program cc1) Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: KERN_PROTECTION_FAILURE at address: 0x00007fff5bc00ff8 0x0000000100811f9b in lookup_attribute (attr_name=0x10098a348 "ms_abi", list=0x141dafbb8) at ../../work/gcc/tree.c:5073 5073 { (gdb) bt #0 0x0000000100811f9b in lookup_attribute (attr_name=0x10098a348 "ms_abi", list=0x141dafbb8) at ../../work/gcc/tree.c:5073 #1 0x000000010087020c in ix86_function_type_abi (fntype=<value temporarily unavailable, due to optimizations>) at ../../work/gcc/config/i386/i386.c:4816 #2 0x0000000100870a45 in ix86_reg_parm_stack_space (fndecl=<value temporarily unavailable, due to optimizations>) at ../../work/gcc/config/i386/i386.c:4798 #3 0x0000000100317db4 in expand_call (exp=0x101774288, target=0x0, ignore=0) at ../../work/gcc/calls.c:2082 #4 0x00000001002fab1e in expand_builtin (exp=0x101774288, target=0x0, subtarget=0x0, mode=<value temporarily unavailable, due to optimizations>, ignore=0) at ../../work/gcc/builtins.c:6418 #5 0x0000000100405673 in expand_expr_real_1 (exp=0x101774288, target=<value temporarily unavailable, due to optimizations>, tmode=VOIDmode, modifier=EXPAND_NORMAL, alt_rtl=0x0) at ../../work/gcc/expr.c:9251 #6 0x0000000100415092 in expand_expr_real_2 (ops=0x7fff5bc01630, target=<value temporarily unavailable, due to optimizations>, tmode=DImode, modifier=EXPAND_NORMAL) at expr.h:558 #7 0x000000010040401f in expand_expr_real_1 (exp=0x101773810, target=<value temporarily unavailable, due to optimizations>, tmode=DImode, modifier=EXPAND_NORMAL, alt_rtl=0x0) at ../../work/gcc/expr.c:9650 #8 0x0000000100412127 in expand_expr_addr_expr_1 (exp=<value temporarily unavailable, due to optimizations>, target=0x0, tmode=DImode, modifier=EXPAND_NORMAL, as=<value temporarily unavailable, due to optimizations>) at expr.h:558 #9 0x0000000100405d16 in expand_expr_real_1 (exp=0x101773720, target=<value temporarily unavailable, due to optimizations>, tmode=DImode, modifier=EXPAND_NORMAL, alt_rtl=0x0) at ../../work/gcc/expr.c:7007 #10 0x000000010031a656 in expand_call (exp=0x101774240, target=0x0, ignore=0) at expr.h:564 #11 0x00000001002fab1e in expand_builtin (exp=0x101774240, target=0x0, subtarget=0x0, mode=<value temporarily unavailable, due to optimizations>, ignore=0) at ../../work/gcc/builtins.c:6418 #12 0x0000000100405673 in expand_expr_real_1 (exp=0x101774240, target=<value temporarily unavailable, due to optimizations>, tmode=VOIDmode, modifier=EXPAND_NORMAL, alt_rtl=0x0) at ../../work/gcc/expr.c:9251 #13 0x0000000100415092 in expand_expr_real_2 (ops=0x7fff5bc01fb0, target=<value temporarily unavailable, due to optimizations>, tmode=DImode, modifier=EXPAND_NORMAL) at expr.h:558 #14 0x000000010040401f in expand_expr_real_1 (exp=0x101773780, target=<value temporarily unavailable, due to optimizations>, tmode=DImode, modifier=EXPAND_NORMAL, alt_rtl=0x0) at ../../work/gcc/expr.c:9650 #15 0x0000000100412127 in expand_expr_addr_expr_1 (exp=<value temporarily unavailable, due to optimizations>, target=0x0, tmode=DImode, modifier=EXPAND_NORMAL, as=<value temporarily unavailable, due to optimizations>) at expr.h:558 #16 0x0000000100405d16 in expand_expr_real_1 (exp=0x101773690, target=<value temporarily unavailable, due to optimizations>, tmode=DImode, modifier=EXPAND_NORMAL, alt_rtl=0x0) at ../../work/gcc/expr.c:7007 #17 0x000000010031a656 in expand_call (exp=0x1017741f8, target=0x0, ignore=0) at expr.h:564 #18 0x00000001002fab1e in expand_builtin (exp=0x1017741f8, target=0x0, subtarget=0x0, mode=<value temporarily unavailable, due to optimizations>, ignore=0) at ../../work/gcc/builtins.c:6418 #19 0x0000000100405673 in expand_expr_real_1 (exp=0x1017741f8, target=<value temporarily unavailable, due to optimizations>, tmode=VOIDmode, modifier=EXPAND_NORMAL, alt_rtl=0x0) at ../../work/gcc/expr.c:9251 #20 0x0000000100415092 in expand_expr_real_2 (ops=0x7fff5bc02930, target=<value temporarily unavailable, due to optimizations>, tmode=DImode, modifier=EXPAND_NORMAL) at expr.h:558 #21 0x000000010040401f in expand_expr_real_1 (exp=0x1017736f0, target=<value temporarily unavailable, due to optimizations>, tmode=DImode, modifier=EXPAND_NORMAL, alt_rtl=0x0) at ../../work/gcc/expr.c:9650 #22 0x0000000100412127 in expand_expr_addr_expr_1 (exp=<value temporarily unavailable, due to optimizations>, target=0x0, tmode=DImode, modifier=EXPAND_NORMAL, as=<value temporarily unavailable, due to optimizations>) at expr.h:558 #23 0x0000000100405d16 in expand_expr_real_1 (exp=0x101773600, target=<value temporarily unavailable, due to optimizations>, tmode=DImode, modifier=EXPAND_NORMAL, alt_rtl=0x0) at ../../work/gcc/expr.c:7007 ... and so on ... -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43602