forked from OSchip/llvm-project
DebugInfo: Fission: Ensure the address pool entries for location lists are emitted.
The address pool was being emitted before location lists. The latter could add more entries to the pool which would be lost/never emitted. llvm-svn: 211284
This commit is contained in:
parent
4c24eba778
commit
de8e12a49a
|
@ -1038,9 +1038,9 @@ void DwarfDebug::endModule() {
|
|||
emitDebugInfoDWO();
|
||||
emitDebugAbbrevDWO();
|
||||
emitDebugLineDWO();
|
||||
emitDebugLocDWO();
|
||||
// Emit DWO addresses.
|
||||
AddrPool.emit(*Asm, Asm->getObjFileLowering().getDwarfAddrSection());
|
||||
emitDebugLocDWO();
|
||||
} else
|
||||
// Emit info into a debug loc section.
|
||||
emitDebugLoc();
|
||||
|
|
|
@ -44,6 +44,13 @@
|
|||
; Make sure we don't produce any relocations in any .dwo section (though in particular, debug_info.dwo)
|
||||
; HDR-NOT: .rela.{{.*}}.dwo
|
||||
|
||||
; Make sure we have enough stuff in the debug_addr to cover the address indexes
|
||||
; (6 is the last index in debug_loc.dwo, making 7 entries of 8 bytes each, 7 * 8
|
||||
; == 56 base 10 == 38 base 16)
|
||||
|
||||
; HDR: .debug_addr 00000038
|
||||
; HDR-NOT: .rela.{{.*}}.dwo
|
||||
|
||||
; From the code:
|
||||
|
||||
; extern int c;
|
||||
|
|
Loading…
Reference in New Issue