http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48400
--- Comment #17 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2011-04-02 22:59:09 UTC --- > Created attachment 23855 [details] > second proposed patch Unfortunately it does not work either. > The fault is 100% with ld. GCC is producing valid dwarf2. There is no point to complain about the ld in darwin9: it won't be fixed and the error is not present in darwin10 (even if it fails to bootstrap for other reasons, see pr48403). > The *only* changes in your diff are (1) the description of the standard > opcodes, and (2) an empty line number region that has been removed. I see three differences: *** 819,826 **** .byte 0x1 # Minimum Instruction Length .byte 0x1 # Default is_stmt_start flag .byte 0xf6 # Line Base Value (Special Opcodes) ! .byte 0xf5 # Line Range Value (Special Opcodes) ! .byte 0xa # Special Opcode Base .byte 0 # opcode: 0x1 has 0 args .byte 0x1 # opcode: 0x2 has 1 args .byte 0x1 # opcode: 0x3 has 1 args --- 819,826 ---- .byte 0x1 # Minimum Instruction Length .byte 0x1 # Default is_stmt_start flag .byte 0xf6 # Line Base Value (Special Opcodes) ! .byte 0xf2 # Line Range Value (Special Opcodes) ! .byte 0xd # Special Opcode Base .byte 0 # opcode: 0x1 has 0 args .byte 0x1 # opcode: 0x2 has 1 args .byte 0x1 # opcode: 0x3 has 1 args *************** *** 830,835 **** --- 830,838 ---- .byte 0 # opcode: 0x7 has 0 args .byte 0 # opcode: 0x8 has 0 args .byte 0x1 # opcode: 0x9 has 1 args + .byte 0 # opcode: 0xa has 0 args + .byte 0 # opcode: 0xb has 0 args + .byte 0x1 # opcode: 0xc has 1 args .ascii "../../../../gcc-4-7-reghunt/libgcc/../gcc\0" # Directory Entry: 0x1 .ascii "../../../../gcc-4-7-reghunt/libgcc/../gcc/config/i386\0" # Directory Entry: 0x2 .byte 0 # End directory table *************** *** 847,858 **** .byte 0 # uleb128 0 .byte 0 # End file name table LELTP0: - .byte 0 # DW_LNE_set_address - .byte 0x9 # uleb128 0x9 - .byte 0x2 - .quad Letext0 - .byte 0 # DW_LNE_end_sequence - .byte 0x1 # uleb128 0x1 - .byte 0x1 LELT0: .subsections_via_symbols --- 850,854 ---- Are the values ! .byte 0xf2 # Line Range Value (Special Opcodes) ! .byte 0xd # Special Opcode Base OK?