------- Comment #8 from danglin at gcc dot gnu dot org 2010-07-11 16:33 ------- With 4.5, the block move was emitted as follows:
Breakpoint 2, emit_block_move_hints (x=0x7afcb550, y=0x7afcb630, size=0x7af312d8, method=BLOCK_OP_NORMAL, expected_align=64, expected_size=-1) at ../../gcc/gcc/expr.c:1170 1170 rtx retval = 0; (gdb) bt #0 emit_block_move_hints (x=0x7afcb550, y=0x7afcb630, size=0x7af312d8, method=BLOCK_OP_NORMAL, expected_align=64, expected_size=-1) at ../../gcc/gcc/expr.c:1170 #1 0x002d5e8c in expand_builtin_memcpy (exp=0x7afaae10, target=0x7af312b8) at ../../gcc/gcc/builtins.c:3326 #2 0x002dc884 in expand_builtin (exp=0x7afaae10, target=0x7af312b8, subtarget=0x0, mode=VOIDmode, ignore=1) at ../../gcc/gcc/builtins.c:5972 #3 0x004d0cbc in expand_expr_real_1 (exp=0x7afaae10, target=0x0, tmode=VOIDmode, modifier=EXPAND_NORMAL, alt_rtl=0x0) at ../../gcc/gcc/expr.c:9262 #4 0x00e043dc in expand_call_stmt (stmt=0x7af299c0) at ../../gcc/gcc/cfgexpand.c:1789 #5 0x00e045cc in expand_gimple_stmt_1 (stmt=0x7af299c0) at ../../gcc/gcc/cfgexpand.c:1822 #6 0x00e04bfc in expand_gimple_stmt (stmt=0x7af299c0) at ../../gcc/gcc/cfgexpand.c:1978 #7 0x00e09348 in expand_gimple_basic_block (bb=0x7afcc240) at ../../gcc/gcc/cfgexpand.c:3401 #8 0x00e0ab3c in gimple_expand_cfg () at ../../gcc/gcc/cfgexpand.c:3851 #9 0x0077b644 in execute_one_pass (pass=0x4003c990) at ../../gcc/gcc/passes.c:1568 #10 0x0077b928 in execute_pass_list (pass=0x4003c990) at ../../gcc/gcc/passes.c:1623 #11 0x016891fc in tree_rest_of_compilation (fndecl=0x7afa4900) at ../../gcc/gcc/tree-optimize.c:413 #12 0x00bd40f8 in cgraph_expand_function (node=0x7afb3000) at ../../gcc/gcc/cgraphunit.c:1574 #13 0x00bd4460 in cgraph_expand_all_functions () at ../../gcc/gcc/cgraphunit.c:1653 #14 0x00bd4ea4 in cgraph_optimize () at ../../gcc/gcc/cgraphunit.c:1909 #15 0x00bd2cc4 in cgraph_finalize_compilation_unit () at ../../gcc/gcc/cgraphunit.c:1122 #16 0x000a8524 in c_write_global_declarations () at ../../gcc/gcc/c-decl.c:9519 #17 0x0087a810 in compile_file () at ../../gcc/gcc/toplev.c:1065 #18 0x0087ddb4 in do_compile () at ../../gcc/gcc/toplev.c:2417 #19 0x0087df34 in toplev_main (argc=17, argv=0x7eff05bc) at ../../gcc/gcc/toplev.c:2459 #20 0x00252d94 in main (argc=17, argv=0x7eff05bc) at ../../gcc/gcc/main.c:35 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44903