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?